diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 00000000..ea16e8f0 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,14 @@ +# 执行上下文规则 + +本仓库的任务执行必须使用最小上下文。不要把完整路线图、项目状态、parity ledger 或全部 `docs/status/` 日志作为默认上下文。 + +领取任务时只做以下操作: + +1. 阅读 `docs/EXECUTION_QUEUE.md`。 +2. 运行 `node tools/web/print-task-context.mjs`;它只会输出当前任务、parent manifest、parent status 和聚焦命令。 +3. 只打开输出中列出的任务卡、生产入口、测试入口和最小 fixture。 +4. 开始前运行 `node tools/web/check-task-context.mjs`;预算或 parent `nextTask` 不一致时停止并修正证据,不要手工推进队列。 + +默认上下文预算:队列 4 KiB、任务卡 8 KiB、parent manifest 24 KiB、parent status 6 KiB,合计约 3,500 tokens。历史和长期文档只能按任务卡列出的具体小节追加读取。 + +完成任务时运行 `node tools/web/check-task-context.mjs --task --write`,并仅提交任务报告、manifest、status 和聚焦实现/测试变更。下一任务只认新 manifest 的 `nextTask`。 diff --git a/README.md b/README.md index 6bd05e40..92bf0ff1 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,8 @@ npm --prefix web run build npm --prefix web run test:browser ``` -See `docs/EXECUTION_QUEUE.md` for the current task order and `docs/README.md` for the document map, +See `docs/EXECUTION_QUEUE.md` for the current task pointer, `docs/CONTEXT_BUDGET.md` for the +small-context execution rules, and `docs/README.md` for the document map, `docs/PROJECT_STATUS_AND_NEXT_WORK.md` for the implemented scope, and `docs/BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md` for the normative M12-M23 full-parity execution plan. The domain overview and coverage cross-check are in diff --git a/WEB_BLENDER_MIGRATION_EXECUTION_PLAN.md b/WEB_BLENDER_MIGRATION_EXECUTION_PLAN.md index fe6b842d..a5397e8b 100644 --- a/WEB_BLENDER_MIGRATION_EXECUTION_PLAN.md +++ b/WEB_BLENDER_MIGRATION_EXECUTION_PLAN.md @@ -1,5 +1,7 @@ # Web 版 Blender 连续执行计划 +> 历史迁移计划:本文不参与当前任务领取。当前任务只认 `docs/EXECUTION_QUEUE.md`、任务卡和 parent manifest。 + ## 1. 文档定位 本计划用于把 `blender-5.2.0` 逐步变成一个浏览器中的 Blender 数据编辑器。它不是“把桌面窗口搬进 Canvas”的计划,而是以 Blender 数据和建模行为为基准,以 React 为应用界面、Three.js 为唯一浏览器渲染器、WebAssembly 为 Blender 计算核心。 diff --git a/WEB_BLENDER_TECHNICAL_ROADMAP.md b/WEB_BLENDER_TECHNICAL_ROADMAP.md index d9a36548..c45cf37e 100644 --- a/WEB_BLENDER_TECHNICAL_ROADMAP.md +++ b/WEB_BLENDER_TECHNICAL_ROADMAP.md @@ -1,5 +1,7 @@ # Blender Web 化技术路线(React + Three.js + WebAssembly + OPFS/IndexedDB) +> 历史技术背景:本文不参与当前任务领取。当前任务只认 `docs/EXECUTION_QUEUE.md` 和最小上下文工具。 + > **存储决策(2026-08):** SQLite WASM 不是项目首期必需依赖,已从当前实现和发布资源中移除。小型元数据使用 Worker 内 IndexedDB,大型二进制使用 OPFS;未来只有在查询/事务需求超过 IndexedDB 时,才单独评估 SQLite WASM。 ## 1. 结论先行 diff --git a/blender-5.2.0/source/blender/web_engine/web_engine_api.cpp b/blender-5.2.0/source/blender/web_engine/web_engine_api.cpp index 35ddfe12..ac7101bc 100644 --- a/blender-5.2.0/source/blender/web_engine/web_engine_api.cpp +++ b/blender-5.2.0/source/blender/web_engine/web_engine_api.cpp @@ -843,6 +843,16 @@ bool refresh_scene_from_main(EngineState &engine, return false; } snapshot["physicsSimulation"] = json::parse(physics_json); + std::string particle_settings_json; + if (!web_engine_blend_main_particle_settings_json( + engine.authoritative_main, particle_settings_json, error)) + { + return false; + } + const json particle_settings = json::parse(particle_settings_json)["settings"]; + if (!particle_settings.empty() || snapshot.value("particleSettings", json::array()).empty()) { + snapshot["particleSettings"] = particle_settings; + } if (!active_object_id.empty()) snapshot["activeObjectId"] = active_object_id; engine.blend_bytes.assign(reinterpret_cast(bytes.data()), bytes.size()); engine.packed_assets = parsed.packed_assets; @@ -860,7 +870,7 @@ const char *empty_scene_snapshot_json() "\"source\":{\"kind\":\"blend\"}," "\"coordinateSystem\":{\"upAxis\":\"Z\",\"forwardAxis\":\"-Y\",\"handedness\":\"RIGHT\",\"unitSystem\":0,\"unitScale\":1}," "\"nodes\":[],\"meshes\":[],\"materials\":[],\"cameras\":[],\"lights\":[],\"worlds\":[],\"images\":[],\"animations\":[]," - "\"collections\":[],\"scenes\":[],\"activeObjectId\":null," + "\"collections\":[],\"scenes\":[],\"particleSettings\":[],\"sounds\":[],\"activeObjectId\":null," "\"frame\":{\"current\":1,\"start\":1,\"end\":250}}"; } @@ -1157,6 +1167,18 @@ EMSCRIPTEN_KEEPALIVE int web_engine_open_blend(const int handle, return last_error_code; } opened_snapshot["physicsSimulation"] = json::parse(physics_json); + std::string particle_settings_json; + if (!web_engine_blend_main_particle_settings_json( + authoritative_main, particle_settings_json, main_error)) + { + web_engine_blend_main_free(authoritative_main); + set_error(WEB_ENGINE_BLEND_READ_FAILED, main_error.c_str()); + return last_error_code; + } + const json particle_settings = json::parse(particle_settings_json)["settings"]; + if (!particle_settings.empty() || opened_snapshot.value("particleSettings", json::array()).empty()) { + opened_snapshot["particleSettings"] = particle_settings; + } } catch (const std::exception &exception) { web_engine_blend_main_free(authoritative_main); 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 b9faa0dd..dd9e64f6 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 @@ -32,6 +32,7 @@ #include "DNA_genfile.h" #include "DNA_curve_enums.h" +#include "DNA_lattice_types.h" #include "DNA_mask_types.h" #include "DNA_modifier_types.h" #include "DNA_node_types.h" @@ -48,6 +49,7 @@ using namespace blender; constexpr uint64_t MAX_BLEND_BLOCK_BYTES = UINT64_C(1024) * 1024 * 1024; constexpr size_t MAX_NON_MESH_POINTS = 1000000; +constexpr size_t MAX_LATTICE_POINTS = 64 * 64 * 64; constexpr size_t MAX_SCRIPT_SOURCE_BYTES = 1024 * 1024; uint32_t rotate_right(const uint32_t value, const uint32_t bits) @@ -539,6 +541,13 @@ std::string id_prefix(const std::string &type_name) if (type_name == "Library") return "library"; if (type_name == "WorkSpace") return "workspace"; if (type_name == "bScreen") return "screen"; + if (type_name == "Brush") return "brush"; + if (type_name == "FreestyleLineStyle") return "line-style"; + if (type_name == "Lattice") return "lattice"; + if (type_name == "ParticleSettings") return "particle-settings"; + if (type_name == "bSound") return "sound"; + if (type_name == "Speaker") return "speaker"; + if (type_name == "Tex") return "texture"; return "datablock"; } @@ -552,7 +561,9 @@ bool is_exported_id_type(const std::string &type_name) type_name == "MetaBall" || type_name == "PointCloud" || type_name == "Curves" || type_name == "Volume" || type_name == "GreasePencil" || type_name == "Text" || type_name == "VFont" || type_name == "Mask" || type_name == "Library" || - type_name == "WorkSpace" || type_name == "bScreen"; + 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"; } std::string unique_id(const std::string &prefix, @@ -613,6 +624,17 @@ std::string object_type_name(const int64_t type) } } +const char *lattice_interpolation_name(const int64_t type) +{ + switch (type) { + case KEY_LINEAR: return "KEY_LINEAR"; + case KEY_CARDINAL: return "KEY_CARDINAL"; + case KEY_BSPLINE: return "KEY_BSPLINE"; + case KEY_CATMULL_ROM: return "KEY_CATMULL_ROM"; + default: return "UNKNOWN"; + } +} + std::array trs_matrix(const std::vector &location, const std::vector &rotation, const std::vector &scale) @@ -1452,8 +1474,8 @@ std::string modifier_type_name(const int64_t type) "GREASE_PENCIL_OPACITY", "GREASE_PENCIL_SUBDIV", "GREASE_PENCIL_COLOR", "GREASE_PENCIL_TINT", "GREASE_PENCIL_SMOOTH", "GREASE_PENCIL_OFFSET", "GREASE_PENCIL_NOISE", "GREASE_PENCIL_MIRROR", "GREASE_PENCIL_THICKNESS", "GREASE_PENCIL_LATTICE", "GREASE_PENCIL_DASH", "GREASE_PENCIL_MULTIPLY", - "GREASE_PENCIL_LENGTH", "GREASE_PENCIL_WEIGHT_ANGLE", "GREASE_PENCIL_ARRAY", - "GREASE_PENCIL_WEIGHT_PROXIMITY", "GREASE_PENCIL_HOOK", "GREASE_PENCIL_LINEART", + "GREASE_PENCIL_LENGTH", "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", "GREASE_PENCIL_ARRAY", + "GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", "GREASE_PENCIL_HOOK", "GREASE_PENCIL_LINEART", "GREASE_PENCIL_ARMATURE", "GREASE_PENCIL_TIME", "GREASE_PENCIL_ENVELOPE", "GREASE_PENCIL_OUTLINE", "GREASE_PENCIL_SHRINKWRAP", "GREASE_PENCIL_BUILD", "GREASE_PENCIL_SIMPLIFY", "GREASE_PENCIL_TEXTURE"}; @@ -1501,7 +1523,8 @@ json modifier_parameters(const ParsedBlend &blend, case 4: parameters["start"] = read_float(*blend.sdna, modifier, "start").value_or(1.0f); parameters["length"] = read_float(*blend.sdna, modifier, "length").value_or(100.0f); - parameters["randomize"] = read_float(*blend.sdna, modifier, "randomize").value_or(0.0f); + parameters["randomize"] = read_integer(*blend.sdna, modifier, "randomize").value_or(0); + parameters["seed"] = read_integer(*blend.sdna, modifier, "seed").value_or(0); break; case 5: parameters["flag"] = read_integer(*blend.sdna, modifier, "flag").value_or( @@ -3124,6 +3147,15 @@ json scene_ir_from_blend(const ParsedBlend &blend, json lights = json::array(); json worlds = json::array(); json images = json::array(); + json brushes = json::array(); + json line_styles = json::array(); + json lattices = json::array(); + json particle_settings = json::array(); + json sounds = json::array(); + json speakers = json::array(); + json texts = json::array(); + json textures = json::array(); + json workspace_resources = json::array(); json non_mesh_data = json::array(); json vfonts = json::array(); json libraries = json::array(); @@ -3289,10 +3321,12 @@ json scene_ir_from_blend(const ParsedBlend &blend, if (data_pointer) { const auto data_id = ids_by_pointer.find(*data_pointer); node["dataId"] = data_id != ids_by_pointer.end() ? json(data_id->second) : json(nullptr); + const json object_modifier_stack = modifier_stack_from_object(blend, element, record.id, ids_by_pointer); + if (!object_modifier_stack.empty()) node["modifierStack"] = object_modifier_stack; if (data_id != ids_by_pointer.end()) { if (const std::optional data = element_for_pointer(blend, *data_pointer)) { if (data->type_name == "Mesh") { - const json stack = modifier_stack_from_object(blend, element, record.id, ids_by_pointer); + const json stack = object_modifier_stack; if (!stack.empty()) modifier_stacks_by_mesh_id.emplace(data_id->second, stack); } } @@ -3527,6 +3561,155 @@ json scene_ir_from_blend(const ParsedBlend &blend, if (!warnings.empty()) material["warnings"] = warnings; materials.push_back(std::move(material)); } + else if (record.type_name == "Brush") { + json brush = { + {"id", record.id}, + {"name", record.name}, + {"size", std::clamp(read_integer(*blend.sdna, element, "size").value_or(0), 0, 100000)}, + {"alpha", std::clamp(read_float(*blend.sdna, element, "alpha").value_or(1.0f), 0.0f, 1.0f)}, + {"hardness", std::clamp(read_float(*blend.sdna, element, "hardness").value_or(0.0f), 0.0f, 1.0f)}, + {"spacing", std::clamp(read_integer(*blend.sdna, element, "spacing").value_or(0), 1, 1000)}, + {"jitter", std::clamp(read_float(*blend.sdna, element, "jitter").value_or(0.0f), 0.0f, 1.0f)}, + {"sculptTool", read_integer(*blend.sdna, element, "sculpt_brush_type").value_or(0)}, + }; + brushes.push_back(std::move(brush)); + } + else if (record.type_name == "FreestyleLineStyle") { + const std::vector color = {read_float(*blend.sdna, element, "r").value_or(0.0f), + read_float(*blend.sdna, element, "g").value_or(0.0f), + read_float(*blend.sdna, element, "b").value_or(0.0f)}; + const int64_t flag = read_integer(*blend.sdna, element, "flag").value_or(0); + line_styles.push_back({ + {"id", record.id}, + {"name", record.name}, + {"color", float_array_or(color, {0.0f, 0.0f, 0.0f})}, + {"alpha", std::clamp(read_float(*blend.sdna, element, "alpha").value_or(1.0f), 0.0f, 1.0f)}, + {"thickness", std::clamp(read_float(*blend.sdna, element, "thickness").value_or(1.0f), 0.0f, 10000.0f)}, + {"chaining", read_integer(*blend.sdna, element, "chaining").value_or(0)}, + {"caps", read_integer(*blend.sdna, element, "caps").value_or(0)}, + {"dashed", (flag & (1 << 2)) != 0}, + {"modifierCounts", { + {"color", linked_list_elements(blend, element, "color_modifiers").size()}, + {"alpha", linked_list_elements(blend, element, "alpha_modifiers").size()}, + {"thickness", linked_list_elements(blend, element, "thickness_modifiers").size()}, + {"geometry", linked_list_elements(blend, element, "geometry_modifiers").size()}}} + }); + } + else if (record.type_name == "Lattice") { + const int64_t points_u = read_integer(*blend.sdna, element, "pntsu").value_or(0); + const int64_t points_v = read_integer(*blend.sdna, element, "pntsv").value_or(0); + const int64_t points_w = read_integer(*blend.sdna, element, "pntsw").value_or(0); + const bool dimensions_valid = points_u >= 1 && points_u <= 64 && + points_v >= 1 && points_v <= 64 && + points_w >= 1 && points_w <= 64; + const size_t point_count = dimensions_valid ? + size_t(points_u) * size_t(points_v) * size_t(points_w) : + 0; + json points = json::array(); + bool points_complete = point_count > 0 && point_count <= MAX_LATTICE_POINTS; + if (const std::optional points_pointer = read_pointer(*blend.sdna, element, "def"); + points_complete && points_pointer) + { + for (size_t index = 0; index < point_count; index++) { + const std::optional point = raw_array_element( + blend, *points_pointer, "BPoint", index); + if (!point) { + points_complete = false; + break; + } + const std::vector coordinate = read_float_array( + *blend.sdna, *point, "vec", 4); + if (coordinate.size() != 4) { + points_complete = false; + break; + } + points.push_back({ + {"coDeform", {coordinate[0], coordinate[1], coordinate[2]}}, + {"weight", std::clamp(read_float(*blend.sdna, *point, "weight").value_or(0.0f), + 0.01f, + 100.0f)}, + {"selected", (read_integer(*blend.sdna, *point, "f1").value_or(0) & 1) != 0}, + }); + } + } + else { + points_complete = false; + } + const int64_t flag = read_integer(*blend.sdna, element, "flag").value_or(0); + json lattice = { + {"id", record.id}, + {"name", record.name}, + {"dimensions", {points_u, points_v, points_w}}, + {"pointCount", point_count}, + {"interpolation", { + lattice_interpolation_name(read_integer(*blend.sdna, element, "typeu").value_or(-1)), + lattice_interpolation_name(read_integer(*blend.sdna, element, "typev").value_or(-1)), + lattice_interpolation_name(read_integer(*blend.sdna, element, "typew").value_or(-1))}}, + {"useOutside", (flag & LT_OUTSIDE) != 0}, + {"activePoint", read_integer(*blend.sdna, element, "actbp").value_or(LT_ACTBP_NONE)}, + {"vertexGroup", read_string(*blend.sdna, element, "vgroup")}, + {"status", points_complete ? "AVAILABLE" : "BLOCKED"}, + }; + if (points_complete) lattice["points"] = std::move(points); + else lattice["errorCode"] = dimensions_valid ? "LATTICE_POINTS_UNREADABLE" : + "LATTICE_DIMENSIONS_INVALID"; + lattices.push_back(std::move(lattice)); + } + else if (record.type_name == "ParticleSettings") { + const int64_t particle_type = read_integer(*blend.sdna, element, "type").value_or(0); + const int64_t particle_from = read_integer(*blend.sdna, element, "from").value_or(0); + const int64_t particle_physics = read_integer(*blend.sdna, element, "phystype").value_or(0); + particle_settings.push_back({ + {"id", record.id}, + {"name", record.name}, + {"type", particle_type == 2 ? 1 : 0}, + {"from", particle_from == 1 ? 0 : particle_from == 0 ? 1 : 2}, + {"distribution", std::max(0, read_integer(*blend.sdna, element, "distr").value_or(0))}, + {"physicsType", particle_physics == 1 ? 0 : particle_physics == 2 ? 1 : particle_physics == 3 ? 2 : 3}, + {"totalParticles", std::max(0, read_integer(*blend.sdna, element, "totpart").value_or(0))}, + {"start", std::max(0.0f, read_float(*blend.sdna, element, "sta").value_or(0.0f))}, + {"end", std::max(0.0f, read_float(*blend.sdna, element, "end").value_or(0.0f))}, + {"lifetime", std::max(0.0f, read_float(*blend.sdna, element, "lifetime").value_or(0.0f))}, + {"size", std::max(0.0f, read_float(*blend.sdna, element, "size").value_or(0.0f))}, + {"drawSize", std::max(0.0f, read_float(*blend.sdna, element, "draw_size").value_or(0.0f))}, + }); + } + else if (record.type_name == "bSound") { + const std::string filepath = read_string(*blend.sdna, element, "filepath"); + const std::optional packed_pointer = read_pointer(*blend.sdna, element, "packedfile"); + const std::vector packed_bytes = packed_pointer ? packed_file_bytes(blend, *packed_pointer) : std::vector(); + json sound = {{"id", record.id}, + {"name", record.name}, + {"sourcePath", filepath}, + {"packed", !packed_bytes.empty()}, + {"volume", std::max(0.0f, read_float(*blend.sdna, element, "volume").value_or(1.0f))}, + {"pitch", std::max(0.0f, read_float(*blend.sdna, element, "pitch").value_or(1.0f))}, + {"audioChannels", std::max(0, read_integer(*blend.sdna, element, "audio_channels").value_or(0))}, + {"sampleRate", std::max(0, read_integer(*blend.sdna, element, "samplerate").value_or(0))}}; + if (!packed_bytes.empty()) sound["packedByteLength"] = packed_bytes.size(); + sounds.push_back(std::move(sound)); + } + else if (record.type_name == "Speaker") { + json speaker = { + {"id", record.id}, + {"name", record.name}, + {"volumeMax", std::max(0.0f, read_float(*blend.sdna, element, "volume_max").value_or(1.0f))}, + {"volumeMin", std::max(0.0f, read_float(*blend.sdna, element, "volume_min").value_or(0.0f))}, + {"distanceMax", std::max(0.0f, read_float(*blend.sdna, element, "distance_max").value_or(0.0f))}, + {"distanceReference", std::max(0.0f, read_float(*blend.sdna, element, "distance_reference").value_or(1.0f))}, + {"attenuation", std::max(0.0f, read_float(*blend.sdna, element, "attenuation").value_or(1.0f))}, + {"coneAngleOuter", std::clamp(read_float(*blend.sdna, element, "cone_angle_outer").value_or(360.0f), 0.0f, 360.0f)}, + {"coneAngleInner", std::clamp(read_float(*blend.sdna, element, "cone_angle_inner").value_or(360.0f), 0.0f, 360.0f)}, + {"coneVolumeOuter", std::clamp(read_float(*blend.sdna, element, "cone_volume_outer").value_or(1.0f), 0.0f, 1.0f)}, + {"volume", std::max(0.0f, read_float(*blend.sdna, element, "volume").value_or(1.0f))}, + {"pitch", std::max(0.0f, read_float(*blend.sdna, element, "pitch").value_or(1.0f))}, + }; + if (const std::optional sound_pointer = read_pointer(*blend.sdna, element, "sound")) { + const auto sound_id = ids_by_pointer.find(*sound_pointer); + if (sound_id != ids_by_pointer.end()) speaker["soundId"] = sound_id->second; + } + speakers.push_back(std::move(speaker)); + } else if (record.type_name == "Image") { std::string filepath = read_string(*blend.sdna, element, "filepath"); const std::vector image_views = linked_list_elements(blend, element, "views"); @@ -3624,6 +3807,18 @@ json scene_ir_from_blend(const ParsedBlend &blend, non_mesh_data.push_back(non_mesh_data_from_record(blend, element, record, ids_by_pointer)); } else if (record.type_name == "Text") { + if (const std::optional text = script_source_from_record(blend, element, record)) { + json resource = {{"id", record.id}, {"name", record.name}}; + resource["source"] = text->value("source", std::string()); + resource["sourceSha256"] = text->value("sourceSha256", std::string()); + resource["byteLength"] = text->value("byteLength", size_t(0)); + resource["lineCount"] = text->value("lineCount", size_t(0)); + resource["internal"] = text->value("internal", true); + resource["isDirty"] = (read_integer(*blend.sdna, element, "flags").value_or(0) & (1 << 0)) != 0; + resource["useModule"] = (read_integer(*blend.sdna, element, "flags").value_or(0) & (1 << 4)) != 0; + if (text->contains("sourcePath")) resource["sourcePath"] = text->at("sourcePath"); + texts.push_back(std::move(resource)); + } if (script_sources.size() >= 1024) { script_sources_blocked = true; } @@ -3643,6 +3838,21 @@ json scene_ir_from_blend(const ParsedBlend &blend, script_sources_blocked = true; } } + else if (record.type_name == "Tex") { + textures.push_back({ + {"id", record.id}, + {"name", record.name}, + {"type", read_integer(*blend.sdna, element, "type").value_or(0)}, + {"noiseScale", std::max(0.0f, read_float(*blend.sdna, element, "noisesize").value_or(0.25f))}, + {"noiseDepth", std::clamp(read_integer(*blend.sdna, element, "noisedepth").value_or(2), 0, 30)}, + {"intensity", std::max(0.0f, read_float(*blend.sdna, element, "bright").value_or(1.0f))}, + {"contrast", std::max(0.0f, read_float(*blend.sdna, element, "contrast").value_or(1.0f))}, + {"saturation", std::max(0.0f, read_float(*blend.sdna, element, "saturation").value_or(1.0f))}, + }); + } + else if (record.type_name == "WorkSpace") { + workspace_resources.push_back({{"id", record.id}, {"name", record.name}, {"screenCount", linked_list_elements(blend, element, "layouts").size()}}); + } else if (record.type_name == "VFont") { const std::string filepath = read_string(*blend.sdna, element, "filepath"); const std::optional packed_file = read_pointer(*blend.sdna, element, "packedfile"); @@ -3947,6 +4157,15 @@ json scene_ir_from_blend(const ParsedBlend &blend, sort_by_id(lights); sort_by_id(worlds); sort_by_id(images); + sort_by_id(brushes); + sort_by_id(line_styles); + sort_by_id(lattices); + sort_by_id(particle_settings); + sort_by_id(sounds); + sort_by_id(speakers); + sort_by_id(texts); + sort_by_id(textures); + sort_by_id(workspace_resources); sort_by_id(non_mesh_data); sort_by_id(vfonts); sort_by_id(libraries); @@ -3985,6 +4204,15 @@ json scene_ir_from_blend(const ParsedBlend &blend, {"lights", std::move(lights)}, {"worlds", std::move(worlds)}, {"images", std::move(images)}, + {"brushes", std::move(brushes)}, + {"lineStyles", std::move(line_styles)}, + {"lattices", std::move(lattices)}, + {"particleSettings", std::move(particle_settings)}, + {"sounds", std::move(sounds)}, + {"speakers", std::move(speakers)}, + {"texts", std::move(texts)}, + {"textures", std::move(textures)}, + {"workspaces", std::move(workspace_resources)}, {"nonMeshData", std::move(non_mesh_data)}, {"vfonts", std::move(vfonts)}, {"libraryStatus", libraries_blocked ? "BLOCKED" : "AVAILABLE"}, @@ -3998,6 +4226,7 @@ json scene_ir_from_blend(const ParsedBlend &blend, {"scenes", std::move(scenes)}, {"activeObjectId", active_object_id.empty() ? json(nullptr) : json(active_object_id)}, {"frame", {{"current", frame_current}, {"start", frame_start}, {"end", frame_end}}}}; + snapshot["windowManager"] = {{"id", "window-manager:WinMan"}, {"name", "WinMan"}, {"presetName", "New Preset"}, {"windowCount", 1}, {"interfaceLocked", false}}; if (!masks_blocked) { snapshot["trackingMasks"] = {{"schemaVersion", 1}, {"revision", revision}, diff --git a/blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp b/blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp index d0f70d15..42215ce4 100644 --- a/blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp +++ b/blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp @@ -4396,6 +4396,41 @@ bool web_engine_blend_main_physics_simulation_json(WebBlendMainState *state, return true; } +bool web_engine_blend_main_particle_settings_json(WebBlendMainState *state, + std::string &particle_settings_json, + std::string &error) +{ + if (state == nullptr || state->main == nullptr) { + error = "PARTICLE_SETTINGS_MANIFEST_INVALID: authoritative Main is not open"; + return false; + } + constexpr size_t max_settings = 4096; + auto canonical_number = [](const float value) -> json { + return std::isfinite(value) && std::trunc(value) == value ? json(int64_t(value)) : json(value); + }; + json settings = json::array(); + for (const ParticleSettings &part : state->main->particles) { + if (settings.size() >= max_settings) { + error = "PARTICLE_SETTINGS_BUDGET_EXCEEDED: ParticleSettings count exceeds the 4096 data-block budget"; + return false; + } + settings.push_back({{"id", "particle-settings:" + id_name(part.id)}, + {"name", id_name(part.id)}, + {"type", int(part.type)}, + {"from", int(part.from)}, + {"distribution", int(part.distr)}, + {"physicsType", int(part.phystype)}, + {"totalParticles", part.totpart}, + {"start", canonical_number(part.sta)}, + {"end", canonical_number(part.end)}, + {"lifetime", canonical_number(part.lifetime)}, + {"size", canonical_number(part.size)}, + {"drawSize", canonical_number(part.draw_size)}}); + } + particle_settings_json = json({{"schemaVersion", 1}, {"settings", std::move(settings)}}).dump(); + return true; +} + bool web_engine_blend_main_create_grease_pencil_layer(WebBlendMainState *state, const char *data_id, const char *name, diff --git a/blender-5.2.0/source/blender/web_engine/web_engine_main_state.h b/blender-5.2.0/source/blender/web_engine/web_engine_main_state.h index 02e9466b..e41a70c1 100644 --- a/blender-5.2.0/source/blender/web_engine/web_engine_main_state.h +++ b/blender-5.2.0/source/blender/web_engine/web_engine_main_state.h @@ -383,6 +383,9 @@ bool web_engine_blend_main_geometry_node_graphs_json(WebBlendMainState *state, bool web_engine_blend_main_physics_simulation_json(WebBlendMainState *state, std::string &physics_json, std::string &error); +bool web_engine_blend_main_particle_settings_json(WebBlendMainState *state, + std::string &particle_settings_json, + std::string &error); bool web_engine_blend_main_create_grease_pencil_layer(WebBlendMainState *state, const char *data_id, const char *name, diff --git a/docs/BLENDER_5_2_FULL_PARITY_WBS.md b/docs/BLENDER_5_2_FULL_PARITY_WBS.md index 38ccdd8f..ce1011cb 100644 --- a/docs/BLENDER_5_2_FULL_PARITY_WBS.md +++ b/docs/BLENDER_5_2_FULL_PARITY_WBS.md @@ -2,6 +2,8 @@ 更新时间:2026-08-18 +> 覆盖参考(归档):本文不是任务队列,也不进入默认上下文。只在任务卡明确引用某个 F 域时读取对应小节。 + > 本文保留为 Blender 全产品覆盖检查表和 F00-F24 taxonomy 参考。M12-M23 的执行分类、 > 原子任务、证据合同与发布门以 `BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md` 为准; > 本文的 F 任务不能直接作为当前 `nextTask`,也不能独立改变机器状态。 diff --git a/docs/BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md b/docs/BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md index db124521..9e21d197 100644 --- a/docs/BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md +++ b/docs/BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md @@ -2,6 +2,9 @@ 更新时间:2026-08-18 +> 长期规范背景:本文件不进入默认任务上下文,不提供当前领取指针。执行者必须先运行 +> `node tools/web/print-task-context.mjs`,只有任务卡明确要求时才读取本文件的具体小节。 + 本文是 M12 及以后完整 Blender 5.2 Web 迁移的长期规范事实源,负责执行分类、原子任务、 依赖、证据和完整发布门。它不覆盖 `WEB_BLENDER_MODELER_V1_SCOPE.md` 的 V1 产品契约,也不 改写 V1 已冻结的 `LOCAL_EXACT/LOCAL_BOUNDED/SERVER/EXCLUDED` 发布分类。 diff --git a/docs/BLENDER_5_2_WEB_FEATURE_PARITY.md b/docs/BLENDER_5_2_WEB_FEATURE_PARITY.md index 72e562e9..4f6ef29f 100644 --- a/docs/BLENDER_5_2_WEB_FEATURE_PARITY.md +++ b/docs/BLENDER_5_2_WEB_FEATURE_PARITY.md @@ -2,6 +2,8 @@ 更新时间:2026-08-13 +> 覆盖参考(归档):本文不作为当前任务入口;当前执行只认 `EXECUTION_QUEUE.md` 与 parent manifest。 + 本文件以仓库内 `blender-5.2.0/source/blender/` 为基线,记录 Blender 功能域在 Web 项目中的迁移方式和当前差距。M12-M23 的唯一长期实施规则和原子任务位于 `BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md`;本文不再定义领取顺序。`completed_current_scope` diff --git a/docs/CONTEXT_BUDGET.md b/docs/CONTEXT_BUDGET.md new file mode 100644 index 00000000..9e6ff059 --- /dev/null +++ b/docs/CONTEXT_BUDGET.md @@ -0,0 +1,46 @@ +# 任务上下文预算 + +完整治理流程见 [`CONTEXT_GOVERNANCE.md`](CONTEXT_GOVERNANCE.md);本页只保留机器需要的预算和索引契约。 + +本项目把“能否持续执行”定义为可检查的输入预算,而不是依赖执行者自行控制阅读量。每轮领取任务只加载一个最小上下文包: + +1. `docs/EXECUTION_QUEUE.md`:当前指针和规则,最多 4 KiB。 +2. `docs/tasks/.md`:一个行为的任务卡,最多 8 KiB。 +3. `tests/golden//manifest.json`:只取 parent、runtime、artifact hash、`nextTask`,最多 24 KiB。 +4. `docs/status/.md`:只取上一任务的证据摘要,最多 6 KiB。 + +四份输入的估算总量最多 3,500 tokens。实现代码、长日志、完整路线图和 parity ledger 只按任务卡列出的路径追加读取;它们不是默认上下文。 + +任务上下文生成器在生成 `inputPaths` 时还会前置执行证据筛选:最多 12 个证据路径,证据文件总计最多 +8 KiB,并从 3,500 token 总预算扣除四份基础文档后使用剩余空间。超限、缺失、越界或不可审计路径不会进入读取清单, +而会写入 `inputSelection.excluded[]`,其中 `reason` 是稳定的机器可读排除原因;治理门会校验所选路径、字节总数和排除审计。 + +全量 gap 计划 `tests/golden/M15-03A/next-task-plan.json` 约 6.8 MiB,只能由盘点/生成门读取,禁止作为任务上下文打开。`task-index.json` 保存源计划 hash 和每条记录的偏移,`task-catalog.jsonl` 保存一行一个任务;`task-context` 只随机读取当前任务的一行。索引缺失、源 hash 漂移或 catalog 损坏会直接失败,不能回退加载整份计划。 + +## 机器门禁 + +```bash +npm --prefix web run test:task-context +npm --prefix web run test:context-governance +node tools/web/generate-task-index.mjs +node tools/web/check-task-index.mjs +node tools/web/generate-task-card.mjs --task +node tools/web/print-task-context.mjs +node tools/web/print-task-context.mjs --task +node tools/web/check-task-context.mjs --task --write +node tools/web/check-context-governance.mjs +``` + +`check-task-context` 会确认队列指针、parent manifest、任务卡/索引、命令入口和预算一致。失败时不能领取任务,也不能手工修改 `nextTask`。索引只由计划生成门更新,执行任务不得手工编辑 catalog 或 offset。 + +推进到新任务时,若 `docs/tasks/.md` 不存在,先运行 `generate-task-card.mjs --task `;它只从 catalog 的一条记录生成一张短卡,生成后再运行 `check-task-context`。禁止为了生成一张卡读取完整 plan。 + +## 文档分层 + +- 当前执行:`EXECUTION_QUEUE.md`、当前任务卡、parent `manifest.json`、parent `status`。 +- 机器索引:`tests/golden/M15-03A/task-index.json`、`task-catalog.jsonl`;仅由工具读取,不是执行者要通读的文档。 +- 稳定契约:`WEB_BLENDER_MODELER_V1_SCOPE.md`、协议/schema、工具入口。 +- 背景规划:`CURRENT_EXECUTION_PLAN.md`、`PROJECT_STATUS_AND_NEXT_WORK.md`、完整 parity/WBS 计划。 +- 历史证据:`docs/status/` 其余文件、`tests/golden/` 其余构件、`test-results/`。 + +背景和历史文档不得在任务卡中复制;需要时只引用一个小节或一个具体构件。若文字与机器 manifest 冲突,以命令输出和 manifest 为准。 diff --git a/docs/CONTEXT_GOVERNANCE.md b/docs/CONTEXT_GOVERNANCE.md new file mode 100644 index 00000000..689c1580 --- /dev/null +++ b/docs/CONTEXT_GOVERNANCE.md @@ -0,0 +1,121 @@ +# 上下文治理契约 + +更新时间:2026-08-19(America/New_York) + +本契约解决两个问题:执行者不需要读完整路线图就能继续工作;任何任务卡、交接状态或机器索引 +变大、漂移或重复指针时,自动门禁会在领取前失败。它是执行规则,不是项目进度表。 + +## 一、事实分层 + +每个问题只由一个层级回答,层级之间不互相复制内容: + +| 层级 | 唯一职责 | 默认是否读取 | +| --- | --- | --- | +| `EXECUTION_QUEUE.md` | 当前 task、parent manifest、专项命令、全局硬规则 | 是 | +| `tasks/.md` | 一个行为或一个证据变化的输入、边界、验收和回滚 | 是 | +| `tests/golden//manifest.json` | parent 状态、artifact hash、运行时、`nextTask` | 是 | +| `docs/status/.md` | 上一项最小证据摘要和已知风险 | 是 | +| 协议/生产/测试文件 | 任务卡点名的实现事实 | 按需 | +| 长期计划、全量 ledger、历史 status | 背景、审计、归档 | 禁止默认读取 | + +冲突优先级固定为:真实命令输出 > manifest/evidence > 任务卡 > 队列文字 > 长期规划和历史日志。 +Markdown checkbox 不能覆盖失败命令或 hash 漂移。 + +## 二、硬预算 + +预算按 UTF-8 bytes 检查,token 用 `ceil(bytes / 4)` 作保守估算。超过任一单项或总预算都不能领取。 + +| 输入 | 上限 | 约束 | +| --- | ---: | --- | +| 队列 | 4 KiB | 只保留一个当前指针,不保留历史任务表 | +| 任务卡 | 8 KiB | 最多 12 个输入路径、8 条命令;不复制日志 | +| parent manifest | 24 KiB | 只记录必要 artifact,最多 32 项 | +| parent status | 6 KiB | 只保留命令、退出码、关键结果、风险和回滚 | +| 四份输入合计 | 3,500 tokens | 由 `contextSizeReport` 和治理门同时检查 | +| catalog 单行 | 2 KiB | 机器随机读取;执行者不得通读 catalog | + +生成阶段的证据读取清单另外受 `maxFiles=12`、`evidenceBytes=8 KiB` 和基础文档扣除后的剩余上下文空间约束。 +每个未选路径必须有 `inputSelection.excluded[].reason`,因此校验器不会成为首次发现超大上下文的地方。 + +全量 `next-task-plan.json`、parity map 和 gap audit 是生成器输入,不是执行上下文。索引保存源 +hash 和 catalog offset;源 hash、catalog hash 或 offset 损坏时必须重新生成,不能回退读取大计划。 + +## 三、原子任务粒度 + +默认“一项任务 = 一个可观察行为或一项独立证据”。以下任一情况出现就拆任务: + +- 同时改变 schema、生产消费、浏览器接线和发布证据; +- 需要两个互不依赖的 fixture 或两个不同 owner family; +- 正例、取消/重复/超限负例无法在同一 focused command 中清楚断言; +- 任务卡需要列出超过 12 个输入或超过 8 条命令; +- 任何一项失败会让另一项仍可安全交付。 + +复杂能力按适用门拆分,门之间通过 parent manifest 串联: + +| 门 | 只交付一件事 | 失败状态 | +| --- | --- | --- | +| C 契约 | schema、稳定 ID、预算、错误边界和 revision 规则 | `in_progress` | +| P 生产 | Main/Worker/App/viewport 的真实消费路径 | `in_progress` | +| N 负例 | 非法、重复、取消、迟到、超限不改变已提交状态 | `in_progress` | +| B 浏览器 | Chromium 真实用户路径和可见结果 | `blocked` 或 `in_progress` | +| R 资源 | dispose、重启、save/reopen、OPFS/GPU/内存归零 | `in_progress` | +| E 证据 | focused command、报告、hash manifest、status、回滚 | 通过后才允许下一个 task | + +M16 及后续 gap 固定为一 gap 一个 task:最小 fixture、desktop/WASM 对比、save/reopen、负例和 +manifest 证据必须属于该 gap;不要把“完成整个 family”写成一张卡。 + +## 四、执行生命周期 + +### 领取 + +```bash +npm --prefix web run test:context-governance +node tools/web/print-task-context.mjs +node tools/web/check-task-context.mjs +``` + +只读取打印结果列出的四份文件和任务卡点名的最小实现入口。当前 task 必须等于 parent +manifest 的 `nextTask`;不能从旧 Markdown 编号、完整 plan 或 status 列表推导任务。 + +### 实施 + +先确认最小 fixture 和生产入口,再写 focused test/checker。每条验收命令都必须真实运行并记录 +退出码;协议或测试文件存在不等于生产能力完成。浏览器、CI、验收和发布证据永久仅限 Chromium。 + +### 成功交接 + +```bash +node tools/web/check-task-context.mjs --task --write +node tools/web/check-context-governance.mjs +``` + +只提交本任务的实现/测试、fixture、报告、manifest、status 和 `task-context.json`。manifest 必须 +绑定所有产物的 SHA-256,并且 `nextTask` 是唯一的下一指针;长日志留在构件目录,不复制进 status。 + +### 失败、阻断和恢复 + +命令失败、环境缺失、取消、超限、重复、迟到结果或 hash 漂移时保持 `in_progress` 或 `blocked`, +不得写成功报告、修改 Main revision 或推进 `nextTask`。修复后从同一 parent 重新运行;不要覆盖 +parent 证据。任务卡、索引或队列指针不一致时先修复生成证据,再继续实现。 + +## 五、提交前门禁 + +提交前至少运行: + +```bash +npm --prefix web run test:context-governance +node tools/web/check-task-index.mjs +node tools/web/check-task-context.mjs +git diff --check +``` + +`check-context-governance` 会检查四份文档预算、任务卡必备章节和失败边界、禁止的长文档引用、 +manifest 路径/构件数量、catalog 行边界以及唯一活动 task。门禁失败即停止,不通过手工删除输出 +或修改 `nextTask` 绕过。 + +## 六、维护规则 + +- 新增任务:先更新机器源并运行 `generate-task-index.mjs`,再用 `generate-task-card.mjs --task` 生成短卡;禁止手写 catalog offset。 +- 完成任务:先写 manifest/status,再用 `check-task-context --write` 生成交接上下文;队列只跟随新 manifest。 +- 规则变化:只修改本契约、`CONTEXT_BUDGET.md`、模板和治理测试;长期规划只增加链接,不复制规则。 +- 发现重复或过大的历史文档:标记为背景/归档并从默认入口移除,不在任务卡中粘贴摘要。 diff --git a/docs/CURRENT_EXECUTION_PLAN.md b/docs/CURRENT_EXECUTION_PLAN.md index 0da05b63..af247268 100644 --- a/docs/CURRENT_EXECUTION_PLAN.md +++ b/docs/CURRENT_EXECUTION_PLAN.md @@ -2,6 +2,9 @@ 更新时间:2026-08-19 +> 背景规划文档:不作为当前任务入口,也不覆盖 `EXECUTION_QUEUE.md` 的机器指针。领取任务只读取 +> [`CONTEXT_BUDGET.md`](CONTEXT_BUDGET.md) 定义的最小上下文包。 + ## 1. 交付目标 当前交付物是 `Web Blender Modeler V1`,不是 Blender 5.2 的完整浏览器移植。 @@ -18,8 +21,8 @@ React 工作区和编辑器 -> OPFS 大文件 + IndexedDB 元数据 ``` -本计划保留阶段边界和退出条件;领取任务时只读取精简入口 `docs/EXECUTION_QUEUE.md`、对应 -`docs/tasks/.md` 和 parent manifest,避免加载历史日志。M12-M23 的长期 Blender 全功能实施规范以 +本计划保留阶段边界和退出条件;领取任务时只运行 `node tools/web/print-task-context.mjs`,仅读取其 +输出的队列、任务卡/plan 条目、parent manifest 和 parent status,避免加载历史日志。M12-M23 的长期 Blender 全功能实施规范以 `BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md` 为准;当前实现状态仍由 `status/parity-ledger.json` 和对应 evidence 给出。长期全域差距不阻断已明确限定范围的 V1。 diff --git a/docs/EXECUTION_QUEUE.md b/docs/EXECUTION_QUEUE.md index 43b15bb0..30377e54 100644 --- a/docs/EXECUTION_QUEUE.md +++ b/docs/EXECUTION_QUEUE.md @@ -1,54 +1,44 @@ # Web Blender 短周期执行入口 -更新时间:2026-08-19(America/New_York) +更新时间:2026-08-20(America/New_York) -本页只负责“现在领取什么”。文档地图见 [`docs/README.md`](README.md),任务卡见 [`tasks/`](tasks/), -长期规则见 `BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md`。不要在本页复制实现日志或历史任务表。 - -## 铁律:浏览器范围 - -本项目浏览器执行、CI、验收证据和发布声明永久仅限 Chromium。禁止启动、探测或领取 Firefox -和 WebKit 测试任务;历史 Firefox/WebKit 报告仅作归档背景,不得作为支持证据。缺失 WebGPU -只能由 Chromium 真实能力门将依赖 WebGPU 的功能标记为 `BLOCKED`,不得用其他浏览器推断。 +本页是唯一的当前任务指针,不保存历史任务表、实现日志或长期规划。领取任务前只读取本页、当前任务上下文、parent manifest 和 parent status;完整规则见 [`CONTEXT_BUDGET.md`](CONTEXT_BUDGET.md)。 ## 当前指针 | 字段 | 值 | | --- | --- | -| 里程碑 | M14 跨浏览器/设备 | -| 当前任务 | `M14-04F` | -| parent manifest | `tests/golden/M14-04E/manifest.json` | -| 任务卡 | [`tasks/M14-04F.md`](tasks/M14-04F.md) | -| 专项验收 | `npm --prefix web run test:chromium-input-modal` | +| 里程碑 | M16 Main、Mesh、Modifier、Sculpt | +| 当前任务 | `M16-GAP-00071` | +| parent manifest | `tests/golden/M16-GAP-00070/manifest.json` | +| 任务卡 | [`tasks/M16-GAP-00071.md`](tasks/M16-GAP-00071.md) | +| 专项验收 | `npm --prefix web run test:generated-gap -- --task M16-GAP-00071` | -领取前只读四个文件:本页、任务卡、parent manifest、parent status。完成后新增 task manifest/status, -从新 manifest 的 `nextTask` 继续;Markdown 中的旧编号不覆盖机器指针。 +领取前执行: -## 任务链 +```bash +npm --prefix web run test:task-context +npm --prefix web run test:context-governance +node tools/web/print-task-context.mjs +``` -| ID | 唯一交付 | 任务卡 | -| --- | --- | --- | -| M13-04F | stdout/stderr 有界截断与脱敏 | [`M13-04F.md`](tasks/M13-04F.md) | -| M13-04G | 取消进程树并清理目录 | [`M13-04G.md`](tasks/M13-04G.md) | -| M13-04H | timeout/OOM/signal 稳定错误码 | [`M13-04H.md`](tasks/M13-04H.md) | -| M13-04I | hash 校验后原子提交 OPFS | [`M13-04I.md`](tasks/M13-04I.md) | -| M13-04J | request 重试幂等和冲突隔离 | [`M13-04J.md`](tasks/M13-04J.md) | -| M13-05G | fuzz 崩溃最小化与回归固化 | [`M13-05G.md`](tasks/M13-05G.md) | -| M13-05H | 审计记录严格顺序与防篡改 hash chain | [`M13-05H.md`](tasks/M13-05H.md) | -| M14-01A | 冻结 Chromium、engine 与 archive 身份 | [`M14-01A.md`](tasks/M14-01A.md) | -| M14-01B | Firefox capability probe | 跳过:Chromium-only 铁律 | -| M14-01C | WebKit capability probe | 跳过:Chromium-only 铁律 | -| M14-01D | probe identity and GPU/OS adapter recording | [`M14-01D.md`](tasks/M14-01D.md) | -| M14-01E | Chromium WebGPU fail-closed boundary | [`M14-01E.md`](tasks/M14-01E.md) | -| M14-04A | Chromium GPU/memory budget device tier selection | [`M14-04A.md`](tasks/M14-04A.md) | -| M14-04B | Chromium DPR 1/1.5/2/3 consistency | [`M14-04B.md`](tasks/M14-04B.md) | -| M14-04C | Chromium mouse/touch/pen pointer contract | [`M14-04C.md`](tasks/M14-04C.md) | -| M14-04D | Chromium IME composition guard | [`M14-04D.md`](tasks/M14-04D.md) | -| M14-04E | Chromium US/non-US/dead-key/modifier keymap fixture | [`M14-04E.md`](tasks/M14-04E.md) | -| M14-04F | Chromium touch modal cancel / two-finger / pen commit | [`M14-04F.md`](tasks/M14-04F.md) | +如果任务卡缺失,运行 `node tools/web/generate-task-card.mjs --task `;如果索引过期,运行 `node tools/web/generate-task-index.mjs` 后再生成任务卡;不要打开或复制完整 `next-task-plan.json`。 -## 统一退出门 +## 铁律 -每项只声明一个主要行为;适用的生产路径、结构化错误码、取消/迟到结果门、资源清理、专项命令、 -报告/manifest SHA-256 和回滚条件必须全部具备。执行未通过、环境缺失或 hash 漂移时标记 `blocked`, -不能用协议或测试文件存在替代真实运行结果。M13 脚本执行在本链完成前保持 `execution=DISABLED`。 +- 浏览器执行、CI、验收证据和发布声明永久仅限 Chromium;禁止领取 Firefox/WebKit 任务。 +- 当前任务必须等于 parent manifest 的 `nextTask`;不得从 Markdown 历史编号手工推导。 +- 一个任务只能有一个主要行为变化或一个独立证据变化。实现、浏览器接线、负例和证据需要拆成明确子任务时,沿任务卡的门逐项完成。 +- 完成必须有真实命令、退出码、构件 SHA-256、manifest 和 status;协议、fixture 或测试文件存在不等于完成。 +- 失败、环境缺失或 hash 漂移保持 `in_progress`/`blocked`,不得推进指针。 + +## 交接 + +```text +node tools/web/check-task-context.mjs --task --write +``` + +完成后只写入 `tests/golden//task-context.json`、任务报告、manifest 和 `docs/status/.md`。下一任务只读新 manifest 的 `nextTask`;长日志留在构件目录。 + +提交前运行 `node tools/web/check-context-governance.mjs` 和 `git diff --check`;门禁失败时保持原 task, +不得手工推进 `nextTask`。 diff --git a/docs/PBR_RENDERING_IMPLEMENTATION_PLAN.md b/docs/PBR_RENDERING_IMPLEMENTATION_PLAN.md index 490eee5f..4966c83e 100644 --- a/docs/PBR_RENDERING_IMPLEMENTATION_PLAN.md +++ b/docs/PBR_RENDERING_IMPLEMENTATION_PLAN.md @@ -2,6 +2,8 @@ 更新日期:2026-08-09 +> 专项背景(归档):本文不进入默认上下文;PBR 任务必须通过最小上下文工具按卡片追加读取。 + ## 1. 目标和声明边界 目标是在浏览器 3D Viewport 中提供与 Blender Principled 工作流一致、可保存、可重开的 diff --git a/docs/PROJECT_STATUS_AND_NEXT_WORK.md b/docs/PROJECT_STATUS_AND_NEXT_WORK.md index bd457e6b..d50b0998 100644 --- a/docs/PROJECT_STATUS_AND_NEXT_WORK.md +++ b/docs/PROJECT_STATUS_AND_NEXT_WORK.md @@ -2,6 +2,9 @@ 更新时间:2026-08-19 +> 背景状态快照:不作为当前任务入口。当前任务、parent 和 `nextTask` 只认 +> `docs/EXECUTION_QUEUE.md`、任务上下文和机器 manifest;本文件中的“当前”仅指快照生成时点。 + 当前短周期任务、领取顺序和阶段退出条件统一维护在 `docs/EXECUTION_QUEUE.md`。本文件保留实现事实、长期能力台账和完整验收命令,不再作为 V1 的逐项领取顺序;V1 范围以 `docs/WEB_BLENDER_MODELER_V1_SCOPE.md` 为准,M12-M23 全功能 diff --git a/docs/README.md b/docs/README.md index df435edf..d82fbc43 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,20 +1,23 @@ # 文档导航 本目录按“产品契约、当前任务、实现事实、长期规划、验收证据”分层。领取任务时不要从仓库根目录 -开始通读;只读取当前队列、当前任务卡和机器 manifest 指向的状态页。 +开始通读;只读取当前队列和机器生成的最小上下文包。预算和自动检查见 +[`CONTEXT_BUDGET.md`](CONTEXT_BUDGET.md)。 +完整拆分、预算、交接和提交规则见 [`CONTEXT_GOVERNANCE.md`](CONTEXT_GOVERNANCE.md)。 ## 领取任务 -1. [EXECUTION_QUEUE.md](EXECUTION_QUEUE.md):唯一的短周期入口,给出当前 `nextTask` 和读取顺序。 -2. `tasks/.md`:当前任务的最小上下文、范围和验收命令。 -3. `tests/golden//manifest.json`:机器事实源,确认 parent、输入构件和下一个任务。 -4. `status/.md`:完成后写入证据、hash、状态和回滚方式。 +1. [EXECUTION_QUEUE.md](EXECUTION_QUEUE.md):唯一的短周期入口和当前指针。 +2. `node tools/web/print-task-context.mjs`:只输出当前任务需要的四份输入。 +3. `tasks/.md`:当前任务唯一的范围、输入和验收;缺卡时先修复生成流程,不要打开完整 plan。 +4. parent `tests/golden//manifest.json` 与 `status/.md`:只提供交接事实。 -需要拆分实施或控制上下文时,先看 [TASK_BREAKDOWN.md](TASK_BREAKDOWN.md)。它提供阶段地图、 -原子任务门、当前 M14-04F 的子任务和后续任务草案,但不覆盖 manifest/status 的机器事实。 +需要拆分实施或控制上下文时,先看 [CONTEXT_GOVERNANCE.md](CONTEXT_GOVERNANCE.md); +[TASK_BREAKDOWN.md](TASK_BREAKDOWN.md) 只提供阶段地图和归档示例,不覆盖 manifest/status 的机器事实。 任务卡使用 [TASK_CONTEXT_TEMPLATE.md](TASK_CONTEXT_TEMPLATE.md) 的固定结构;卡片只描述一个主要 -行为或一个证据变化,不复制实现日志。 +行为或一个证据变化,不复制实现日志。全量 gap 计划由机器索引切片,`check-task-context` 会阻止 +超预算、缺卡、过期索引或 parent 指针错误进入队列。 ## 事实源 @@ -36,8 +39,12 @@ ## 最小上下文规则 -默认只加载本页列出的四个入口文件;实现细节按任务卡的文件清单追加读取。不要为了确认一个 -局部输入、IO 或安全任务而加载整份 `PROJECT_STATUS_AND_NEXT_WORK.md` 或完整 parity 计划。 +默认只加载队列、当前任务卡、parent manifest 和 parent status;总量上限为 3,500 tokens。 +实现细节按任务卡的文件清单追加读取。不要为了确认一个局部输入、IO 或安全任务而加载整份 +`PROJECT_STATUS_AND_NEXT_WORK.md` 或完整 parity 计划。 + +`next-task-plan.json`、parity map 和 gap audit 是生成器输入,不是任务上下文;任务工具只读取 +带 hash 的单行 catalog 记录。 文档描述与 manifest/evidence 冲突时,以可复验的机器状态为准;不要通过修改 Markdown checkbox 覆盖失败证据。 diff --git a/docs/TASK_BREAKDOWN.md b/docs/TASK_BREAKDOWN.md index 404e8a21..ac086b23 100644 --- a/docs/TASK_BREAKDOWN.md +++ b/docs/TASK_BREAKDOWN.md @@ -2,6 +2,9 @@ 更新时间:2026-08-19(America/New_York) +> 拆分参考(归档):本文件不进入默认任务上下文。当前任务和依赖只由 `print-task-context` 与 +> parent manifest 提供;这里只在需要设计新的子任务门时读取对应小节。 + 本文件是“如何拆任务、如何领取任务、如何交接”的规划索引,不是实现状态事实源。当前状态仍以 `docs/EXECUTION_QUEUE.md`、当前任务的 `manifest.json`、对应 `docs/status/.md` 和可复验命令为准。 本文件的目标是让一次任务只加载必要上下文,不要求阅读整份路线图或历史接续日志。 @@ -11,9 +14,10 @@ 每轮只按下面顺序读取: 1. `docs/EXECUTION_QUEUE.md`:确认唯一当前 `nextTask`、Chromium-only 规则和专项命令。 -2. `docs/tasks/.md`:读取目标、输入、范围、验收和回滚。 -3. `tests/golden//manifest.json`:确认 parent hash、依赖、运行时和下一任务。 -4. `docs/status/.md`:只读取上一项的证据摘要和已知风险。 +2. `node tools/web/print-task-context.mjs`:取得已经裁剪的单任务 JSON;不要读取 plan、gap audit 或 parity map。 +3. `docs/tasks/.md`:读取目标、输入、范围、验收和回滚。 +4. `tests/golden//manifest.json`:确认 parent hash、依赖、运行时和下一任务。 +5. `docs/status/.md`:只读取上一项的证据摘要和已知风险。 只有遇到以下问题才继续读取: @@ -80,6 +84,27 @@ 任务卡可以把 C/P/N/B/R/E 写成子任务,但只有所有适用门通过后,主任务才可变为 `done`。 +### 3.2 生成 gap 的细分协议 + +M16 及后续全域 gap 采用“一条 gap、一个任务、五扇证据门”的固定粒度。任务 ID、gap、owner 和 +实现类别由机器 catalog 提供;任务卡只补充该条 gap 的真实 fixture、生产入口和边界,不复制全量 +计划字段。 + +| 门 | 唯一交付 | 失败时的状态 | +| --- | --- | --- | +| C | 字段/稳定 ID/错误边界契约 | `in_progress`,不得写入成功报告 | +| D | desktop fixture 和可重跑报告 | `blocked` 或 `in_progress`,不得接 WASM | +| W | WASM/Main 消费同一 fixture | `in_progress`,不得声称 parity | +| R | save/reopen 或 revision 稳定性 | `in_progress`,不得推进队列 | +| E | comparator、manifest、status、rollback | 只有 E 完成才允许 parent `nextTask` | + +生成目录中的 `next-task-plan.json` 是盘点输入,不是执行上下文。`generate-task-index.mjs` 将其切成 +带源 hash 的 `task-index.json` 和一行一个任务的 `task-catalog.jsonl`;执行工具按 offset 读取单条 +记录,并由任务卡恢复命令模板。索引失效、任务卡缺失、parent 指针不一致或单卡超过 8 KiB 时, +领取门直接失败。 + +新任务卡使用 `node tools/web/generate-task-card.mjs --task ` 按 catalog 单条记录生成;生成器拒绝未知 ID、没有 parent 的首项和已有卡覆盖,除非显式传入 `--force`。生成后必须重新运行上下文门禁。 + ## 4. 项目阶段分解 下面是导航级分解;具体领取仍由短周期队列决定。 @@ -99,14 +124,15 @@ | M11 | Render/Compositor/Media | bounded local、server route、codec/revision/audio | 已完成的 V1 slice | | M12 | Asset/IO/Editors | 资产库、GLB/OBJ/STL/PLY、编辑器上下文 | 按 manifest 继续领取,不能按总百分比判断 | | M13 | Scripting/Security | metadata-only、default-deny、sandbox、server isolation、CSP | 每个安全门独立验收;execution 默认禁用 | -| M14 | Chromium 设备与输入 | capability、预算、DPR、pointer、IME、keymap、modal、可访问性 | 当前短周期在 `M14-04F` | -| M15 | 全域审计 | Blender 5.2 inventory、operator/node/editor/format gap | 未开始;不阻断已限定 V1 | +| M14 | Chromium 设备与输入 | capability、预算、DPR、pointer、IME、keymap、modal、可访问性 | 已归档;后续只按 manifest 回归 | +| M15 | 全域审计 | Blender 5.2 inventory、operator/node/editor/format gap | 已完成计划/审计门;产出 6,900 条 M16-M22 原子 gap | +| M16-M22 | 原子 parity gap | 每条 gap 独立 fixture、desktop/WASM 对标、重开和 hash 证据 | 只按 parent manifest 顺序推进;当前任务不在本表缓存 | 状态轴必须分开:V1 `releaseStatus=READY` 不等于 Blender 全域 `parityStatus=COMPLETE`。 -## 5. 当前 M14-04F 细分 +## 5. 历史示例:M14-04F 细分(非当前任务) -### 5.1 当前已知上下文 +### 5.1 归档时的已知上下文 - parent:`M14-04E`,状态页已记录 keymap fixture 的成功证据。 - 当前任务:`M14-04F`,任务卡为 `docs/tasks/M14-04F.md`。 @@ -145,7 +171,7 @@ 如果只有协议和测试通过,状态应保持 `in_progress`,不得提前领取 M14-04G。 -## 6. M14 后续任务草案 +## 6. M14 后续任务草案(归档) 这些是领取前的拆分草案;正式任务仍须由 parent manifest 生成任务卡。 diff --git a/docs/TASK_CONTEXT_TEMPLATE.md b/docs/TASK_CONTEXT_TEMPLATE.md index 397dd88f..e7bb0921 100644 --- a/docs/TASK_CONTEXT_TEMPLATE.md +++ b/docs/TASK_CONTEXT_TEMPLATE.md @@ -1,7 +1,11 @@ # 任务上下文模板 -每张任务卡只允许一个主要行为变化或一个证据变化。保持短小;实现细节放在代码和测试中,运行结果 -放在 `docs/status/.md`,不要在任务卡复制长日志。 +每张任务卡只允许一个主要行为变化或一个证据变化。卡片上限 8 KiB,最多 12 个输入路径和 8 条命令;实现细节放在代码和测试中, +运行结果放在 `docs/status/.md`,不要在任务卡复制长日志。机器生成 gap 也必须有同样的短卡; + catalog 只供工具随机读取,不替代任务卡,也不应被执行者通读。 + +不要在任务卡引用 `next-task-plan.json`、完整路线图、全量 status 或 `test-results/`;需要背景时只 +点名一个稳定契约的小节。 ## 任务 @@ -16,8 +20,8 @@ ## 输入 - 上一个 manifest:`tests/golden//manifest.json` -- 生产入口:`` - 最小 fixture:`` +- 生产入口:``;不要写“相关代码”或整目录。 ## 范围 @@ -30,6 +34,8 @@ ``` +至少列出一个负例、取消、重复或预算超限场景;不要把全量回归命令复制到卡片。 + 适用时补充 Node、Chromium、typecheck、lint;每条命令必须真实运行并记录退出码。 ## 产物和交接 diff --git a/docs/UNDECLARED_CAPABILITIES_EXECUTION_PLAN.md b/docs/UNDECLARED_CAPABILITIES_EXECUTION_PLAN.md index 03912c26..47c6886e 100644 --- a/docs/UNDECLARED_CAPABILITIES_EXECUTION_PLAN.md +++ b/docs/UNDECLARED_CAPABILITIES_EXECUTION_PLAN.md @@ -2,6 +2,8 @@ 更新时间:2026-08-09 +> 长期规划(归档):本文不进入默认上下文;只按任务卡引用的章节读取。 + 本计划把当前未声明的 Sculpt、Geometry Nodes/Simulation、任意 Shader Node 和完整 NLA 拆成四个可独立验收的连续任务。每个任务都必须满足:Blender Main 是唯一写入 权威;SceneIR 只承载通过校验的数据;Three.js 不执行 Blender 语义;不支持或不确定 diff --git a/docs/VDB_NANOVDB_WEBGPU_IMPLEMENTATION_PLAN.md b/docs/VDB_NANOVDB_WEBGPU_IMPLEMENTATION_PLAN.md index 86a0dbb5..2be7d86f 100644 --- a/docs/VDB_NANOVDB_WEBGPU_IMPLEMENTATION_PLAN.md +++ b/docs/VDB_NANOVDB_WEBGPU_IMPLEMENTATION_PLAN.md @@ -2,6 +2,8 @@ 更新时间:2026-08-14 +> 专项背景(归档):本文不进入默认上下文;VDB 任务必须通过最小上下文工具按卡片追加读取。 + ## 1. 范围与完成定义 VDB 重新纳入 N-015/N-019/N-023/N-026。产品链路固定为:桌面工具或受控服务端使用 diff --git a/docs/status/M12-07H.md b/docs/status/M12-07H.md index 9aa988de..961ff15f 100644 --- a/docs/status/M12-07H.md +++ b/docs/status/M12-07H.md @@ -1,9 +1,9 @@ # M12-07H Status -status: done -task: PLY vertex/face/color/custom property mapping and unknown property loss report -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: PLY vertex/face/color/custom property mapping and unknown property loss report +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M12-07I.md b/docs/status/M12-07I.md index d2efbc96..e45539a4 100644 --- a/docs/status/M12-07I.md +++ b/docs/status/M12-07I.md @@ -1,9 +1,9 @@ # M12-07I Status -status: done -task: PLY big-endian, malformed list, and oversized count stable blocking -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: PLY big-endian, malformed list, and oversized count stable blocking +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M12-07J.md b/docs/status/M12-07J.md index 127cda94..8474ef80 100644 --- a/docs/status/M12-07J.md +++ b/docs/status/M12-07J.md @@ -1,9 +1,9 @@ # M12-07J Status -status: done -task: three-format cancellation, OOM, Worker restart, and small-file recovery -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: three-format cancellation, OOM, Worker restart, and small-file recovery +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-01A.md b/docs/status/M13-01A.md index 31b49cec..f85d4e33 100644 --- a/docs/status/M13-01A.md +++ b/docs/status/M13-01A.md @@ -1,9 +1,9 @@ # M13-01A Status -status: done -task: inventory Text, Python Console, autorun, driver expression, handler, and add-on entry points -updated: 2026-08-18 America/New_York -enablingTask: true +status: done +task: inventory Text, Python Console, autorun, driver expression, handler, and add-on entry points +updated: 2026-08-18 America/New_York +enablingTask: true parityStateChange: false ## Scope diff --git a/docs/status/M13-01B.md b/docs/status/M13-01B.md index 0ea2ea0e..8b539fc2 100644 --- a/docs/status/M13-01B.md +++ b/docs/status/M13-01B.md @@ -1,9 +1,9 @@ # M13-01B Status -status: done -task: read script metadata on `.blend` open without executing arbitrary content -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: read script metadata on `.blend` open without executing arbitrary content +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-01C.md b/docs/status/M13-01C.md index bf1fdd75..55c96559 100644 --- a/docs/status/M13-01C.md +++ b/docs/status/M13-01C.md @@ -1,9 +1,9 @@ # M13-01C Status -status: done -task: default-deny autorun, register, install, and driver execution policy codes -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: default-deny autorun, register, install, and driver execution policy codes +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-01D.md b/docs/status/M13-01D.md index 6029a8bf..19febec3 100644 --- a/docs/status/M13-01D.md +++ b/docs/status/M13-01D.md @@ -1,9 +1,9 @@ # M13-01D Status -status: done -task: UI direct-eval bypass gate -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: UI direct-eval bypass gate +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-01E.md b/docs/status/M13-01E.md index 113ec41c..1077fea4 100644 --- a/docs/status/M13-01E.md +++ b/docs/status/M13-01E.md @@ -1,9 +1,9 @@ # M13-01E Status -status: done -task: preserve Text data and unknown script sources through save/reopen -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: preserve Text data and unknown script sources through save/reopen +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-01F.md b/docs/status/M13-01F.md index df5dbb9e..826a75f3 100644 --- a/docs/status/M13-01F.md +++ b/docs/status/M13-01F.md @@ -1,9 +1,9 @@ # M13-01F Status -status: done -task: malicious Text, driver, handler, and embedded-module fixtures -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: malicious Text, driver, handler, and embedded-module fixtures +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-02A.md b/docs/status/M13-02A.md index c610913b..9a962e14 100644 --- a/docs/status/M13-02A.md +++ b/docs/status/M13-02A.md @@ -1,9 +1,9 @@ # M13-02A Status -status: done -task: bounded script manifest limits -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: bounded script manifest limits +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-02B.md b/docs/status/M13-02B.md index 52c6af59..d5c5f806 100644 --- a/docs/status/M13-02B.md +++ b/docs/status/M13-02B.md @@ -1,9 +1,9 @@ # M13-02B Status -status: done -task: canonical script manifest serialization -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: canonical script manifest serialization +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-02C.md b/docs/status/M13-02C.md index 3f452c8c..fde47b24 100644 --- a/docs/status/M13-02C.md +++ b/docs/status/M13-02C.md @@ -1,9 +1,9 @@ # M13-02C Status -status: done -task: signer identity, key rotation, revocation and timestamp policy -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: signer identity, key rotation, revocation and timestamp policy +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-02D.md b/docs/status/M13-02D.md index d4bb2368..6c5fa011 100644 --- a/docs/status/M13-02D.md +++ b/docs/status/M13-02D.md @@ -1,9 +1,9 @@ # M13-02D Status -status: done -task: signature verification binds declared content -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: signature verification binds declared content +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-02E.md b/docs/status/M13-02E.md index 05459380..1b36a019 100644 --- a/docs/status/M13-02E.md +++ b/docs/status/M13-02E.md @@ -1,9 +1,9 @@ # M13-02E Status -status: done -task: permission default-minimization and unknown-permission blocking -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: permission default-minimization and unknown-permission blocking +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-02F.md b/docs/status/M13-02F.md index 77ed2ffc..b6bfa403 100644 --- a/docs/status/M13-02F.md +++ b/docs/status/M13-02F.md @@ -1,9 +1,9 @@ # M13-02F Status -status: done -task: signature replay, key-confusion and expiry negative cases -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: signature replay, key-confusion and expiry negative cases +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03A.md b/docs/status/M13-03A.md index 6ebc324d..9cb8c44c 100644 --- a/docs/status/M13-03A.md +++ b/docs/status/M13-03A.md @@ -1,9 +1,9 @@ # M13-03A Status -status: done -task: sandbox capability scope -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: sandbox capability scope +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03B.md b/docs/status/M13-03B.md index 3915520f..9217330d 100644 --- a/docs/status/M13-03B.md +++ b/docs/status/M13-03B.md @@ -1,9 +1,9 @@ # M13-03B Status -status: done -task: sandbox CPU, wall, memory, message and output budgets -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: sandbox CPU, wall, memory, message and output budgets +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03C.md b/docs/status/M13-03C.md index bbbc43e4..2b05ece2 100644 --- a/docs/status/M13-03C.md +++ b/docs/status/M13-03C.md @@ -1,9 +1,9 @@ # M13-03C Status -status: done -task: explicit host-call allowlist and structured parameters -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: explicit host-call allowlist and structured parameters +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03D.md b/docs/status/M13-03D.md index 3bacae0e..ec14d890 100644 --- a/docs/status/M13-03D.md +++ b/docs/status/M13-03D.md @@ -1,9 +1,9 @@ # M13-03D Status -status: done -task: sandbox crash/timeout isolation -updated: 2026-08-18 America/New_York -enablingTask: false +status: done +task: sandbox crash/timeout isolation +updated: 2026-08-18 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03E.md b/docs/status/M13-03E.md index e90d0210..33a415d2 100644 --- a/docs/status/M13-03E.md +++ b/docs/status/M13-03E.md @@ -1,9 +1,9 @@ # M13-03E Status -status: done -task: sandbox cancellation result gate -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: sandbox cancellation result gate +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03F.md b/docs/status/M13-03F.md index e7bbc2e4..e5065236 100644 --- a/docs/status/M13-03F.md +++ b/docs/status/M13-03F.md @@ -1,9 +1,9 @@ # M13-03F Status -status: done -task: sandbox resource disposal gate -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: sandbox resource disposal gate +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-03G.md b/docs/status/M13-03G.md index 1711cc57..bd16a903 100644 --- a/docs/status/M13-03G.md +++ b/docs/status/M13-03G.md @@ -1,9 +1,9 @@ # M13-03G Status -status: done -task: same-session sandbox recovery and audit continuity -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: same-session sandbox recovery and audit continuity +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04A.md b/docs/status/M13-04A.md index 6883ecc2..8dda9fe5 100644 --- a/docs/status/M13-04A.md +++ b/docs/status/M13-04A.md @@ -1,9 +1,9 @@ # M13-04A Status -status: done -task: server job one-shot directory -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: server job one-shot directory +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04B.md b/docs/status/M13-04B.md index c4703d7b..789f3abc 100644 --- a/docs/status/M13-04B.md +++ b/docs/status/M13-04B.md @@ -1,9 +1,9 @@ # M13-04B Status -status: done -task: server source read-only and output isolation -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: server source read-only and output isolation +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04C.md b/docs/status/M13-04C.md index 2b343f8a..9732a095 100644 --- a/docs/status/M13-04C.md +++ b/docs/status/M13-04C.md @@ -1,9 +1,9 @@ # M13-04C Status -status: done -task: server job resource budget gate -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: server job resource budget gate +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04F.md b/docs/status/M13-04F.md index 932d5661..ed551ce0 100644 --- a/docs/status/M13-04F.md +++ b/docs/status/M13-04F.md @@ -1,9 +1,9 @@ # M13-04F Status -status: done -task: bounded and redacted server stdout/stderr -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: bounded and redacted server stdout/stderr +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04G.md b/docs/status/M13-04G.md index 25acfa8f..edd9124d 100644 --- a/docs/status/M13-04G.md +++ b/docs/status/M13-04G.md @@ -1,9 +1,9 @@ # M13-04G Status -status: done -task: server process-tree cancellation -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: server process-tree cancellation +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04H.md b/docs/status/M13-04H.md index 58d82694..8c095f4b 100644 --- a/docs/status/M13-04H.md +++ b/docs/status/M13-04H.md @@ -1,9 +1,9 @@ # M13-04H Status -status: done -task: stable server process fault codes -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: stable server process fault codes +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04I.md b/docs/status/M13-04I.md index f32046b6..bf135e16 100644 --- a/docs/status/M13-04I.md +++ b/docs/status/M13-04I.md @@ -1,9 +1,9 @@ # M13-04I Status -status: done -task: server result hash binding and atomic OPFS handoff -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: server result hash binding and atomic OPFS handoff +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-04J.md b/docs/status/M13-04J.md index 0eee3a55..c3f669f8 100644 --- a/docs/status/M13-04J.md +++ b/docs/status/M13-04J.md @@ -1,9 +1,9 @@ # M13-04J Status -status: done -task: server request idempotency and conflict isolation -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: server request idempotency and conflict isolation +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-05A.md b/docs/status/M13-05A.md index 5688fb7d..1377c455 100644 --- a/docs/status/M13-05A.md +++ b/docs/status/M13-05A.md @@ -1,9 +1,9 @@ # M13-05A Status -status: done -task: CSP default-deny policy -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: CSP default-deny policy +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-05B.md b/docs/status/M13-05B.md index 77e16471..ca12cb93 100644 --- a/docs/status/M13-05B.md +++ b/docs/status/M13-05B.md @@ -1,9 +1,9 @@ # M13-05B Status -status: done -task: resource-specific CSP policy -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: resource-specific CSP policy +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-05C.md b/docs/status/M13-05C.md index c7ce0e35..d1b88b96 100644 --- a/docs/status/M13-05C.md +++ b/docs/status/M13-05C.md @@ -1,9 +1,9 @@ # M13-05C Status -status: done -task: production/build/test dependency inventories -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: production/build/test dependency inventories +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Evidence diff --git a/docs/status/M13-05D.md b/docs/status/M13-05D.md index f23dc8e4..ec2b844f 100644 --- a/docs/status/M13-05D.md +++ b/docs/status/M13-05D.md @@ -1,9 +1,9 @@ # M13-05D Status -status: done -task: dependency severity gates and exceptions -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: dependency severity gates and exceptions +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false The severity policy is machine-readable: BLOCKER/HIGH block, MEDIUM requires review and LOW is tracked. diff --git a/docs/status/M13-05E.md b/docs/status/M13-05E.md index 53bcf0e8..c178d757 100644 --- a/docs/status/M13-05E.md +++ b/docs/status/M13-05E.md @@ -1,9 +1,9 @@ # M13-05E Status -status: done -task: SBOM/license/source-offer and archive binding -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: SBOM/license/source-offer and archive binding +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false The supply-chain checker binds SPDX 2.3 to the lockfile and notices hashes, verifies the corresponding diff --git a/docs/status/M13-05F.md b/docs/status/M13-05F.md index 20baa3cb..ecc86bd3 100644 --- a/docs/status/M13-05F.md +++ b/docs/status/M13-05F.md @@ -1,9 +1,9 @@ # M13-05F Status -status: done -task: malicious input matrix -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: malicious input matrix +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false The production blend loader rejected five malformed blend cases. Existing production protocol tests diff --git a/docs/status/M13-05G.md b/docs/status/M13-05G.md index d5e866b9..3334e6cb 100644 --- a/docs/status/M13-05G.md +++ b/docs/status/M13-05G.md @@ -1,9 +1,9 @@ # M13-05G Status -status: done -task: fuzz crash minimization and regression capture -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: fuzz crash minimization and regression capture +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M13-05H.md b/docs/status/M13-05H.md index 42456120..5b1f921b 100644 --- a/docs/status/M13-05H.md +++ b/docs/status/M13-05H.md @@ -1,9 +1,9 @@ # M13-05H Status -status: done -task: script audit record integrity -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: script audit record integrity +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-01A.md b/docs/status/M14-01A.md index 6556707d..68a56a87 100644 --- a/docs/status/M14-01A.md +++ b/docs/status/M14-01A.md @@ -1,9 +1,9 @@ # M14-01A Status -status: done -task: Chromium, engine and archive identity freeze -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium, engine and archive identity freeze +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-01B.md b/docs/status/M14-01B.md index 60c6b0db..8c902a1e 100644 --- a/docs/status/M14-01B.md +++ b/docs/status/M14-01B.md @@ -1,9 +1,9 @@ # M14-01B Status -status: done -task: Firefox capability probe -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Firefox capability probe +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false Firefox `153.0` was probed against the rebuilt production assets with COOP/COEP isolation. WASM, Worker, diff --git a/docs/status/M14-01C.md b/docs/status/M14-01C.md index 5d5dd113..ba37c80c 100644 --- a/docs/status/M14-01C.md +++ b/docs/status/M14-01C.md @@ -1,9 +1,9 @@ # M14-01C Status -status: done -task: WebKit capability probe -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: WebKit capability probe +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false WebKit `26.5` was probed against the rebuilt production assets with COOP/COEP isolation. WASM, Worker, diff --git a/docs/status/M14-01D.md b/docs/status/M14-01D.md index 927dc36c..5a04de93 100644 --- a/docs/status/M14-01D.md +++ b/docs/status/M14-01D.md @@ -1,9 +1,9 @@ # M14-01D Status -status: done -task: probe identity and GPU/OS adapter recording -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: probe identity and GPU/OS adapter recording +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-01E.md b/docs/status/M14-01E.md index 28272356..d8bf84dc 100644 --- a/docs/status/M14-01E.md +++ b/docs/status/M14-01E.md @@ -1,9 +1,9 @@ # M14-01E Status -status: done -task: Chromium WebGPU fail-closed boundary -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium WebGPU fail-closed boundary +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-04A.md b/docs/status/M14-04A.md index 88836ffd..c8c597ae 100644 --- a/docs/status/M14-04A.md +++ b/docs/status/M14-04A.md @@ -1,9 +1,9 @@ # M14-04A Status -status: done -task: Chromium GPU/memory budget device tier selection -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium GPU/memory budget device tier selection +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-04B.md b/docs/status/M14-04B.md index 1cc1d6b4..21b44ab6 100644 --- a/docs/status/M14-04B.md +++ b/docs/status/M14-04B.md @@ -1,9 +1,9 @@ # M14-04B Status -status: done -task: Chromium DPR 1/1.5/2/3 canvas and raycast consistency -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium DPR 1/1.5/2/3 canvas and raycast consistency +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-04C.md b/docs/status/M14-04C.md index de878619..d08df8d4 100644 --- a/docs/status/M14-04C.md +++ b/docs/status/M14-04C.md @@ -1,9 +1,9 @@ # M14-04C Status -status: done -task: Chromium mouse/touch/pen pointer identity and cancellation contract -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium mouse/touch/pen pointer identity and cancellation contract +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-04D.md b/docs/status/M14-04D.md index 17617dad..841c05a0 100644 --- a/docs/status/M14-04D.md +++ b/docs/status/M14-04D.md @@ -1,9 +1,9 @@ # M14-04D Status -status: done -task: Chromium IME composition guard for incomplete operators -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium IME composition guard for incomplete operators +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-04E.md b/docs/status/M14-04E.md index 200e3a0d..81362238 100644 --- a/docs/status/M14-04E.md +++ b/docs/status/M14-04E.md @@ -1,9 +1,9 @@ # M14-04E Status -status: done -task: Chromium US/non-US/dead-key/modifier keymap fixture -updated: 2026-08-19 America/New_York -enablingTask: false +status: done +task: Chromium US/non-US/dead-key/modifier keymap fixture +updated: 2026-08-19 America/New_York +enablingTask: false parityStateChange: false ## Scope diff --git a/docs/status/M14-04F.md b/docs/status/M14-04F.md new file mode 100644 index 00000000..333ffdc7 --- /dev/null +++ b/docs/status/M14-04F.md @@ -0,0 +1,43 @@ +# M14-04F Status + +status: done +task: Chromium touch modal cancel, two-finger navigation and pen single commit +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +`InputModalState` is now consumed by both production viewport backends. Touch cancellation clears +the modal without a Main commit, the transition to two active touch pointers increments +`navigationRevision` once, and a pen pointerup increments `mainCommitCount` once. Late pen up/cancel +events do not create another commit. The state is exposed through bounded `data-input-modal-*` +diagnostic attributes for Chromium evidence. + +## Evidence + +- `npm --prefix web run build` passed. +- `npm --prefix web run test:chromium-input-modal` passed: 3 protocol tests plus real Chromium + main-thread and OffscreenCanvas scenarios. +- Checker output: `chromium-input-modal-ok backends=main,offscreen touchCancel=0 twoFingerRevision=1 penCommit=1 execution=DISABLED next=M14-04G`. +- `npm --prefix web run typecheck`, `npm --prefix web run lint` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `b5fbb86d4a6a610b4aa25f8edb9a232aca9675e25fb47b16de98858a2d7f007f` +- checker: `4f813623d9845b73c1a05aeccaf88d8d3b13d48e5fd83c83fa6222e13324e854` +- protocol: `271e4f9e86a6aa4ebe92a43f6ce3d9b42b0931a5d12d9b40a8b4c26b2808cb23` +- unit: `f8105ebb59f3a369b15282a3923bdc47249f7a727794d3a89c29c1523f1aa989` +- main viewport: `e8d97cb59fd4eca3789aeeb35221a70cf47ef048a5665383d809d0efc49f7119` +- offscreen viewport: `4a210ae247d0e29972096da6c206f3457c2238e6061c6eb622f0ce55c6bfd439` +- report: `dc8c386a705c4cd7335eb5f7ea0ec9d61feaae8b9529fdab423ab00898ecf911` +- manifest: `895b460477a8379594ee93043139b9521952638dbd6670b0205eab1896886455` + +## Next Task + +`M14-04G`: Chromium responsive layout no-overlap/no-overflow matrix. + +## Rollback + +Remove the input-modal reducer integration, viewport diagnostics, tests, checker, report, manifest, +package command and this status/task entry; restore `M14-04E` as the queue tail. diff --git a/docs/status/M14-04G.md b/docs/status/M14-04G.md new file mode 100644 index 00000000..8d1c2971 --- /dev/null +++ b/docs/status/M14-04G.md @@ -0,0 +1,43 @@ +# M14-04G Status + +status: done +task: Chromium responsive layout no-overlap/no-overflow matrix +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The Chromium layout gate now covers main-thread WebGL and OffscreenCanvas Worker viewports at +1440x900, 1280x720, 834x1112 and 390x844 with DPR 1 and 2. It checks root/body horizontal overflow, +layout-band containment, text overflow and app bounds. The mobile breakpoint moved to 900px so the +834px tablet layout hides the desktop menu before it can widen the document. + +## Evidence + +- `npm --prefix web run build` passed. +- `npm --prefix web run test:chromium-layout` passed: 16 real Chromium combinations (2 backends x + 2 DPR values x 4 viewports). +- Checker output: `chromium-layout-ok backends=main,offscreen viewports=4 dpr=1,2 results=16 execution=DISABLED next=M14-04H`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `895b460477a8379594ee93043139b9521952638dbd6670b0205eab1896886455` +- checker: `b211b703309e22810c39f85e4801bc5f0690fa682e33cdcb85157bd28ea042c0` +- app: `92d01daecf3f39bc4ac214e4b651ec6feb687bbfbf58c4d3e602a314cdcc664c` +- CSS: `5961164f29e25b461c03201534fe56e32020633cac6c0970e149a58ba9f6e9fc` +- main viewport: `e8d97cb59fd4eca3789aeeb35221a70cf47ef048a5665383d809d0efc49f7119` +- offscreen viewport: `4a210ae247d0e29972096da6c206f3457c2238e6061c6eb622f0ce55c6bfd439` +- reference e2e: `f5de57f570880f823224ebdcddb2be4d59ec414a32641effdaa68dc1f4102f28` +- report: `65b1050217e2343e656d56c4d7893d13f36b5f07008288ea194a101dafbaa0e2` +- manifest: `a5a80cedd824cc4aac27bd2cec39e11560d4cf3207ab947a1abe19c8bb9e053f` + +## Next Task + +`M14-04H`: Chromium keyboard-only, accessible names/roles and focus restoration. + +## Rollback + +Remove the 900px breakpoint change, layout checker, report, manifest, package command and this status/task +entry; restore `M14-04F` as the queue tail. diff --git a/docs/status/M14-04H.md b/docs/status/M14-04H.md new file mode 100644 index 00000000..5709d041 --- /dev/null +++ b/docs/status/M14-04H.md @@ -0,0 +1,40 @@ +# M14-04H Status + +status: done +task: Chromium keyboard-only, accessible names/roles and focus restoration +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The Chromium keyboard gate runs real main-thread and OffscreenCanvas pages. Tab reaches the File +menu, Enter opens it with menuitem focus, Escape restores the trigger, and F3 opens Operator Search +with Escape restoring its trigger. The checker also scans visible interactive elements for an +accessible name and records the count per backend. + +## Evidence + +- `npm --prefix web run build` passed. +- `npm --prefix web run test:chromium-accessibility` passed for both production backends. +- Checker output: `chromium-accessibility-ok backends=main,offscreen menuFocus=RESTORED operatorSearchFocus=RESTORED names=COMPLETE execution=DISABLED next=M15-01A`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `a5a80cedd824cc4aac27bd2cec39e11560d4cf3207ab947a1abe19c8bb9e053f` +- checker: `b39cdef61007e5ac1f2e7686ccdffd42f6b9723b2e93a7bd63e46800c4453ced` +- app: `5861988f3dfbb8c05d36aee3033a72514de53a0cb4ec6f3d832418ef6b5cc8b2` +- CSS: `5961164f29e25b461c03201534fe56e32020633cac6c0970e149a58ba9f6e9fc` +- reference e2e: `e74a53a1f9e9bfea73be8da1de486938d0dcc4718e7585b57bee27a5ce78a978` +- report: `508adab3c6ced83c95bcced36d610c20f2f2fd456637cb79568b4b824d66ead9` +- manifest: `2c4e4323250f3426f610babb42978ba36c48e471729b20b0ce8f3483eb6f899c` + +## Next Task + +`M15-01A`: generate a Blender 5.2 RNA data-block type inventory. + +## Rollback + +Remove the accessibility checker, accessible-name fix, report, manifest, package command and this +status/task entry; restore `M14-04G` as the queue tail. diff --git a/docs/status/M15-01A.md b/docs/status/M15-01A.md new file mode 100644 index 00000000..fbbc885f --- /dev/null +++ b/docs/status/M15-01A.md @@ -0,0 +1,38 @@ +# M15-01A Status + +status: done +task: Blender 5.2 RNA data-block type inventory +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The pinned Blender 5.2 runtime generated a deterministic RNA inventory from the registered subclasses +of `bpy.types.ID`. The inventory contains 29 unique sorted data-block types, stable parity IDs, the +RNA source anchor and the runtime binary identity. No V1 release or parity status axis changed. + +## Evidence + +- `npm --prefix web run test:blender-rna-inventory` passed after regenerating in a fresh temporary + directory with `build_blender_5.2.0/bin/blender`. +- Checker output: `blender-rna-datablock-inventory-ok count=29 blender=5.2.0 LTS inventory=98e6c2ebc9f62647b43fb06eff178bef02db06516f6ac87048ae81fcf2d8e792 next=M15-01B`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `2c4e4323250f3426f610babb42978ba36c48e471729b20b0ce8f3483eb6f899c` +- generator: `2e61a1a8a2e5347d3ee0f8efa5bad74e9823de6e7b0959f505e73c9d96e7037b` +- checker: `43b72286964fcfa1f6beebec786c4f96cf12d5d33c6227754e5b98e2dda668ab` +- inventory: `98e6c2ebc9f62647b43fb06eff178bef02db06516f6ac87048ae81fcf2d8e792` +- runtime binary: `d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82` +- manifest: `21f444610edae75b23a26ef9b94892f07fb056344fbd5e92e232c376454d76cd` + +## Next Task + +`M15-01B`: Blender 5.2 operator idname, poll context and property inventory. + +## Rollback + +Remove the RNA generator, checker, inventory, report, manifest, package command and this status/task +entry; restore `M14-04H` as the queue tail. diff --git a/docs/status/M15-01B.md b/docs/status/M15-01B.md new file mode 100644 index 00000000..2b9700e8 --- /dev/null +++ b/docs/status/M15-01B.md @@ -0,0 +1,40 @@ +# M15-01B Status + +status: done +task: Blender 5.2 operator idname/poll/property inventory +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The pinned Blender 5.2 runtime generated a deterministic inventory of all registered `bpy.ops` +operators. Each entry records the operator idname, RNA identifier, factory-startup poll result/error, +and sorted RNA property identifiers/types. This is a machine baseline only; it does not claim that +any operator is supported by the web editor. + +## Evidence + +- `npm --prefix web run test:blender-operator-inventory` passed after temporary regeneration. +- Checker output: `blender-operator-inventory-ok count=2486 registered=2486 pollUnknown=0 inventory=dabb774ea808f417a0085528ecc4538bc78f71d06f912a881a9453804597e49a next=M15-01C`. +- Poll distribution: 666 true, 1,820 false, 0 unknown. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `21f444610edae75b23a26ef9b94892f07fb056344fbd5e92e232c376454d76cd` +- generator: `5928c2df2074d7b530c173baffc4da2bb0bbb50817ab8b2cdb5f6d43e07b1727` +- checker: `dbf4b64c77750809060e6b3a8eaf87cfd67a904f33949ac631b661153b1f6cde` +- inventory: `dabb774ea808f417a0085528ecc4538bc78f71d06f912a881a9453804597e49a` +- report: `800102c010be59ec519d2e204aec4a97350fe7ba0f6729f52a8788f4a9bcde31` +- manifest: `54dec9d2e7a0eacf3b17a06168b0c9c73a1358d0545cbf70d8a8579a9ed6fde5` +- runtime binary: `d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82` + +## Next Task + +`M15-01C`: modifier, constraint, Shader Node, Geometry Node and Compositor Node inventory. + +## Rollback + +Remove the operator generator, checker, inventory, report, manifest, package command and this status +page together. Restore `M15-01A` as the queue tail without changing the data-block inventory. diff --git a/docs/status/M15-01C.md b/docs/status/M15-01C.md new file mode 100644 index 00000000..b15bdc76 --- /dev/null +++ b/docs/status/M15-01C.md @@ -0,0 +1,40 @@ +# M15-01C Status + +status: done +task: Blender 5.2 modifier, constraint and node inventory +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The pinned Blender 5.2 runtime generated deterministic inventories for the 83 modifier types, +29 constraint types, and 451 registered Shader, Geometry, and Compositor node types. Node entries +include RNA properties sorted by identifier. The inventory is a machine baseline only and does not +claim web parity for any family. + +## Evidence + +- `npm --prefix web run test:blender-family-inventory` passed after temporary regeneration. +- Checker output: `blender-family-inventory-ok modifiers=83 constraints=29 nodes=451 inventory=bb7bbbf64184f326cd17933960800d7d761db6dd3b5f829e322e5ccdb12b8845 next=M15-01D`. +- Node family distribution: Shader 99, Geometry 264, Compositor 88. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `54dec9d2e7a0eacf3b17a06168b0c9c73a1358d0545cbf70d8a8579a9ed6fde5` +- generator: `2630357cbe6ca7264499621399f1a010d6eb7af8c002283d9d16e65c23955eda` +- checker: `0cf9821bb0f6f691ee1eb5a96d77a78932eeb07565352e65a5ed68844f7c0108` +- inventory: `bb7bbbf64184f326cd17933960800d7d761db6dd3b5f829e322e5ccdb12b8845` +- report: `0ca03907f828feba02df396d3fb9f0cfab791a5be67bd8d768c175a49088bae1` +- manifest: `ae6acf4fa173803fcbd9b4c3cff0a561563e7ddb7abf6985844397d14c8f45dc` +- runtime binary: `d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82` + +## Next Task + +`M15-01D`: sequencer strip/effect, physics family, and import/export inventory. + +## Rollback + +Remove the family generator, checker, inventory, report, manifest, package command and this status +page together. Restore `M15-01B` as the queue tail without changing the operator inventory. diff --git a/docs/status/M15-01D.md b/docs/status/M15-01D.md new file mode 100644 index 00000000..4bc85fd9 --- /dev/null +++ b/docs/status/M15-01D.md @@ -0,0 +1,39 @@ +# M15-01D Status + +status: done +task: Blender 5.2 sequencer, physics and import/export inventory +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The pinned Blender 5.2 runtime generated deterministic inventories for 24 sequencer strip/effect +types, 65 registered physics RNA data types, and 33 import/export operators. Operator entries retain +poll state and sorted RNA properties. This is a machine baseline only; it does not claim web parity +for sequencer, physics, or file formats. + +## Evidence + +- `npm --prefix web run test:blender-format-inventory` passed after temporary regeneration. +- Checker output: `blender-format-inventory-ok strips=24 physics=65 io=33 inventory=d3892fc6126f2e477db8b7bcb2bc5ac7a77db1049f0165350ccc834d3a151394 next=M15-01E`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `ae6acf4fa173803fcbd9b4c3cff0a561563e7ddb7abf6985844397d14c8f45dc` +- generator: `618ceb016bf7ab4251d1c8575bd091ea96aecdd423c1d69eea1082b13a734804` +- checker: `3c22b24561a77058115e6ae1a58af7f0aaea782fab9416e2ce15221c4b91f8e4` +- inventory: `d3892fc6126f2e477db8b7bcb2bc5ac7a77db1049f0165350ccc834d3a151394` +- report: `e345452bda9fa1c054974a34895027c080cf055ced2f24330189edbf9c0d5a5d` +- manifest: `7e67b065ac9ed8522eac3c4aa185487c6af1892619864f3760bd4efa860ab278` +- runtime binary: `d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82` + +## Next Task + +`M15-01E`: editor, space, region, workspace and keymap inventory. + +## Rollback + +Remove the format generator, checker, inventory, report, manifest, package command and this status +page together. Restore `M15-01C` as the queue tail without changing the family inventory. diff --git a/docs/status/M15-01E.md b/docs/status/M15-01E.md new file mode 100644 index 00000000..a580c896 --- /dev/null +++ b/docs/status/M15-01E.md @@ -0,0 +1,39 @@ +# M15-01E Status + +status: done +task: Blender 5.2 editor, space, region, workspace and keymap inventory +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The pinned Blender 5.2 runtime generated deterministic editor inventories for 19 Area types, 17 +Region types, 19 Space types, 16 concrete Space RNA classes, and 13 Workspace modes. The initialized +factory keyconfig contributes 280 keymaps and 3,228 keymap items, including modal event items with +empty operator ids. This is a machine baseline only and does not claim editor or keymap parity. + +## Evidence + +- `npm --prefix web run test:blender-editor-inventory` passed after temporary regeneration. +- Checker output: `blender-editor-inventory-ok areas=19 regions=17 keymaps=280 items=3228 inventory=6293b5c5bc23c8a73fdde553a5173ac1da25a08c8158af5ec81f4b0f864a5064 next=M15-01F`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `7e67b065ac9ed8522eac3c4aa185487c6af1892619864f3760bd4efa860ab278` +- generator: `287c04d7d11068fc28c8aac3a70f12dc6a0631a894c88e4e8d28752e54214274` +- checker: `dd4fe1c82ed6f6d9eff9bb1abd017a1066ec7d95f76867d33a4e76112ed7b754` +- inventory: `6293b5c5bc23c8a73fdde553a5173ac1da25a08c8158af5ec81f4b0f864a5064` +- report: `cc88dd114f215100e28cefc9180e56204bd7694217047e5c6db1e79059966235` +- manifest: `c7e5e5d96c1c36072cbba9de6d30a3c99b03ef341fa376152d961896102e341b` +- runtime binary: `d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82` + +## Next Task + +`M15-01F`: same-level inventory for Main, Scene, Mesh, Depsgraph and existing V1 core slices. + +## Rollback + +Remove the editor generator, checker, inventory, report, manifest, package command and this status +page together. Restore `M15-01D` as the queue tail without changing the format inventory. diff --git a/docs/status/M15-01F.md b/docs/status/M15-01F.md new file mode 100644 index 00000000..929e44b1 --- /dev/null +++ b/docs/status/M15-01F.md @@ -0,0 +1,39 @@ +# M15-01F Status + +status: done +task: Blender 5.2 Main/Scene/Mesh/Depsgraph/core inventory +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The pinned Blender 5.2 runtime generated a same-level RNA inventory of 108 core classes: Main 39, +Scene 16, Mesh 30, Depsgraph 3, and the existing V1 core slice 20. Each class includes sorted RNA +property metadata. This is a machine inventory and explicitly does not map current web coverage to +full Blender parity. + +## Evidence + +- `npm --prefix web run test:blender-core-inventory` passed after temporary regeneration. +- Checker output: `blender-core-inventory-ok classes=108 main=39 scene=16 mesh=30 depsgraph=3 core=20 inventory=4810abd2f91e580da3f7be70f1583f5cf6b2ecc20a13f0ce09b7484c4393e643 next=M15-02A`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `c7e5e5d96c1c36072cbba9de6d30a3c99b03ef341fa376152d961896102e341b` +- generator: `64e6c3590b084ec8906e26f46cab1596211c197251e0c7a81de2f5edbc6dcd43` +- checker: `ca13efc97cd4709b103268be95f6fe9fa824f64a04f51ab678c78158c44979d7` +- inventory: `4810abd2f91e580da3f7be70f1583f5cf6b2ecc20a13f0ce09b7484c4393e643` +- report: `8752644f8956c747c8da14afcd04f73e0a5823713ba98ee08c21cf240ff1f140` +- manifest: `d49a6196cc5f35907e450b2c547be31962ae759a7db3c473586f9d8254f7878f` +- runtime binary: `d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82` + +## Next Task + +`M15-02A`: map each inventoried item to owner family, implementation class, tests and evidence. + +## Rollback + +Remove the core generator, checker, inventory, report, manifest, package command and this status page +together. Restore `M15-01E` as the queue tail without changing the editor inventory. diff --git a/docs/status/M15-02A.md b/docs/status/M15-02A.md new file mode 100644 index 00000000..79238e2f --- /dev/null +++ b/docs/status/M15-02A.md @@ -0,0 +1,37 @@ +# M15-02A Status + +status: done +task: Map inventory entries to owner, implementation class, tests and evidence +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +All 6,900 entries from M15-01A through M15-01F now have unique stable IDs and mappings to one of 20 +owner families, an `INVENTORY_BASELINE` implementation class, the source checker, and the source +manifest. Coverage remains `INVENTORIED_ONLY`; the map does not claim functional implementation. + +## Evidence + +- `npm --prefix web run test:blender-parity-map` passed deterministic regeneration and artifact checks. +- Checker output: `blender-parity-map-ok mapped=6900 families=20 map=f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c next=M15-02B`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `d49a6196cc5f35907e450b2c547be31962ae759a7db3c473586f9d8254f7878f` +- generator: `2430a0eaa408ebba2fe25a1e873989784f8c50fe6dccc6636a07a76e986eb4ca` +- checker: `b5f33d8535c0d72c53979f3a222b0004a48d265706adf5c1f9cad6907c80d092` +- map: `f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c` +- report: `650a1c37e459bbaf19f20fa7f2be57bcb2ea8dd6ed472726a9ff399d17109132` +- manifest: `9f9e954bd3f00fbc2b18802ed8c7cfce469de8cd0f6bc23e49fa2a89ecb0dcc4` + +## Next Task + +`M15-02B`: detect unmapped, duplicate, summary-only, proxy-only and route-only entries. + +## Rollback + +Remove the map generator, checker, map, report, manifest, package command and this status page. +Restore `M15-01F` as the queue tail without modifying source inventories. diff --git a/docs/status/M15-02B.md b/docs/status/M15-02B.md new file mode 100644 index 00000000..ee3a809e --- /dev/null +++ b/docs/status/M15-02B.md @@ -0,0 +1,37 @@ +# M15-02B Status + +status: done +task: Parity map gap classification audit +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +## Scope + +The map audit checked all 6,900 M15 inventory mappings for missing owner/implementation/test/evidence +bindings and duplicate IDs. It classified every `INVENTORY_BASELINE` entry as `summaryOnly`, while +unmapped, duplicate, proxy-only and route-only counts remain zero. No parity claim was promoted. + +## Evidence + +- `npm --prefix web run test:blender-gap-audit` passed deterministic regeneration and artifact checks. +- Checker output: `blender-gap-audit-ok inventoried=6900 gaps=6900 summaryOnly=6900 next=M15-02C`. +- `npm --prefix web run typecheck` and `git diff --check` passed. + +## Artifact Hashes + +- parent manifest: `9f9e954bd3f00fbc2b18802ed8c7cfce469de8cd0f6bc23e49fa2a89ecb0dcc4` +- generator: `f0f44767cd6e2ce8aab4eed391b7e11fe1ff566cd52b80632c02085af0ec0f35` +- checker: `ebab966ef3edfd5e093d742950352e5f05b7cf04d82ba817812d7afcedccfe98` +- audit: `e976ff40d2f3491a5a57ffcdd0d0c0f0586e57d06984e4a4aa05ba1b36800faa` +- report: `445fe3426a42579334707000e87eaff29bd895d888faf4fab30f1f4bb2666269` +- manifest: `987c780c60cfaa71a728c675ce2c88688b75cb910528c933f84c38fee1360565` + +## Next Task + +`M15-02C`: fail-closed audit for `LOCAL_EXACT` desktop/WASM same-fixture evidence. + +## Rollback + +Remove the gap audit generator, checker, audit, report, manifest, package command and this status +page. Restore `M15-02A` as the queue tail without modifying the parity map. diff --git a/docs/status/M15-02C.md b/docs/status/M15-02C.md new file mode 100644 index 00000000..24b7f303 --- /dev/null +++ b/docs/status/M15-02C.md @@ -0,0 +1,16 @@ +# M15-02C Status + +status: done +task: LOCAL_EXACT fail-closed evidence audit +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +`npm --prefix web run test:blender-local-exact-audit` passed: applicable 0, blocked 0, notApplicable +6,900. No inventory entry was promoted without desktop/WASM same-fixture evidence. + +Artifacts: audit `ab37f60ff9ea4ad99d0f6041de707d92010de81f22a1594dd6dfa4faf6c471cb`, report +`0e5ffaf4fa99e0e58f19fe21ae0d2c7fb465ab487fe84924cda06085a9c6f839`, manifest +`3ecd9906fc18ea695bbf8ffbfb9516a3e4f5b6dae204ca2afcb9a2c47dc6aa2a`. + +Next: `M15-02D`. diff --git a/docs/status/M15-02D.md b/docs/status/M15-02D.md new file mode 100644 index 00000000..acfdbd78 --- /dev/null +++ b/docs/status/M15-02D.md @@ -0,0 +1,16 @@ +# M15-02D Status + +status: done +task: LOCAL_EQUIVALENT fail-closed evidence audit +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +`npm --prefix web run test:blender-local-equivalent-audit` passed: applicable 0, blocked 0, notApplicable +6,900. No Main/save-reopen parity claim exists in the inventory-only map. + +Artifacts: audit `6ffe0a7f076720b120a7b6a3f9bed3b5d4afbba583388df6ac7fb94df64998a2`, report +`8864c360bcdb7c0a191e17ee209a42d762ab980c643e9fecc409d34453c05a9e`, manifest +`f9c2a530dc86563d3c5da71dd28ec6a8009a3549112226ee2cc68d8f49e3c8d0`. + +Next: `M15-02E`. diff --git a/docs/status/M15-02E.md b/docs/status/M15-02E.md new file mode 100644 index 00000000..c39179b8 --- /dev/null +++ b/docs/status/M15-02E.md @@ -0,0 +1,16 @@ +# M15-02E Status + +status: done +task: SERVER_EXACT fail-closed evidence audit +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +`npm --prefix web run test:blender-server-exact-audit` passed: applicable 0, blocked 0, notApplicable +6,900. No server job/cancel/isolation/result-binding claim exists in the inventory-only map. + +Artifacts: audit `2e77b526a90638160ba176bddb84d1028195a588f465475b3a5616854d90368e`, report +`0f641bdf72ad4c97882b0ece84384702f9b83fc23c5b7aca8b555d5fd5206c6c`, manifest +`95110d84f47865412d6d42f618c4bb2f05240bd456109bf72953cc0a888e1382`. + +Next: `M15-02F`. diff --git a/docs/status/M15-02F.md b/docs/status/M15-02F.md new file mode 100644 index 00000000..f5690a05 --- /dev/null +++ b/docs/status/M15-02F.md @@ -0,0 +1,16 @@ +# M15-02F Status + +status: done +task: Unknown-data preservation fail-closed audit +updated: 2026-08-19 America/New_York +enablingTask: false +parityStateChange: false + +`npm --prefix web run test:blender-unknown-data-audit` passed: applicable 0, blocked 0, notApplicable +6,900. No unknown-data save/reload preservation claim exists in the inventory-only map. + +Artifacts: audit `bec8d2444ceaeae3db9d35ce6621129c90df2f15bf950667be6e85b096a72e4f`, report +`e2733f49fa9bd755164519ca9dd46a99b1f41036b8ae4bdb0552487dcec4ab7a`, manifest +`ec3fa17832e5fe335b11bd6c12e873abfd4b19273d8e110de860f04b55e7a7e6`. + +Next: `M15-03A`. diff --git a/docs/status/M15-03A.md b/docs/status/M15-03A.md new file mode 100644 index 00000000..57ff1354 --- /dev/null +++ b/docs/status/M15-03A.md @@ -0,0 +1,17 @@ +# M15-03A Status + +status: done +task: One minimal nextTask per gap +updated: 2026-08-19 America/New_York + +Generated 6,900 unique tasks from the gap audit. The current plan has ten completed tasks, one active +pointer (`M16-GAP-00011`) and 6,889 pending tasks. Per-wave counts are M16 2,667, M17 29, M18 451, +M19 20, M20 89, M21 3,625, M22 19. +`npm --prefix web run test:blender-next-task-plan` passed; plan SHA-256 is +`7c4bf7e384da489d0989d6634576373d961b28f8f64f7dabc649daef198fb2a5`. + +为避免执行者加载 6.8 MiB 的 pretty JSON,已生成 `tests/golden/M15-03A/task-index.json` 和 +`task-catalog.jsonl`。索引绑定上述 plan SHA-256,catalog 每行只保留任务身份字段;上下文工具按 +offset 读取单条记录并由任务卡提供真实命令。索引校验:`node tools/web/check-task-index.mjs`。 + +Next: `M15-03B`. diff --git a/docs/status/M15-03B.md b/docs/status/M15-03B.md new file mode 100644 index 00000000..531c6dd7 --- /dev/null +++ b/docs/status/M15-03B.md @@ -0,0 +1,11 @@ +# M15-03B Status + +status: done +task: nextTask specification audit +updated: 2026-08-19 America/New_York + +All 6,900 tasks contain fixture, desktop command, Web command, comparator and exit criteria; missing +and malformed counts are zero. `npm --prefix web run test:blender-next-task-spec` passed. Report SHA-256: +`1ec2155f7bd4b35811d08dc2d66907f3bb3d2f917f69845cb6d3d3073f6a4417`. + +Next: `M15-03C`. diff --git a/docs/status/M15-03C.md b/docs/status/M15-03C.md new file mode 100644 index 00000000..a4dca48f --- /dev/null +++ b/docs/status/M15-03C.md @@ -0,0 +1,11 @@ +# M15-03C Status + +status: done +task: nextTask dependency graph +updated: 2026-08-19 America/New_York + +The graph has 6,900 nodes, one active task, zero missing dependencies and zero cycles. `npm +--prefix web run test:blender-task-graph` passed. Report SHA-256: +`1d00d33f9780a35110fd200503c4f5b27b7b0b32d076ee8e681465efb70c4c0a`. + +Next: `M15-03D`. diff --git a/docs/status/M15-03D.md b/docs/status/M15-03D.md new file mode 100644 index 00000000..81b7df30 --- /dev/null +++ b/docs/status/M15-03D.md @@ -0,0 +1,11 @@ +# M15-03D Status + +status: done +task: inventoried/completed/blocked/uninventoried statistics +updated: 2026-08-19 America/New_York + +Machine counts are inventoried=6,900, completed=10, blocked=0, uninventoried=0. `npm --prefix web run +test:blender-task-stats` passed. Report SHA-256: +`fbf3e68a8cb40a309d0ca931ab77dc30b8e743ce90e83ab93e8ec2f1013662cf`. + +Next: `M15-03E`. diff --git a/docs/status/M15-03E.md b/docs/status/M15-03E.md new file mode 100644 index 00000000..c4d2a2e8 --- /dev/null +++ b/docs/status/M15-03E.md @@ -0,0 +1,12 @@ +# M15-03E Status + +status: blocked +task: owner family zero-gap closure gate +updated: 2026-08-19 America/New_York + +The fail-closed closure gate reports `BLOCKED`: 20 owner families still have 6,890 remaining tasks. +It preserves the single active pointer `M16-GAP-00011` and does not infer completion from release or +inventory evidence. `npm --prefix web run test:blender-zero-gap-gate` passed the blocked-state contract. +Report SHA-256: `381ea77d9b884b1bdab58bb60df001a26287db80dd9380edb6ae4d64a0a3d969`. + +Next active task: `M16-GAP-00011`. diff --git a/docs/status/M16-GAP-00001.md b/docs/status/M16-GAP-00001.md new file mode 100644 index 00000000..0e4e4fa6 --- /dev/null +++ b/docs/status/M16-GAP-00001.md @@ -0,0 +1,16 @@ +# M16-GAP-00001 Status + +status: done +task: Action data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York +enablingTask: true +parityStateChange: true + +The generated Action fixture was read by Blender 5.2 desktop and the full-Main WASM. Both observed +`action:AnimatedObjectAction:object:AnimatedObject` with three location channels and two keyframes per +channel. Desktop and WASM save/reopen checks were exact; the active pointer advanced to `M16-GAP-00002`. + +Evidence: `npm --prefix web run test:generated-gap -- --task M16-GAP-00001` passed with +`desktop=exact saveReopen=exact`. + +Next task: `M16-GAP-00002` (Armature data-block). diff --git a/docs/status/M16-GAP-00002.md b/docs/status/M16-GAP-00002.md new file mode 100644 index 00000000..cea7000d --- /dev/null +++ b/docs/status/M16-GAP-00002.md @@ -0,0 +1,16 @@ +# M16-GAP-00002 Status + +status: done +task: Armature data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York +enablingTask: true +parityStateChange: true + +The generated Armature fixture was read by Blender 5.2 desktop and full-Main WASM. Both observed +`armature:RiggedArmature` with Root and Tip bones, Tip parented to Root, and mesh skin-weight linkage. +Desktop and WASM save/reopen checks were exact. The active pointer advanced to `M16-GAP-00003`. + +Evidence: `npm --prefix web run test:generated-gap -- --task M16-GAP-00002` passed with +`bones=2 desktop=exact saveReopen=exact`. + +Next task: `M16-GAP-00003` (Brush data-block). diff --git a/docs/status/M16-GAP-00003.md b/docs/status/M16-GAP-00003.md new file mode 100644 index 00000000..03d6dc3a --- /dev/null +++ b/docs/status/M16-GAP-00003.md @@ -0,0 +1,16 @@ +# M16-GAP-00003 Status + +status: done +task: Brush data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York +enablingTask: true +parityStateChange: true + +Added bounded `BrushIR` fields to the native Main reader and optional SceneIR parser field. A real +Blender 5.2 Brush fixture reports `WebGapBrush` size 42, alpha 0.65, hardness 0.8, spacing 17 and +jitter 0.2. Full-Main WASM and desktop match exactly, including save/reopen. + +Evidence: `npm --prefix web run test:generated-gap -- --task M16-GAP-00003` passed with +`brush=brush:WebGapBrush size=42 desktop=exact saveReopen=exact`. + +Next task: `M16-GAP-00004` (Camera data-block). diff --git a/docs/status/M16-GAP-00004.md b/docs/status/M16-GAP-00004.md new file mode 100644 index 00000000..0925a1b0 --- /dev/null +++ b/docs/status/M16-GAP-00004.md @@ -0,0 +1,10 @@ +# M16-GAP-00004 Status + +status: done +task: Camera data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +Blender desktop and full-Main WASM read the same `camera:WebGapCamera` fixture with perspective +projection, 52 mm lens, 0.1 near plane and 2500 far plane. Save/reopen was exact on both paths. + +Next task: `M16-GAP-00005` (Collection data-block). diff --git a/docs/status/M16-GAP-00005.md b/docs/status/M16-GAP-00005.md new file mode 100644 index 00000000..eb0200c0 --- /dev/null +++ b/docs/status/M16-GAP-00005.md @@ -0,0 +1,8 @@ +# M16-GAP-00005 Status + +status: done +task: Collection data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +Desktop and WASM read nested `WebGapCollection` -> `WebGapChild` hierarchy with the collection object +link intact. Save/reopen matched exactly. Next task: `M16-GAP-00006` (Curve data-block). diff --git a/docs/status/M16-GAP-00006.md b/docs/status/M16-GAP-00006.md new file mode 100644 index 00000000..34693baa --- /dev/null +++ b/docs/status/M16-GAP-00006.md @@ -0,0 +1,10 @@ +# M16-GAP-00006 Status + +status: done +task: Curve data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +Desktop and full-Main WASM read the same Bezier Curve fixture: one spline, three points, available +geometry and exact spline offsets. Save/reopen matched the complete non-mesh data record. + +Next task: `M16-GAP-00007` (Curves data-block). diff --git a/docs/status/M16-GAP-00007.md b/docs/status/M16-GAP-00007.md new file mode 100644 index 00000000..24adf11c --- /dev/null +++ b/docs/status/M16-GAP-00007.md @@ -0,0 +1,10 @@ +# M16-GAP-00007 Status + +status: done +task: Curves data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +Desktop and full-Main WASM read the converted Curves data-block with available geometry, four points +and at least one spline. Save/reopen matched the complete nonMeshData record. + +Next task: `M16-GAP-00008` (FreestyleLineStyle data-block). diff --git a/docs/status/M16-GAP-00008.md b/docs/status/M16-GAP-00008.md new file mode 100644 index 00000000..322f701d --- /dev/null +++ b/docs/status/M16-GAP-00008.md @@ -0,0 +1,11 @@ +# M16-GAP-00008 Status + +status: done +task: FreestyleLineStyle data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +Added bounded optional `lineStyles` SceneIR data with name, color, alpha, thickness, chaining/caps, +dashed state and modifier counts. Desktop and full-Main WASM matched the real style fixture and save/ +reopen was exact. This does not claim Freestyle stroke rendering parity. + +Next task: `M16-GAP-00009` (GreasePencil data-block). diff --git a/docs/status/M16-GAP-00009.md b/docs/status/M16-GAP-00009.md new file mode 100644 index 00000000..c33cc7a8 --- /dev/null +++ b/docs/status/M16-GAP-00009.md @@ -0,0 +1,10 @@ +# M16-GAP-00009 Status + +status: done +task: GreasePencil data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +Reused the existing real Grease Pencil Main fixture. Blender desktop and full-Main WASM both observed +GreasePencilData layers/frames, and save/reopen matched exactly. + +Next task: `M16-GAP-00010` (Lattice data-block). diff --git a/docs/status/M16-GAP-00010.md b/docs/status/M16-GAP-00010.md new file mode 100644 index 00000000..70ffdf76 --- /dev/null +++ b/docs/status/M16-GAP-00010.md @@ -0,0 +1,23 @@ +# M16-GAP-00010 Status + +status: done +task: Lattice data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Lattice data-block dimensions, interpolation, outside flag, vertex group, point deformation, weight and selection. + +evidence: + +- Desktop fixture generated by `tools/web/generated/M16-GAP-00010.py`; Blender 5.2 opened, saved to a fresh file, reopened in a new process and matched exactly. +- WASM/Main opened the same fixture, produced 3x2x2 / 12-point `lattice:WebGapLattice`, and matched the desktop point report exactly. +- WASM save/reopen snapshot matched the pre-save snapshot exactly. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00010` exited 0. +- `cmake --build build_web_blender6 --target web_engine -- -j2` exited 0 after `source tools/web/emscripten-env.sh`; generated runtime assets were installed and hash-bound. + +artifacts: `tests/golden/M16-GAP-00010/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop checker, Web checker, reader, protocol, WASM/JS runtime and both reports. + +knownRisk: This closes one `datablock:Lattice` slice only. Lattice edit operators, lattice modifier evaluation, shape keys, vertex-group weights and all other 6,890 generated gaps remain separate tasks and are not implied complete. + +rollback: remove this task's fixture, checker, reports, manifest and runtime/protocol changes; restore parent `M16-GAP-00009` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00011` diff --git a/docs/status/M16-GAP-00011.md b/docs/status/M16-GAP-00011.md new file mode 100644 index 00000000..d062e46c --- /dev/null +++ b/docs/status/M16-GAP-00011.md @@ -0,0 +1,25 @@ +# M16-GAP-00011 Status + +status: done +task: Library data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Library metadata for one linked, project-relative source: stable id/name/path, packed state, external-required status, dependency list and read-only contract. + +evidence: + +- `tools/web/generated/M16-GAP-00011.py` generated a real linked-Library fixture from `WebGapLibrary.blend`; the target reopens in Blender desktop. +- Desktop report matched one `library:WebGapLibrary.blend` with `sourcePath=//WebGapLibrary.blend`, unpacked external-required state, empty dependencies and read-only=true after save/reopen. +- WASM/Main opened the same target fixture and matched the desktop identity and path. WASM save/reopen matched the complete `libraries` snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00011.py -- tests/files/web/generated/M16-GAP-00011-datablock-Library.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00011` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00011` exited 0. + +artifacts: `tests/golden/M16-GAP-00011/manifest.json` contains SHA-256 for the parent manifest, target fixture, source library, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Library` metadata slice only. Library link/append/override operations, archive management, packing/unpacking and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, source library, checker, reports, manifest, status and context; restore `M16-GAP-00010` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00012` diff --git a/docs/status/M16-GAP-00012.md b/docs/status/M16-GAP-00012.md new file mode 100644 index 00000000..1f534a1c --- /dev/null +++ b/docs/status/M16-GAP-00012.md @@ -0,0 +1,25 @@ +# M16-GAP-00012 Status + +status: done +task: Light data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Area Light metadata: type, color, energy, exposure, temperature, temperature enablement, shadow flag, radius, area shape/size/spread and bounded default spot/sun fields. + +evidence: + +- `tools/web/generated/M16-GAP-00012.py` generated a single `WebGapLight` Area Light fixture with deterministic RNA values. +- Desktop report reopened the fixture after save and matched exactly, including Light type 4, rectangle shape 1, color `[0.25, 0.5, 0.75]`, energy 400, exposure 1, temperature 5000, area size 3x2 and spread 2.4. +- WASM/Main opened the same fixture and matched the desktop report within the bounded float tolerance. WASM save/reopen matched the full Light snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00012.py -- tests/files/web/generated/M16-GAP-00012-datablock-Light.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00012` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00012` exited 0. + +artifacts: `tests/golden/M16-GAP-00012/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Light` metadata slice only. Light editing commands, rendering behavior, linked/override lights and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, checker, reports, manifest, status and context; restore `M16-GAP-00011` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00013` diff --git a/docs/status/M16-GAP-00013.md b/docs/status/M16-GAP-00013.md new file mode 100644 index 00000000..c0a86b88 --- /dev/null +++ b/docs/status/M16-GAP-00013.md @@ -0,0 +1,25 @@ +# M16-GAP-00013 Status + +status: done +task: Material data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Principled Material metadata and minimal shader graph: PBR values, IOR/transmission/coat, emission, alpha, two-node topology, one link and graph hash. + +evidence: + +- `tools/web/generated/M16-GAP-00013.py` generated a retained `WebGapMaterial` on a minimal triangle Mesh, with Principled and Material Output nodes. +- Desktop report reopened after save and matched exactly: base color `[0.2, 0.4, 0.8, 0.9]`, roughness 0.6, metallic 0.35, IOR 1.6, transmission 0.27, coat 0.64/0.12, emission `[0.05, 0.1, 0.2, 1]` at strength 3.5, two nodes and one link. +- WASM/Main opened the same fixture, matched all bounded material fields and shader graph topology, and produced a stable 64-character graph hash. WASM save/reopen matched the full material snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00013.py -- tests/files/web/generated/M16-GAP-00013-datablock-Material.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00013` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00013` exited 0. + +artifacts: `tests/golden/M16-GAP-00013/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Material` reader slice only. Material authoring commands, texture evaluation, unsupported node behavior and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, checker, reports, manifest, status and context; restore `M16-GAP-00012` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00014` diff --git a/docs/status/M16-GAP-00014.md b/docs/status/M16-GAP-00014.md new file mode 100644 index 00000000..ee5085f4 --- /dev/null +++ b/docs/status/M16-GAP-00014.md @@ -0,0 +1,25 @@ +# M16-GAP-00014 Status + +status: done +task: Mesh data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Mesh geometry metadata for one quad: counts, triangulated indices, positions, UV layer identity and UV values. + +evidence: + +- `tools/web/generated/M16-GAP-00014.py` generated a retained `WebGapMesh` quad with four vertices, one face and one `WebGapUV` layer. +- Desktop report reopened after save and matched exactly: 4 vertices, 4 edges, 1 face, 4 corners, 2 triangles, deterministic positions/indices and UV values. +- WASM/Main opened the same fixture with `geometryStatus=available`, matched counts, positions, indices and UV layer, and save/reopen matched the complete mesh snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00014.py -- tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00014` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00014` exited 0. + +artifacts: `tests/golden/M16-GAP-00014/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Mesh` geometry-reader slice only. Mesh edit operators, modifiers, shape keys, skinning, paint attributes and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, checker, reports, manifest, status and context; restore `M16-GAP-00013` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00015` diff --git a/docs/status/M16-GAP-00015.md b/docs/status/M16-GAP-00015.md new file mode 100644 index 00000000..d81e4b75 --- /dev/null +++ b/docs/status/M16-GAP-00015.md @@ -0,0 +1,25 @@ +# M16-GAP-00015 Status + +status: done +task: MetaBall data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 MetaBall element metadata: point count, element positions, radii and anisotropic scale values. + +evidence: + +- `tools/web/generated/M16-GAP-00015.py` generated one `WebGapMetaBall` data-block with two deterministic elements and a linked object. +- Desktop report reopened after save and matched exactly: two elements at `[-0.65, 0, 0.4]` and `[0.65, 0, 0.4]`, radii 0.75/0.55 and scales 1.1/0.9/1.2 and 0.8/1.05/0.95. +- WASM/Main opened the same fixture with `geometryStatus=available`, matched both elements and pointCount, and save/reopen matched the full non-mesh snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00015.py -- tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00015` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00015` exited 0. + +artifacts: `tests/golden/M16-GAP-00015/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:MetaBall` metadata slice only. MetaBall editing/evaluation commands and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, checker, reports, manifest, status and context; restore `M16-GAP-00014` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00016` diff --git a/docs/status/M16-GAP-00016.md b/docs/status/M16-GAP-00016.md new file mode 100644 index 00000000..83ba6528 --- /dev/null +++ b/docs/status/M16-GAP-00016.md @@ -0,0 +1,25 @@ +# M16-GAP-00016 Status + +status: done +task: NodeTree data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 shader NodeTree observability through a retained Material: RGB -> Principled -> Material Output nodes, links and the reader's stable shader graph hash. + +evidence: + +- `tools/web/generated/M16-GAP-00016.py` generated `WebGapNodeTreeMaterial` with three nodes and two links, retained by a minimal triangle object. +- Desktop report reopened after save and matched exactly: ShaderNodeRGB, ShaderNodeBsdfPrincipled and ShaderNodeOutputMaterial with two deterministic links. +- WASM/Main opened the same fixture, exposed the graph through the material shader graph with three nodes, two links and a 64-character hash, and save/reopen matched the material graph exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00016.py -- tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00016` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00016` exited 0. + +artifacts: `tests/golden/M16-GAP-00016/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes the shader NodeTree reader slice exposed by Material. Geometry-node groups, compositor trees, node editing and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, checker, reports, manifest, status and context; restore `M16-GAP-00015` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00017` diff --git a/docs/status/M16-GAP-00017.md b/docs/status/M16-GAP-00017.md new file mode 100644 index 00000000..ff04ce8f --- /dev/null +++ b/docs/status/M16-GAP-00017.md @@ -0,0 +1,25 @@ +# M16-GAP-00017 Status + +status: done +task: Object data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Empty Object metadata: type, visibility/selectability, translation, Euler rotation, scale and parent relation. + +evidence: + +- `tools/web/generated/M16-GAP-00017.py` generated a data-free `WebGapObject` Empty with deterministic transform values. +- Desktop report reopened after save and matched exactly: EMPTY, visible/selectable, translation `[1.25, -2.5, 3.75]`, rotation `[0.2, -0.35, 0.5]`, scale `[1.5, 0.75, 2]`, no parent. +- WASM/Main opened the same fixture and matched the Object node fields; save/reopen matched the complete node snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00017.py -- tests/files/web/generated/M16-GAP-00017-datablock-Object.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00017` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00017` exited 0. + +artifacts: `tests/golden/M16-GAP-00017/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Object` metadata slice only. Object operators, parenting workflows, constraints, modifiers and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, checker, reports, manifest, status and context; restore `M16-GAP-00016` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00018` diff --git a/docs/status/M16-GAP-00018.md b/docs/status/M16-GAP-00018.md new file mode 100644 index 00000000..19481b1b --- /dev/null +++ b/docs/status/M16-GAP-00018.md @@ -0,0 +1,25 @@ +# M16-GAP-00018 Status + +status: done +task: ParticleSettings data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 ParticleSettings identity and bounded emission fields: type, source, distribution, physics, count, frame range, lifetime, particle size and draw size. + +evidence: + +- `tools/web/generated/M16-GAP-00018.py` generated a minimal retained `WebGapParticleSettings` data-block without a particle-system modifier, avoiding unrelated modifier state while preserving the exact RNA data. +- Desktop report reopened after save and matched exactly: emitter type, face source, JIT distribution, Newton physics, 128 particles, frames 4-96, lifetime 32, size 0.125 and draw size 0.25. +- The Blend reader now exports `ParticleSettings` blocks into SceneIR; WASM/Main opened the same fixture and matched every bounded field. Save/reopen matched the full ParticleSettings snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00018.py -- tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00018` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00018` exited 0. + +artifacts: `tests/golden/M16-GAP-00018/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/API/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:ParticleSettings` observability slice only. Particle-system modifiers, particle simulation, operators and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, generator, checker branch, reports, manifest, status and context; restore `M16-GAP-00017` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00019` diff --git a/docs/status/M16-GAP-00019.md b/docs/status/M16-GAP-00019.md new file mode 100644 index 00000000..cbcba526 --- /dev/null +++ b/docs/status/M16-GAP-00019.md @@ -0,0 +1,25 @@ +# M16-GAP-00019 Status + +status: done +task: PointCloud data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 PointCloud geometry with four deterministic points, position attributes and radii. + +evidence: + +- `tools/web/generated/M16-GAP-00019.py` generated a retained `WebGapPointCloud` through Blender's point-cloud conversion path with four deterministic points and radius values `[0.25, 0.5, 0.75, 1.0]`. +- Desktop report reopened after save and matched exactly: four points and all control-point/radius values. +- Existing PointCloud reader support exposed the same fixture in WASM/Main with `geometryStatus=available`; positions and radii matched desktop and save/reopen matched the full non-mesh snapshot exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00019.py -- tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00019` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00019` exited 0. + +artifacts: `tests/golden/M16-GAP-00019/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:PointCloud` geometry-reader slice only. PointCloud editing operators, attribute mutation and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, generator, checker branch, reports, manifest, status and context; restore `M16-GAP-00018` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00020` diff --git a/docs/status/M16-GAP-00020.md b/docs/status/M16-GAP-00020.md new file mode 100644 index 00000000..a226e880 --- /dev/null +++ b/docs/status/M16-GAP-00020.md @@ -0,0 +1,25 @@ +# M16-GAP-00020 Status + +status: done +task: Scene data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 Scene identity and bounded timeline/render/unit metadata: current/start/end frames, FPS, render engine and unit scale. + +evidence: + +- `tools/web/generated/M16-GAP-00020.py` generated `WebGapScene` with frame 48 in range 12-180, 30 FPS, Eevee render and metric unit scale 0.25. +- Desktop report reopened after save and matched exactly for scene identity, timeline, render engine and unit metadata. +- WASM/Main opened the same fixture, matched the Scene record and global frame/coordinate metadata, and save/reopen matched the complete scene and frame snapshots exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00020.py -- tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00020` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00020` exited 0. + +artifacts: `tests/golden/M16-GAP-00020/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Scene` metadata slice only. Scene sequencing, compositor, render execution and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, generator, checker branch, reports, manifest, status and context; restore `M16-GAP-00019` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00021` diff --git a/docs/status/M16-GAP-00021.md b/docs/status/M16-GAP-00021.md new file mode 100644 index 00000000..b50cb5f1 --- /dev/null +++ b/docs/status/M16-GAP-00021.md @@ -0,0 +1,25 @@ +# M16-GAP-00021 Status + +status: done +task: Screen data-block LOCAL_EXACT slice +updated: 2026-08-19 America/New_York + +scope: Blender 5.2 `bScreen` identity and bounded editor layout observability through the linked editor workflow: four areas, editor types and regions. + +evidence: + +- `tools/web/generated/M16-GAP-00021.py` renamed the factory startup screen to `WebGapScreen`, preserving its deterministic four-area layout. +- Desktop report reopened after save and matched exactly: `screen:WebGapScreen`, four areas, `VIEW_3D`, `OUTLINER`, `PROPERTIES`, `DOPESHEET_EDITOR`, and 18 regions. +- WASM/Main opened the same fixture with editor workflow available, matched the corresponding workspace area/editor set and save/reopen matched the complete workflow exactly. +- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00021.py -- tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00021` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00021` exited 0. + +artifacts: `tests/golden/M16-GAP-00021/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes one `datablock:Screen` layout-observability slice only. Editor operations, workspace mutation and all other generated gaps remain separate tasks. + +rollback: remove this task's fixture, generator, checker branch, reports, manifest, status and context; restore `M16-GAP-00020` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00022` diff --git a/docs/status/M16-GAP-00022.md b/docs/status/M16-GAP-00022.md new file mode 100644 index 00000000..ade31b76 --- /dev/null +++ b/docs/status/M16-GAP-00022.md @@ -0,0 +1,25 @@ +# M16-GAP-00022 Status + +status: done +task: Sound data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Blender 5.2 `bSound` identity and bounded sound resource fields through the same generated fixture in desktop and WASM/Main: source path, packing state, volume, pitch, channel count and sample rate. + +evidence: + +- `tools/web/generated/M16-GAP-00022.py` deterministically creates `sound:WebGapSound` from the repository WAV fixture and saves the Blend fixture. +- Desktop reopen report matches exactly: `sound:WebGapSound`, `//WebGapSound.wav`, unpacked, volume/pitch `0.0`, one audio channel and `8000` Hz. +- The reader matches Blender's DNA `bSound` type and emits the same `sounds` resource in Scene IR; protocol validation bounds the resource fields. +- WASM/Main opened the same fixture, matched every desktop sound field, saved and reopened with an identical snapshot, and rejected a truncated Blend without mutating the loaded Main. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00022.py -- tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00022` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00022` exited 0. + +artifacts: `tests/golden/M16-GAP-00022/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes only the `datablock:Sound` resource-observability slice. Audio playback, sequencer editing and other data-blocks remain separate tasks. + +rollback: remove this task's fixture, generator, desktop checker, checker branch, reader/protocol/runtime changes, reports, manifest, status and context; restore `M16-GAP-00021` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00023` diff --git a/docs/status/M16-GAP-00023.md b/docs/status/M16-GAP-00023.md new file mode 100644 index 00000000..6428dc04 --- /dev/null +++ b/docs/status/M16-GAP-00023.md @@ -0,0 +1,25 @@ +# M16-GAP-00023 Status + +status: done +task: Speaker data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Blender 5.2 `Speaker` identity and bounded speaker resource fields through the same generated fixture in desktop and WASM/Main: linked sound identity, volume limits, distance controls, attenuation, cone controls, volume and pitch. + +evidence: + +- `tools/web/generated/M16-GAP-00023.py` deterministically creates `speaker:WebGapSpeaker` linked to `sound:WebGapSpeakerSound` and saves the Blend fixture. +- Desktop reopen report matches exactly for the speaker identity, linked sound and all bounded fields. +- The reader exports Blender's `Speaker` structure as a `speakers` Scene IR resource, including the linked sound ID; protocol validation bounds the resource fields. +- WASM/Main opened the same fixture, matched every desktop speaker field, saved and reopened with an identical snapshot, and rejected a truncated Blend without mutating the loaded Main. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00023.py -- tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00023` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00023` exited 0. + +artifacts: `tests/golden/M16-GAP-00023/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes only the `datablock:Speaker` resource-observability slice. Audio playback, speaker operators and other data-blocks remain separate tasks. + +rollback: remove this task's fixture, generator, desktop checker, checker branch, reader/protocol/runtime changes, reports, manifest, status and context; restore `M16-GAP-00022` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00024` diff --git a/docs/status/M16-GAP-00024.md b/docs/status/M16-GAP-00024.md new file mode 100644 index 00000000..ac89eed1 --- /dev/null +++ b/docs/status/M16-GAP-00024.md @@ -0,0 +1,26 @@ +# M16-GAP-00024 Status + +status: done +task: Text data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Blender 5.2 `Text` identity and bounded internal text resource fields through the same generated fixture in desktop and WASM/Main: source content, SHA-256, UTF-8 byte length, line count, path, internal state, dirty state and module flag. + +evidence: + +- `tools/web/generated/M16-GAP-00024.py` deterministically creates `text:WebGapText` with two text lines and project-relative filepath. +- Desktop reopen report matches exactly: source hash `668dbf...15f82`, 39 UTF-8 bytes, three stored lines, `//WebGapText.txt`, and stable flags. +- The reader exports the bounded Text resource while preserving the existing blocked script-source inventory; protocol validation enforces source/hash/size/line budgets. +- WASM/Main opened the same fixture, matched every desktop Text field, saved and reopened with an identical snapshot, and rejected a truncated Blend without mutating the loaded Main. +- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00024.py -- tests/files/web/generated/M16-GAP-00024-datablock-Text.blend` exited 0. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00024` exited 0. +- `node tools/web/check-generated-gap.mjs --task M16-GAP-00024` exited 0. +- `npm --prefix web run typecheck` exited 0. + +artifacts: `tests/golden/M16-GAP-00024/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes only the `datablock:Text` resource-observability slice. Text editing UI, script execution and other data-blocks remain separate tasks. + +rollback: remove this task's fixture, generator, desktop checker, checker branch, reader/protocol/runtime changes, reports, manifest, status and context; restore `M16-GAP-00023` as the queue tail without editing its successful evidence. + +nextTask: `M16-GAP-00025` diff --git a/docs/status/M16-GAP-00025.md b/docs/status/M16-GAP-00025.md new file mode 100644 index 00000000..ac15488c --- /dev/null +++ b/docs/status/M16-GAP-00025.md @@ -0,0 +1,22 @@ +# M16-GAP-00025 Status + +status: done +task: Texture data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Blender 5.2 `Tex` identity and bounded procedural texture fields: type, noise scale/depth, intensity, contrast and saturation. + +evidence: + +- `tools/web/generated/M16-GAP-00025.py` deterministically creates `texture:WebGapTexture` as a CLOUDS texture. +- Desktop reopen report matches exactly; WASM/Main matched all fields, save/reopen was identical, and truncated Blend input was rejected without Main mutation. +- Reader exports `Tex` as `textures`; protocol validation bounds the resource fields. +- Generator, desktop checker, Web checker and Emscripten runtime validation all exited 0. + +artifacts: `tests/golden/M16-GAP-00025/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes only the procedural `datablock:Texture` resource slice. Texture node editing and image sampling remain separate tasks. + +rollback: remove this task's fixture, generator, checker, reader/protocol/runtime changes, reports, manifest, status and context; restore `M16-GAP-00024` as queue tail. + +nextTask: `M16-GAP-00026` diff --git a/docs/status/M16-GAP-00026.md b/docs/status/M16-GAP-00026.md new file mode 100644 index 00000000..3ca5f761 --- /dev/null +++ b/docs/status/M16-GAP-00026.md @@ -0,0 +1,22 @@ +# M16-GAP-00026 Status + +status: done +task: Volume data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Blender 5.2 `Volume` resource observability through bounded non-mesh Scene IR fields: source path, geometry status and volume display/render properties. + +evidence: + +- `tools/web/generated/M16-GAP-00026.py` deterministically creates `volume:WebGapVolume` with project-relative OpenVDB path, density `2.5`, nearest interpolation and step size `0.125`. +- Desktop and WASM reports match exactly; save/reopen is stable and malformed Blend input leaves Main unchanged. +- Existing Volume non-mesh reader path provides the bounded resource fields; no broader volume grid or rendering behavior was added. +- Generator, desktop checker and Web checker exited 0. + +artifacts: `tests/golden/M16-GAP-00026/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports. + +knownRisk: This closes only bounded `datablock:Volume` metadata. OpenVDB loading, grids and volume rendering remain separate tasks. + +rollback: remove this task's fixture, generator, checker, reports, manifest, status and context; restore `M16-GAP-00025` as queue tail. + +nextTask: `M16-GAP-00027` diff --git a/docs/status/M16-GAP-00027.md b/docs/status/M16-GAP-00027.md new file mode 100644 index 00000000..eee45543 --- /dev/null +++ b/docs/status/M16-GAP-00027.md @@ -0,0 +1,17 @@ +# M16-GAP-00027 Status + +status: done +task: WindowManager data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Headless `WindowManager` identity and bounded runtime state: manager identity/name, preset name, window count and interface lock state. + +evidence: + +- Desktop fixture and reopen report are exact: `window-manager:WinMan`, preset `New Preset`, one window, interface unlocked. +- WASM/Main exposes the same bounded `windowManager` resource, save/reopen is exact, and malformed Blend input leaves Main unchanged. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00027` exited 0. + +knownRisk: WindowManager operators, reports, keymaps and live window mutation remain outside this bounded headless slice. + +nextTask: `M16-GAP-00028` diff --git a/docs/status/M16-GAP-00028.md b/docs/status/M16-GAP-00028.md new file mode 100644 index 00000000..48df05af --- /dev/null +++ b/docs/status/M16-GAP-00028.md @@ -0,0 +1,17 @@ +# M16-GAP-00028 Status + +status: done +task: WorkSpace data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Workspace identity and bounded screen linkage count for `workspace:WebGapWorkspace`. + +evidence: + +- Desktop fixture renamed the Layout workspace to `WebGapWorkspace`; reopen is exact. +- WASM/Main exposes the same workspace resource and screen count, save/reopen is exact, and malformed Blend input leaves Main unchanged. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00028` exited 0. + +knownRisk: Full workspace editor mutation remains covered by the Screen/editor workflow slice; this task only closes Workspace identity and linkage count. + +nextTask: `M16-GAP-00029` diff --git a/docs/status/M16-GAP-00029.md b/docs/status/M16-GAP-00029.md new file mode 100644 index 00000000..a441e1c8 --- /dev/null +++ b/docs/status/M16-GAP-00029.md @@ -0,0 +1,17 @@ +# M16-GAP-00029 Status + +status: done +task: World data-block LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: World identity, background color and bounded mist settings for `world:WebGapWorld`. + +evidence: + +- Desktop fixture exposes `WebGapWorld` with the configured color and mist fields; save/reopen is exact. +- WASM/Main exposes the same world resource from the same fixture, save/reopen is exact, and malformed Blend input leaves Main unchanged. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00029` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00029` exited 0. + +knownRisk: Full world shader/editor mutation remains outside this bounded data-block identity slice. + +nextTask: `M16-GAP-00030` diff --git a/docs/status/M16-GAP-00030.md b/docs/status/M16-GAP-00030.md new file mode 100644 index 00000000..2d128267 --- /dev/null +++ b/docs/status/M16-GAP-00030.md @@ -0,0 +1,18 @@ +# M16-GAP-00030 Status + +status: done +task: ARMATURE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: ARMATURE modifier identity, target object, vertex group, deform flags, visibility modes and dependency linkage for `mesh:WebGapArmatureMesh`. + +evidence: + +- Desktop fixture exposes one ARMATURE modifier targeting `object:WebGapArmatureObject`; save/reopen is exact. +- WASM/Main exposes the same modifier stack from the same fixture, including `armatureObjectId`, `vertexGroup`, `deformFlags`, and dependency; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00030` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00030` exited 0. + +knownRisk: Full ARMATURE deformation evaluation and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00031` diff --git a/docs/status/M16-GAP-00031.md b/docs/status/M16-GAP-00031.md new file mode 100644 index 00000000..aab01d51 --- /dev/null +++ b/docs/status/M16-GAP-00031.md @@ -0,0 +1,18 @@ +# M16-GAP-00031 Status + +status: done +task: ARRAY modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: ARRAY modifier identity, fixed duplicate count, start/end cap targets and visibility modes for `mesh:WebGapArrayObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapArray` with count 4 and stable start/end cap targets; save/reopen is exact. +- WASM/Main exposes the same modifier parameters and dependency targets from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00031` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00031` exited 0. + +knownRisk: Full evaluated Array geometry and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00032` diff --git a/docs/status/M16-GAP-00032.md b/docs/status/M16-GAP-00032.md new file mode 100644 index 00000000..2123a1a8 --- /dev/null +++ b/docs/status/M16-GAP-00032.md @@ -0,0 +1,18 @@ +# M16-GAP-00032 Status + +status: done +task: BEVEL modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: BEVEL modifier identity, width, segments, profile and visibility modes for `mesh:WebGapBevelMesh`. + +evidence: + +- Desktop fixture exposes `WebGapBevel` with width 0.2, three segments and profile 0.35; save/reopen is exact. +- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00032` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00032` exited 0. + +knownRisk: Full evaluated Bevel geometry and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00033` diff --git a/docs/status/M16-GAP-00033.md b/docs/status/M16-GAP-00033.md new file mode 100644 index 00000000..62ff28d2 --- /dev/null +++ b/docs/status/M16-GAP-00033.md @@ -0,0 +1,18 @@ +# M16-GAP-00033 Status + +status: done +task: BOOLEAN modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: BOOLEAN modifier identity, Difference operation, Exact solver and cutter target linkage for `mesh:WebGapBooleanObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapBoolean` with Difference/Exact settings and stable cutter target; save/reopen is exact. +- WASM/Main exposes the same modifier parameters and target dependency from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00033` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00033` exited 0. + +knownRisk: Full evaluated Boolean geometry and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00034` diff --git a/docs/status/M16-GAP-00034.md b/docs/status/M16-GAP-00034.md new file mode 100644 index 00000000..1a3a8212 --- /dev/null +++ b/docs/status/M16-GAP-00034.md @@ -0,0 +1,18 @@ +# M16-GAP-00034 Status + +status: done +task: BUILD modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: BUILD modifier identity, frame start/length, randomization flags/seed and visibility modes for `mesh:WebGapBuildMesh`. + +evidence: + +- Desktop fixture exposes `WebGapBuild` with start 3, length 12 and stable seed; save/reopen is exact. +- Fixed reader field decoding for BUILD `randomize`/`seed` and rebuilt the Chromium WASM engine; WASM/Main exposes matching fields from the same fixture. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00034` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00034` exited 0. + +knownRisk: Full evaluated Build geometry and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00035` diff --git a/docs/status/M16-GAP-00035.md b/docs/status/M16-GAP-00035.md new file mode 100644 index 00000000..cd7c64a6 --- /dev/null +++ b/docs/status/M16-GAP-00035.md @@ -0,0 +1,18 @@ +# M16-GAP-00035 Status + +status: done +task: CAST modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: CAST modifier identity, factor, radius, cast mode flags and visibility modes for `mesh:WebGapCastMesh`. + +evidence: + +- Desktop fixture exposes `WebGapCast` with factor 0.65, radius 2.5 and stable cast flags; save/reopen is exact. +- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00035` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00035` exited 0. + +knownRisk: Full evaluated Cast geometry and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00036` diff --git a/docs/status/M16-GAP-00036.md b/docs/status/M16-GAP-00036.md new file mode 100644 index 00000000..51e9ee75 --- /dev/null +++ b/docs/status/M16-GAP-00036.md @@ -0,0 +1,18 @@ +# M16-GAP-00036 Status + +status: done +task: CLOTH modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: CLOTH modifier identity and visibility modes for `mesh:WebGapClothMesh`. + +evidence: + +- Desktop fixture exposes `WebGapCloth`; save/reopen is exact. +- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00036` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00036` exited 0. + +knownRisk: Full evaluated cloth simulation and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00037` diff --git a/docs/status/M16-GAP-00037.md b/docs/status/M16-GAP-00037.md new file mode 100644 index 00000000..8209317e --- /dev/null +++ b/docs/status/M16-GAP-00037.md @@ -0,0 +1,18 @@ +# M16-GAP-00037 Status + +status: done +task: COLLISION modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: COLLISION modifier identity and visibility modes for `mesh:WebGapCollisionMesh`. + +evidence: + +- Desktop fixture exposes `WebGapCollision`; save/reopen is exact. +- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00037` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00037` exited 0. + +knownRisk: Full evaluated collision simulation and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00038` diff --git a/docs/status/M16-GAP-00038.md b/docs/status/M16-GAP-00038.md new file mode 100644 index 00000000..7a300425 --- /dev/null +++ b/docs/status/M16-GAP-00038.md @@ -0,0 +1,18 @@ +# M16-GAP-00038 Status + +status: done +task: CORRECTIVE_SMOOTH modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: CORRECTIVE_SMOOTH modifier identity and visibility modes for `mesh:WebGapCorrectiveSmoothObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapCorrectiveSmooth`; save/reopen is exact. +- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00038` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00038` exited 0. + +knownRisk: Full evaluated corrective smoothing and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00039` diff --git a/docs/status/M16-GAP-00039.md b/docs/status/M16-GAP-00039.md new file mode 100644 index 00000000..9b4de8fc --- /dev/null +++ b/docs/status/M16-GAP-00039.md @@ -0,0 +1,18 @@ +# M16-GAP-00039 Status + +status: done +task: CURVE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: CURVE modifier identity and visibility modes for `mesh:WebGapCurveModifierObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapCurveModifier`; save/reopen is exact. +- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00039` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00039` exited 0. + +knownRisk: Full evaluated curve deformation and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00040` diff --git a/docs/status/M16-GAP-00040.md b/docs/status/M16-GAP-00040.md new file mode 100644 index 00000000..bf18d3b3 --- /dev/null +++ b/docs/status/M16-GAP-00040.md @@ -0,0 +1,18 @@ +# M16-GAP-00040 Status + +status: done +task: DATA_TRANSFER modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: DATA_TRANSFER modifier identity and visibility modes for `mesh:WebGapDataTransferObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapDataTransfer`; save/reopen is exact. +- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `npm --prefix web run test:generated-gap -- --task M16-GAP-00040` and `node tools/web/check-generated-gap.mjs --task M16-GAP-00040` exited 0. + +knownRisk: Full evaluated data transfer and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00041` diff --git a/docs/status/M16-GAP-00041.md b/docs/status/M16-GAP-00041.md new file mode 100644 index 00000000..eced6255 --- /dev/null +++ b/docs/status/M16-GAP-00041.md @@ -0,0 +1,18 @@ +# M16-GAP-00041 Status + +status: done +task: DECIMATE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: DECIMATE modifier metadata and collapse parameters for `mesh:WebGapDecimateObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapDecimate` with ratio 0.65, two iterations, collapse mode, and angle limit 0.4; save/reopen is exact. +- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `build_blender_5.2.0/bin/blender ... M16-GAP-00041.py`, `npm --prefix web run test:generated-gap -- --task M16-GAP-00041`, and `node tools/web/check-generated-gap.mjs --task M16-GAP-00041` exited 0. + +knownRisk: Full evaluated decimation geometry and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00042` diff --git a/docs/status/M16-GAP-00042.md b/docs/status/M16-GAP-00042.md new file mode 100644 index 00000000..149e8aa6 --- /dev/null +++ b/docs/status/M16-GAP-00042.md @@ -0,0 +1,18 @@ +# M16-GAP-00042 Status + +status: done +task: DISPLACE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: DISPLACE modifier direction, strength, level, space, and texture mapping for `mesh:WebGapDisplaceObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapDisplace` with Z direction, strength 0.75, mid-level 0.25, global space, and global texture mapping; save/reopen is exact. +- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `build_blender_5.2.0/bin/blender ... M16-GAP-00042.py`, `npm --prefix web run test:generated-gap -- --task M16-GAP-00042`, and `node tools/web/check-generated-gap.mjs --task M16-GAP-00042` exited 0. + +knownRisk: Full evaluated displacement texture sampling and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00043` diff --git a/docs/status/M16-GAP-00043.md b/docs/status/M16-GAP-00043.md new file mode 100644 index 00000000..1d702ade --- /dev/null +++ b/docs/status/M16-GAP-00043.md @@ -0,0 +1,18 @@ +# M16-GAP-00043 Status + +status: done +task: DYNAMIC_PAINT modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: DYNAMIC_PAINT modifier identity, type code, visibility, and blocked evaluation status for `mesh:WebGapDynamicPaintObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapDynamicPaint`; save/reopen is exact. +- WASM/Main exposes the same modifier with typeCode 40 and the expected blocked evaluation status from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `build_blender_5.2.0/bin/blender ... M16-GAP-00043.py`, `npm --prefix web run test:generated-gap -- --task M16-GAP-00043`, and `node tools/web/check-generated-gap.mjs --task M16-GAP-00043` exited 0. + +knownRisk: Dynamic paint simulation settings and evaluated surfaces remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00044` diff --git a/docs/status/M16-GAP-00044.md b/docs/status/M16-GAP-00044.md new file mode 100644 index 00000000..d7806b68 --- /dev/null +++ b/docs/status/M16-GAP-00044.md @@ -0,0 +1,18 @@ +# M16-GAP-00044 Status + +status: done +task: EDGE_SPLIT modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: EDGE_SPLIT modifier split angle and visibility for `mesh:WebGapEdgeSplitObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapEdgeSplit` with split angle 0.35; save/reopen is exact. +- WASM/Main exposes the same split angle and modifier stack from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `build_blender_5.2.0/bin/blender ... M16-GAP-00044.py`, `npm --prefix web run test:generated-gap -- --task M16-GAP-00044`, and `node tools/web/check-generated-gap.mjs --task M16-GAP-00044` exited 0. + +knownRisk: Full evaluated edge splitting and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00045` diff --git a/docs/status/M16-GAP-00045.md b/docs/status/M16-GAP-00045.md new file mode 100644 index 00000000..489f1a6e --- /dev/null +++ b/docs/status/M16-GAP-00045.md @@ -0,0 +1,18 @@ +# M16-GAP-00045 Status + +status: done +task: EXPLODE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: EXPLODE modifier identity, type code, visibility, and blocked evaluation status for `mesh:WebGapExplodeObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapExplode`; save/reopen is exact. +- WASM/Main exposes the same modifier with typeCode 21 and blocked evaluation status from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `build_blender_5.2.0/bin/blender ... M16-GAP-00045.py`, `npm --prefix web run test:generated-gap -- --task M16-GAP-00045`, and `node tools/web/check-generated-gap.mjs --task M16-GAP-00045` exited 0. + +knownRisk: Full explode simulation and editor mutation remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00046` diff --git a/docs/status/M16-GAP-00046.md b/docs/status/M16-GAP-00046.md new file mode 100644 index 00000000..9b3effda --- /dev/null +++ b/docs/status/M16-GAP-00046.md @@ -0,0 +1,18 @@ +# M16-GAP-00046 Status + +status: done +task: FLUID modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: FLUID modifier identity, type code, visibility, and blocked evaluation status for `mesh:WebGapFluidObjectMesh`. + +evidence: + +- Desktop fixture exposes `WebGapFluid`; save/reopen is exact. +- WASM/Main exposes the same modifier with typeCode 56 and blocked evaluation status from the same fixture; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- `build_blender_5.2.0/bin/blender ... M16-GAP-00046.py`, `npm --prefix web run test:generated-gap -- --task M16-GAP-00046`, and `node tools/web/check-generated-gap.mjs --task M16-GAP-00046` exited 0. + +knownRisk: Full fluid simulation settings and evaluated volumes remain outside this metadata/local-exact modifier slice. + +nextTask: `M16-GAP-00047` diff --git a/docs/status/M16-GAP-00047.md b/docs/status/M16-GAP-00047.md new file mode 100644 index 00000000..0486aab7 --- /dev/null +++ b/docs/status/M16-GAP-00047.md @@ -0,0 +1,18 @@ +# M16-GAP-00047 Status + +status: done +task: GREASE_PENCIL_ARMATURE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil object modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Armature` on `GreasePencilObject`; save/reopen is exact. +- WASM/Main now exposes non-Mesh object modifier stacks on scene nodes, including `GREASE_PENCIL_ARMATURE` typeCode 79; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Rebuilt `web_engine.wasm` from the reader change; generator, npm comparator, and direct comparator all exited 0. + +knownRisk: Grease Pencil armature deformation evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00048` diff --git a/docs/status/M16-GAP-00048.md b/docs/status/M16-GAP-00048.md new file mode 100644 index 00000000..26ce7e5b --- /dev/null +++ b/docs/status/M16-GAP-00048.md @@ -0,0 +1,18 @@ +# M16-GAP-00048 Status + +status: done +task: GREASE_PENCIL_ARRAY modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil ARRAY modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Array`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_ARRAY` typeCode 75 on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil array evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00049` diff --git a/docs/status/M16-GAP-00049.md b/docs/status/M16-GAP-00049.md new file mode 100644 index 00000000..12bc70dd --- /dev/null +++ b/docs/status/M16-GAP-00049.md @@ -0,0 +1,18 @@ +# M16-GAP-00049 Status + +status: done +task: GREASE_PENCIL_BUILD modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil BUILD modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Build`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_BUILD` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil build evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00050` diff --git a/docs/status/M16-GAP-00050.md b/docs/status/M16-GAP-00050.md new file mode 100644 index 00000000..88031944 --- /dev/null +++ b/docs/status/M16-GAP-00050.md @@ -0,0 +1,18 @@ +# M16-GAP-00050 Status + +status: done +task: GREASE_PENCIL_COLOR modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil COLOR modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Color`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_COLOR` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil color evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00051` diff --git a/docs/status/M16-GAP-00051.md b/docs/status/M16-GAP-00051.md new file mode 100644 index 00000000..b4ea0e29 --- /dev/null +++ b/docs/status/M16-GAP-00051.md @@ -0,0 +1,18 @@ +# M16-GAP-00051 Status + +status: done +task: GREASE_PENCIL_DASH modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil DASH modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Dash`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_DASH` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil dash evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00052` diff --git a/docs/status/M16-GAP-00052.md b/docs/status/M16-GAP-00052.md new file mode 100644 index 00000000..10576422 --- /dev/null +++ b/docs/status/M16-GAP-00052.md @@ -0,0 +1,18 @@ +# M16-GAP-00052 Status + +status: done +task: GREASE_PENCIL_ENVELOPE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil ENVELOPE modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Envelope`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_ENVELOPE` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil envelope evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00053` diff --git a/docs/status/M16-GAP-00053.md b/docs/status/M16-GAP-00053.md new file mode 100644 index 00000000..11263e3d --- /dev/null +++ b/docs/status/M16-GAP-00053.md @@ -0,0 +1,18 @@ +# M16-GAP-00053 Status + +status: done +task: GREASE_PENCIL_HOOK modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil HOOK modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Hook`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_HOOK` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil hook evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00054` diff --git a/docs/status/M16-GAP-00054.md b/docs/status/M16-GAP-00054.md new file mode 100644 index 00000000..c4fca944 --- /dev/null +++ b/docs/status/M16-GAP-00054.md @@ -0,0 +1,18 @@ +# M16-GAP-00054 Status + +status: done +task: GREASE_PENCIL_LATTICE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil LATTICE modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Lattice`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_LATTICE` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil lattice evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00055` diff --git a/docs/status/M16-GAP-00055.md b/docs/status/M16-GAP-00055.md new file mode 100644 index 00000000..a31e8e1f --- /dev/null +++ b/docs/status/M16-GAP-00055.md @@ -0,0 +1,18 @@ +# M16-GAP-00055 Status + +status: done +task: GREASE_PENCIL_LENGTH modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil LENGTH modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Length`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_LENGTH` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil length evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00056` diff --git a/docs/status/M16-GAP-00056.md b/docs/status/M16-GAP-00056.md new file mode 100644 index 00000000..e28dfa0b --- /dev/null +++ b/docs/status/M16-GAP-00056.md @@ -0,0 +1,18 @@ +# M16-GAP-00056 Status + +status: done +task: GREASE_PENCIL_MIRROR modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil MIRROR modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Mirror`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_MIRROR` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil mirror evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00057` diff --git a/docs/status/M16-GAP-00057.md b/docs/status/M16-GAP-00057.md new file mode 100644 index 00000000..d2204ddf --- /dev/null +++ b/docs/status/M16-GAP-00057.md @@ -0,0 +1,18 @@ +# M16-GAP-00057 Status + +status: done +task: GREASE_PENCIL_MULTIPLY modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil MULTIPLY modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Multiply`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_MULTIPLY` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil multiply evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00058` diff --git a/docs/status/M16-GAP-00058.md b/docs/status/M16-GAP-00058.md new file mode 100644 index 00000000..cde2fe64 --- /dev/null +++ b/docs/status/M16-GAP-00058.md @@ -0,0 +1,18 @@ +# M16-GAP-00058 Status + +status: done +task: GREASE_PENCIL_NOISE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil NOISE modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Noise`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_NOISE` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil noise evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00059` diff --git a/docs/status/M16-GAP-00059.md b/docs/status/M16-GAP-00059.md new file mode 100644 index 00000000..8bd3a4f0 --- /dev/null +++ b/docs/status/M16-GAP-00059.md @@ -0,0 +1,18 @@ +# M16-GAP-00059 Status + +status: done +task: GREASE_PENCIL_OFFSET modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil OFFSET modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Offset`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_OFFSET` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil offset evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00060` diff --git a/docs/status/M16-GAP-00060.md b/docs/status/M16-GAP-00060.md new file mode 100644 index 00000000..ba5bf136 --- /dev/null +++ b/docs/status/M16-GAP-00060.md @@ -0,0 +1,18 @@ +# M16-GAP-00060 Status + +status: done +task: GREASE_PENCIL_OPACITY modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil OPACITY modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Opacity`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_OPACITY` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil opacity evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00061` diff --git a/docs/status/M16-GAP-00061.md b/docs/status/M16-GAP-00061.md new file mode 100644 index 00000000..cdd2840e --- /dev/null +++ b/docs/status/M16-GAP-00061.md @@ -0,0 +1,18 @@ +# M16-GAP-00061 Status + +status: done +task: GREASE_PENCIL_OUTLINE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil OUTLINE modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Outline`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_OUTLINE` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil outline evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00062` diff --git a/docs/status/M16-GAP-00062.md b/docs/status/M16-GAP-00062.md new file mode 100644 index 00000000..ccb08700 --- /dev/null +++ b/docs/status/M16-GAP-00062.md @@ -0,0 +1,18 @@ +# M16-GAP-00062 Status + +status: done +task: GREASE_PENCIL_SHRINKWRAP modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil SHRINKWRAP modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Shrinkwrap`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_SHRINKWRAP` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil shrinkwrap evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00063` diff --git a/docs/status/M16-GAP-00063.md b/docs/status/M16-GAP-00063.md new file mode 100644 index 00000000..ee30e97e --- /dev/null +++ b/docs/status/M16-GAP-00063.md @@ -0,0 +1,18 @@ +# M16-GAP-00063 Status + +status: done +task: GREASE_PENCIL_SIMPLIFY modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil SIMPLIFY modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Simplify`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_SIMPLIFY` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil simplify evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00064` diff --git a/docs/status/M16-GAP-00064.md b/docs/status/M16-GAP-00064.md new file mode 100644 index 00000000..186bb76c --- /dev/null +++ b/docs/status/M16-GAP-00064.md @@ -0,0 +1,18 @@ +# M16-GAP-00064 Status + +status: done +task: GREASE_PENCIL_SMOOTH modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil SMOOTH modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Smooth`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_SMOOTH` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil smooth evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00065` diff --git a/docs/status/M16-GAP-00065.md b/docs/status/M16-GAP-00065.md new file mode 100644 index 00000000..4baf2c4b --- /dev/null +++ b/docs/status/M16-GAP-00065.md @@ -0,0 +1,18 @@ +# M16-GAP-00065 Status + +status: done +task: GREASE_PENCIL_SUBDIV modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil SUBDIV modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Subdiv`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_SUBDIV` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil subdivision evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00066` diff --git a/docs/status/M16-GAP-00066.md b/docs/status/M16-GAP-00066.md new file mode 100644 index 00000000..c845c990 --- /dev/null +++ b/docs/status/M16-GAP-00066.md @@ -0,0 +1,18 @@ +# M16-GAP-00066 Status + +status: done +task: GREASE_PENCIL_TEXTURE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil TEXTURE modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Texture`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_TEXTURE` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil texture evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00067` diff --git a/docs/status/M16-GAP-00067.md b/docs/status/M16-GAP-00067.md new file mode 100644 index 00000000..891717fe --- /dev/null +++ b/docs/status/M16-GAP-00067.md @@ -0,0 +1,18 @@ +# M16-GAP-00067 Status + +status: done +task: GREASE_PENCIL_THICKNESS modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil THICKNESS modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Thickness`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_THICKNESS` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil thickness evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00068` diff --git a/docs/status/M16-GAP-00068.md b/docs/status/M16-GAP-00068.md new file mode 100644 index 00000000..b76a7b8d --- /dev/null +++ b/docs/status/M16-GAP-00068.md @@ -0,0 +1,18 @@ +# M16-GAP-00068 Status + +status: done +task: GREASE_PENCIL_TIME modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil TIME modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Time`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_TIME` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil time evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00069` diff --git a/docs/status/M16-GAP-00069.md b/docs/status/M16-GAP-00069.md new file mode 100644 index 00000000..9441314e --- /dev/null +++ b/docs/status/M16-GAP-00069.md @@ -0,0 +1,18 @@ +# M16-GAP-00069 Status + +status: done +task: GREASE_PENCIL_TINT modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil TINT modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Tint`; save/reopen is exact. +- WASM/Main exposes `GREASE_PENCIL_TINT` on the object scene node; save/reopen is exact. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Grease Pencil tint evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00070` diff --git a/docs/status/M16-GAP-00070.md b/docs/status/M16-GAP-00070.md new file mode 100644 index 00000000..a2a2db86 --- /dev/null +++ b/docs/status/M16-GAP-00070.md @@ -0,0 +1,18 @@ +# M16-GAP-00070 Status + +status: done +task: GREASE_PENCIL_VERTEX_WEIGHT_ANGLE modifier LOCAL_EXACT slice +updated: 2026-08-20 America/New_York + +scope: Grease Pencil VERTEX_WEIGHT_ANGLE modifier stack exposure for `object:GreasePencilObject`. + +evidence: + +- Desktop fixture exposes `Gp Vertex Weight Angle`; save/reopen is exact. +- Corrected the reader's Blender 5.2 type-name mapping and rebuilt WASM; WASM/Main exposes `GREASE_PENCIL_VERTEX_WEIGHT_ANGLE` on the object scene node. +- Malformed Blend input is rejected without mutating Main. +- Generator, npm comparator, and direct comparator exited 0. + +knownRisk: Vertex-weight angle deformation evaluation remains blocked; this slice covers metadata and object-stack transport only. + +nextTask: `M16-GAP-00071` diff --git a/docs/status/W-060.md b/docs/status/W-060.md index 2c0c8c4a..0d0b0aaf 100644 --- a/docs/status/W-060.md +++ b/docs/status/W-060.md @@ -1,6 +1,6 @@ # W-060 Status -status: done_current_scope +status: done_current_scope task: 对象模式命令 The first native command registry slice is implemented end to end. The Worker diff --git a/docs/status/W-073.md b/docs/status/W-073.md index 8d797c3e..8f546a1e 100644 --- a/docs/status/W-073.md +++ b/docs/status/W-073.md @@ -1,6 +1,6 @@ # W-073 Status -status: in_progress +status: in_progress task: 定义 Blender 三角面简化和 LOD 协议 `web/protocol/simplify.ts` now defines versioned `SimplifyProfile`, diff --git a/docs/status/W-074.md b/docs/status/W-074.md index c4d6777a..b6913a6a 100644 --- a/docs/status/W-074.md +++ b/docs/status/W-074.md @@ -1,6 +1,6 @@ # W-074 Status -status: in_progress +status: in_progress task: 编译并复用 Blender Decimate 实现 `web_engine_decimate.cpp` now wraps Blender's native BMesh decimate entry points diff --git a/docs/status/W-075.md b/docs/status/W-075.md index 43db678b..f505d4d1 100644 --- a/docs/status/W-075.md +++ b/docs/status/W-075.md @@ -1,6 +1,6 @@ # W-075 Status -status: in_progress +status: in_progress task: 实现三种模式和修改器堆栈求值 The React Properties editor now exposes a Blender-style Decimate inspector for diff --git a/docs/status/W-076.md b/docs/status/W-076.md index acd75759..9122211f 100644 --- a/docs/status/W-076.md +++ b/docs/status/W-076.md @@ -1,6 +1,6 @@ # W-076 Status -status: in_progress +status: in_progress task: 属性、UV 和蒙皮安全简化 `SimplifyProfile` now requires an explicit attribute policy after parsing and diff --git a/docs/status/W-077.md b/docs/status/W-077.md index 7dd751bc..8da6161e 100644 --- a/docs/status/W-077.md +++ b/docs/status/W-077.md @@ -1,6 +1,6 @@ # W-077 Status -status: in_progress +status: in_progress task: 多级 LOD 生成、缓存和视口选择 The cache boundary is now implemented without changing the native WASM ABI: diff --git a/docs/status/W-078.md b/docs/status/W-078.md index a1e49ba0..4be7c0a1 100644 --- a/docs/status/W-078.md +++ b/docs/status/W-078.md @@ -1,6 +1,6 @@ # W-078 Status -status: in_progress +status: in_progress task: 轻量化预算和导出策略 `protocol/budget.ts` now validates explicit integer budgets for triangles, diff --git a/docs/status/W-079.md b/docs/status/W-079.md index f371f882..b0434a29 100644 --- a/docs/status/W-079.md +++ b/docs/status/W-079.md @@ -1,6 +1,6 @@ # W-079 Status -status: in_progress +status: in_progress task: 三角面简化和轻量化里程碑 The Blender golden fixture is checked by diff --git a/docs/tasks/M14-04F.md b/docs/tasks/M14-04F.md index c6f29239..f51a229a 100644 --- a/docs/tasks/M14-04F.md +++ b/docs/tasks/M14-04F.md @@ -2,7 +2,7 @@ - `task`: `M14-04F` - `parent`: `M14-04E` -- `status`: `in_progress` +- `status`: `done` ## 目标 @@ -31,8 +31,8 @@ Firefox/WebKit 不在本项目范围内。 等价生产诊断,而不是仅记录派发了几个 `PointerEvent`。 7. **交接门**:focused 命令、必要的 typecheck/build、report、manifest、status 和回滚路径齐全。 -协议单测和事件派发通过,只能关闭前四个门的一部分;在生产接线和真实状态断言完成前,任务保持 -`in_progress`,不得根据报告中的固定保证字段直接改为 `done`。 +协议状态已接入主线程 WebGL 和 OffscreenCanvas Worker 两条生产 viewport 路径;Chromium checker +读取两个 canvas 的真实 `data-input-modal-*` 状态,重复 `pointerup`/`pointercancel` 不增加提交计数。 ## 验收 diff --git a/docs/tasks/M14-04G.md b/docs/tasks/M14-04G.md new file mode 100644 index 00000000..324e32ad --- /dev/null +++ b/docs/tasks/M14-04G.md @@ -0,0 +1,60 @@ +# M14-04G:Chromium responsive layout no-overlap/no-overflow matrix + +- `task`: `M14-04G` +- `parent`: `M14-04F` +- `status`: `done` + +## 目标 + +在 Chromium 主线程 WebGL 和 OffscreenCanvas Worker 两种生产视口下,验证桌面、平板和手机 +尺寸不会产生横向溢出、关键区域重叠、文字裁切或不可操作的触控目标;布局失败必须能被 +机器 checker 稳定报告。Firefox/WebKit 不在本项目范围内。 + +## 输入 + +- 上一个 manifest:`tests/golden/M14-04F/manifest.json` +- 生产布局入口:`web/app/src/app/App.tsx`、`web/app/src/app/app-shell.css` +- 视口入口:`web/app/src/three-adapter/viewport.ts`、`web/app/src/three-adapter/offscreen-viewport.ts` +- 既有 e2e 参考:`web/tests/e2e/responsive-layout.spec.ts` + +## 范围 + +做: + +- 固定 `1440x900`、`1280x720`、`834x1112`、`390x844` 四个 Chromium viewport。 +- 分别验证 `offscreen=0` 和 `offscreen=1`,记录实际 renderer backend。 +- 检查 document 横向滚动、topbar、sidebar、viewport、timeline、status bar 的 bounding box。 +- 检查长项目名、错误提示、打开进度、面板展开和 DPR 2 下文字与按钮仍在容器内。 +- 记录失败元素、测量值、viewport、DPR、backend 和报告 hash。 + +不做: + +- Firefox/WebKit 兼容性证据。 +- 完整 UI 重设计或新增 Blender 功能。 +- 只用截图非空作为布局通过条件。 + +## 验收 + +```text +npm --prefix web run test:chromium-layout +``` + +必要的补充门: + +```text +npm --prefix web run typecheck +npm --prefix web run build +git diff --check +``` + +## 产物和交接 + +- 报告:`tests/golden/M14-04G/chromium-layout-report.json` +- manifest:`tests/golden/M14-04G/manifest.json` +- 状态页:`docs/status/M14-04G.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除布局 checker、测试、报告、manifest、package 命令和本任务状态页;恢复 `M14-04F` 作为队列尾, +不得修改 M14-04F 的成功证据。 diff --git a/docs/tasks/M14-04H.md b/docs/tasks/M14-04H.md new file mode 100644 index 00000000..09e35d14 --- /dev/null +++ b/docs/tasks/M14-04H.md @@ -0,0 +1,60 @@ +# M14-04H:Chromium keyboard-only, accessible names/roles and focus restoration + +- `task`: `M14-04H` +- `parent`: `M14-04G` +- `status`: `done` + +## 目标 + +在 Chromium 中验证不依赖 pointer 的核心菜单与操作搜索流程:键盘可以到达并激活入口,打开 +modal/menu 后焦点落在可操作项,Escape/提交后焦点回到触发器,交互元素具备可计算名称和正确 +角色。Firefox/WebKit 不在本项目范围内。 + +## 输入 + +- 上一个 manifest:`tests/golden/M14-04G/manifest.json` +- 生产入口:`web/app/src/app/App.tsx` +- 样式入口:`web/app/src/app/app-shell.css` +- 既有参考 e2e:`web/tests/e2e/keyboard-accessibility.spec.ts` + +## 范围 + +做: + +- main/offscreen 两个 Chromium 页面配置。 +- Tab/Shift+Tab 到文件菜单、Enter 打开、Escape 关闭并恢复触发器焦点。 +- F3 打开操作搜索、输入框自动聚焦、Escape 关闭并恢复 F3 触发器焦点。 +- 扫描可见 button/input/select/textarea/canvas/[role],检查可计算名称、禁用状态和合法角色。 +- 记录焦点轨迹、角色/名称缺口和稳定报告 hash。 + +不做: + +- Firefox/WebKit 或特定屏幕阅读器的兼容性声明。 +- 重新设计所有快捷键或引入新的 operator。 +- 用 axe 的单一静态结果替代真实键盘路径。 + +## 验收 + +```text +npm --prefix web run test:chromium-accessibility +``` + +必要的补充门: + +```text +npm --prefix web run typecheck +npm --prefix web run build +git diff --check +``` + +## 产物和交接 + +- 报告:`tests/golden/M14-04H/chromium-accessibility-report.json` +- manifest:`tests/golden/M14-04H/manifest.json` +- 状态页:`docs/status/M14-04H.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 accessibility checker、报告、manifest、package 命令和本任务状态页;恢复 `M14-04G` 作为队列尾, +不得修改 M14-04G 的布局证据。 diff --git a/docs/tasks/M15-01A.md b/docs/tasks/M15-01A.md new file mode 100644 index 00000000..30b1605e --- /dev/null +++ b/docs/tasks/M15-01A.md @@ -0,0 +1,58 @@ +# M15-01A:Blender 5.2 RNA data-block type inventory + +- `task`: `M15-01A` +- `parent`: `M14-04H` +- `status`: `done` + +## 目标 + +使用 pinned Blender 5.2 runtime 的真实 RNA 注册表生成稳定的 data-block type 清单;每项必须 +包含稳定 RNA identifier、类型名、ID 基类和 runtime/source anchor。此项只冻结 inventory, +不改变任何 V1 `releaseStatus` 或 Blender family `parityStatus`。 + +## 输入 + +- 上一个 manifest:`tests/golden/M14-04H/manifest.json` +- Blender runtime:`build_blender_5.2.0/bin/blender` +- 生成器:`tools/web/generate-blender-rna-datablock-inventory.py` +- 最小执行入口:`tools/web/check-blender-rna-datablock-inventory.mjs` + +## 范围 + +做: + +- 以 `bpy.types` 中继承 `bpy.types.ID` 的注册类型为 inventory 输入。 +- 固定 schema、排序、稳定 `parityId`、Blender version/build identity 和 source anchor。 +- 重新生成到临时目录并与提交的 golden JSON 做字节级比较。 +- 拒绝重复 identifier、空 identifier、版本漂移和未排序条目。 + +不做: + +- operator、modifier、node、editor、format 或 runtime evaluator 清单;这些由后续 M15-01B-F 负责。 +- 通过手写列表补齐 Blender 类型。 +- 修改 `parity-ledger.json` 的完成状态。 + +## 验收 + +```text +npm --prefix web run test:blender-rna-inventory +``` + +必要的补充门: + +```text +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- 报告/清单:`tests/golden/M15-01A/blender-rna-datablock-inventory.json` +- manifest:`tests/golden/M15-01A/manifest.json` +- 状态页:`docs/status/M15-01A.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除生成器、checker、报告、manifest、package 命令和本任务状态页;恢复 `M14-04H` 作为队列尾, +不得修改 M14-04H 的 Chromium 证据。 diff --git a/docs/tasks/M15-01B.md b/docs/tasks/M15-01B.md new file mode 100644 index 00000000..6c6b6d7b --- /dev/null +++ b/docs/tasks/M15-01B.md @@ -0,0 +1,58 @@ +# M15-01B:Blender 5.2 operator idname/poll/property inventory + +- `task`: `M15-01B` +- `parent`: `M15-01A` +- `status`: `in_progress` + +## 目标 + +从 pinned Blender 5.2 的真实 `bpy.ops` registry 生成确定性的 operator 清单,记录 operator +idname、RNA identifier、factory-startup poll 结果和排序后的 RNA properties。此项只生成机器 +基线,不把 operator 自动标记为已支持。 + +## 输入 + +- 上一个 manifest:`tests/golden/M15-01A/manifest.json` +- Blender runtime:`build_blender_5.2.0/bin/blender` +- 生成器:`tools/web/generate-blender-operator-inventory.py` +- checker:`tools/web/check-blender-operator-inventory.mjs` + +## 范围 + +做: + +- 递归枚举 `bpy.ops` 的注册 module/operator。 +- 记录稳定 operator path、RNA identifier、poll result/error 和属性 identifier/type。 +- 固定排序、去重、runtime identity 和 inventory hash;临时重生成必须字节相同。 + +不做: + +- 执行任意 operator 或修改 `.blend`。 +- 生成 modifier、node、editor 或 import/export 清单。 +- 把 `poll=false` 或 build-disabled 当成 parity 完成/阻断结论。 + +## 验收 + +```text +npm --prefix web run test:blender-operator-inventory +``` + +必要的补充门: + +```text +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- inventory:`tests/golden/M15-01B/blender-operator-inventory.json` +- report:`tests/golden/M15-01B/operator-inventory-check-report.json` +- manifest:`tests/golden/M15-01B/manifest.json` +- 状态页:`docs/status/M15-01B.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 operator generator、checker、inventory、report、manifest、package 命令和本任务状态页;恢复 +`M15-01A` 作为队列尾,不修改 data-block inventory。 diff --git a/docs/tasks/M15-01C.md b/docs/tasks/M15-01C.md new file mode 100644 index 00000000..7cbaed60 --- /dev/null +++ b/docs/tasks/M15-01C.md @@ -0,0 +1,38 @@ +# M15-01C:Blender 5.2 modifier、constraint 与 node inventory + +- `task`: `M15-01C` +- `parent`: `M15-01B` +- `status`: `in_progress` + +## 目标 + +从 pinned Blender 5.2 的真实 RNA registry 生成 modifier、constraint、Shader Node、Geometry +Node 和 Compositor Node 清单。此项只冻结机器基线,不把任何条目标记为已支持。 + +## 输入 + +- 上一个 manifest:`tests/golden/M15-01B/manifest.json` +- Blender runtime:`build_blender_5.2.0/bin/blender` +- 生成器:`tools/web/generate-blender-family-inventory.py` +- checker:`tools/web/check-blender-family-inventory.mjs` + +## 验收 + +```text +npm --prefix web run test:blender-family-inventory +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- inventory:`tests/golden/M15-01C/blender-family-inventory.json` +- report:`tests/golden/M15-01C/family-inventory-check-report.json` +- manifest:`tests/golden/M15-01C/manifest.json` +- 状态页:`docs/status/M15-01C.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 family generator、checker、inventory、report、manifest、package 命令和本任务状态页;恢复 +`M15-01B` 作为队列尾,不修改 operator inventory。 diff --git a/docs/tasks/M15-01D.md b/docs/tasks/M15-01D.md new file mode 100644 index 00000000..60edcde7 --- /dev/null +++ b/docs/tasks/M15-01D.md @@ -0,0 +1,38 @@ +# M15-01D:Blender 5.2 sequencer、physics 与 import/export inventory + +- `task`: `M15-01D` +- `parent`: `M15-01C` +- `status`: `in_progress` + +## 目标 + +从 pinned Blender 5.2 的真实 RNA/operator registry 生成 sequencer strip/effect 类型、physics +数据类型和 import/export operator 清单。此项只冻结机器基线,不把任何条目标记为已支持。 + +## 输入 + +- 上一个 manifest:`tests/golden/M15-01C/manifest.json` +- Blender runtime:`build_blender_5.2.0/bin/blender` +- 生成器:`tools/web/generate-blender-format-inventory.py` +- checker:`tools/web/check-blender-format-inventory.mjs` + +## 验收 + +```text +npm --prefix web run test:blender-format-inventory +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- inventory:`tests/golden/M15-01D/blender-format-inventory.json` +- report:`tests/golden/M15-01D/format-inventory-check-report.json` +- manifest:`tests/golden/M15-01D/manifest.json` +- 状态页:`docs/status/M15-01D.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 format generator、checker、inventory、report、manifest、package 命令和本任务状态页;恢复 +`M15-01C` 作为队列尾,不修改 family inventory。 diff --git a/docs/tasks/M15-01E.md b/docs/tasks/M15-01E.md new file mode 100644 index 00000000..f67afd05 --- /dev/null +++ b/docs/tasks/M15-01E.md @@ -0,0 +1,31 @@ +# M15-01E:Blender 5.2 editor/space/region/workspace/keymap inventory + +- `task`: `M15-01E` +- `parent`: `M15-01D` +- `status`: `in_progress` + +## 目标 + +从 pinned Blender 5.2 的真实 RNA registry 和初始化后的默认 keyconfig 生成 editor、space、region、 +workspace mode 与 keymap 清单。此项只冻结机器基线,不把任何条目标记为已支持。 + +## 验收 + +```text +npm --prefix web run test:blender-editor-inventory +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- inventory:`tests/golden/M15-01E/blender-editor-inventory.json` +- report:`tests/golden/M15-01E/editor-inventory-check-report.json` +- manifest:`tests/golden/M15-01E/manifest.json` +- 状态页:`docs/status/M15-01E.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 editor generator、checker、inventory、report、manifest、package 命令和本任务状态页;恢复 +`M15-01D` 作为队列尾,不修改 format inventory。 diff --git a/docs/tasks/M15-01F.md b/docs/tasks/M15-01F.md new file mode 100644 index 00000000..29ba52bc --- /dev/null +++ b/docs/tasks/M15-01F.md @@ -0,0 +1,31 @@ +# M15-01F:Blender 5.2 Main/Scene/Mesh/Depsgraph/core inventory + +- `task`: `M15-01F` +- `parent`: `M15-01E` +- `status`: `in_progress` + +## 目标 + +为 Main、Scene、Mesh、Depsgraph 和现有 V1 core slice 生成同级的 Blender 5.2 RNA 类与属性清单。 +此项只冻结机器基线,不把“当前范围完成”映射为全量 parity 完成。 + +## 验收 + +```text +npm --prefix web run test:blender-core-inventory +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- inventory:`tests/golden/M15-01F/blender-core-inventory.json` +- report:`tests/golden/M15-01F/core-inventory-check-report.json` +- manifest:`tests/golden/M15-01F/manifest.json` +- 状态页:`docs/status/M15-01F.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 core generator、checker、inventory、report、manifest、package 命令和本任务状态页;恢复 +`M15-01E` 作为队列尾,不修改 editor inventory。 diff --git a/docs/tasks/M15-02A.md b/docs/tasks/M15-02A.md new file mode 100644 index 00000000..04245129 --- /dev/null +++ b/docs/tasks/M15-02A.md @@ -0,0 +1,31 @@ +# M15-02A:inventory 条目 owner/implementation/test/evidence 映射 + +- `task`: `M15-02A` +- `parent`: `M15-01F` +- `status`: `in_progress` + +## 目标 + +为 M15-01A 至 M15-01F 的每个 inventory 条目生成唯一稳定 ID,并绑定 owner family、实现分类、 +专项 checker 和 manifest evidence。映射保持 `INVENTORIED_ONLY`,不改变 parity 或 release 状态。 + +## 验收 + +```text +npm --prefix web run test:blender-parity-map +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- map:`tests/golden/M15-02A/blender-parity-map.json` +- report:`tests/golden/M15-02A/parity-map-check-report.json` +- manifest:`tests/golden/M15-02A/manifest.json` +- 状态页:`docs/status/M15-02A.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 parity map generator、checker、map、report、manifest、package 命令和本任务状态页;恢复 +`M15-01F` 作为队列尾,不修改任何 inventory。 diff --git a/docs/tasks/M15-02B.md b/docs/tasks/M15-02B.md new file mode 100644 index 00000000..a5e9a53c --- /dev/null +++ b/docs/tasks/M15-02B.md @@ -0,0 +1,31 @@ +# M15-02B:parity map gap 分类审计 + +- `task`: `M15-02B` +- `parent`: `M15-02A` +- `status`: `in_progress` + +## 目标 + +机器化识别 inventory map 中的未映射、重复映射、只有 summary、只有 proxy 和只有 route 条目。 +`INVENTORY_BASELINE` 明确分类为 `summaryOnly`,不当作 parity 完成。 + +## 验收 + +```text +npm --prefix web run test:blender-gap-audit +npm --prefix web run typecheck +git diff --check +``` + +## 产物和交接 + +- audit:`tests/golden/M15-02B/blender-gap-audit.json` +- report:`tests/golden/M15-02B/gap-audit-check-report.json` +- manifest:`tests/golden/M15-02B/manifest.json` +- 状态页:`docs/status/M15-02B.md` +- 下一任务:由 manifest 的 `nextTask` 决定 + +## 回滚 + +删除 gap audit generator、checker、audit、report、manifest、package 命令和本任务状态页;恢复 +`M15-02A` 作为队列尾,不修改 parity map。 diff --git a/docs/tasks/M15-02C.md b/docs/tasks/M15-02C.md new file mode 100644 index 00000000..1b2cf622 --- /dev/null +++ b/docs/tasks/M15-02C.md @@ -0,0 +1,10 @@ +# M15-02C:LOCAL_EXACT 证据 fail-closed 审计 + +- `task`: `M15-02C` +- `parent`: `M15-02B` +- `status`: `in_progress` + +审计每条 `LOCAL_EXACT` 声明是否同时具备 desktop fixture、WASM fixture 和同 fixture 比较证据;当前 +inventory-only map 没有此类声明,结果必须为 `notApplicable`,不能推导 parity 完成。 + +验收:`npm --prefix web run test:blender-local-exact-audit`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-02D.md b/docs/tasks/M15-02D.md new file mode 100644 index 00000000..e5f06865 --- /dev/null +++ b/docs/tasks/M15-02D.md @@ -0,0 +1,9 @@ +# M15-02D:LOCAL_EQUIVALENT 证据 fail-closed 审计 + +- `task`: `M15-02D` +- `parent`: `M15-02C` +- `status`: `pending` + +审计 Main 与 save/reopen 证据;无声明时输出 `notApplicable`,缺证据的声明必须阻断。 + +验收:`npm --prefix web run test:blender-local-equivalent-audit`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-02E.md b/docs/tasks/M15-02E.md new file mode 100644 index 00000000..43d29369 --- /dev/null +++ b/docs/tasks/M15-02E.md @@ -0,0 +1,9 @@ +# M15-02E:SERVER_EXACT 证据 fail-closed 审计 + +- `task`: `M15-02E` +- `parent`: `M15-02D` +- `status`: `pending` + +审计真实 job、cancel、isolation、result binding 证据;无声明时输出 `notApplicable`,缺证据的声明必须阻断。 + +验收:`npm --prefix web run test:blender-server-exact-audit`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-02F.md b/docs/tasks/M15-02F.md new file mode 100644 index 00000000..7c047468 --- /dev/null +++ b/docs/tasks/M15-02F.md @@ -0,0 +1,9 @@ +# M15-02F:unknown data 保存破坏 fail-closed 审计 + +- `task`: `M15-02F` +- `parent`: `M15-02E` +- `status`: `pending` + +审计 unknown-data fixture、save/reload 与 byte-preservation 证据;无声明时输出 `notApplicable`,缺证据的声明必须阻断。 + +验收:`npm --prefix web run test:blender-unknown-data-audit`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-03A.md b/docs/tasks/M15-03A.md new file mode 100644 index 00000000..bfec79b4 --- /dev/null +++ b/docs/tasks/M15-03A.md @@ -0,0 +1,9 @@ +# M15-03A:每 gap 一个最小 nextTask + +- `task`: `M15-03A` +- `parent`: `M15-02F` +- `status`: `in_progress` + +为每个 gap 生成唯一最小任务,不生成“完成整个 family”的聚合任务;只允许一个 active task。 + +验收:`npm --prefix web run test:blender-next-task-plan`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-03B.md b/docs/tasks/M15-03B.md new file mode 100644 index 00000000..d62f88c8 --- /dev/null +++ b/docs/tasks/M15-03B.md @@ -0,0 +1,9 @@ +# M15-03B:nextTask 完整规格审计 + +- `task`: `M15-03B` +- `parent`: `M15-03A` +- `status`: `in_progress` + +验证每个生成任务包含 fixture、desktop command、Web command、comparator 和退出条件。 + +验收:`npm --prefix web run test:blender-next-task-spec`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-03C.md b/docs/tasks/M15-03C.md new file mode 100644 index 00000000..32afa14c --- /dev/null +++ b/docs/tasks/M15-03C.md @@ -0,0 +1,9 @@ +# M15-03C:nextTask 依赖图与单 active 指针 + +- `task`: `M15-03C` +- `parent`: `M15-03B` +- `status`: `pending` + +验证依赖无缺失、无环且仅有一个 active task。 + +验收:`npm --prefix web run test:blender-task-graph`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-03D.md b/docs/tasks/M15-03D.md new file mode 100644 index 00000000..d6beb9f9 --- /dev/null +++ b/docs/tasks/M15-03D.md @@ -0,0 +1,9 @@ +# M15-03D:机器 gap 统计 + +- `task`: `M15-03D` +- `parent`: `M15-03C` +- `status`: `pending` + +分别输出 inventoried、completed、blocked、uninventoried,禁止聚合 gate 推导完成。 + +验收:`npm --prefix web run test:blender-task-stats`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M15-03E.md b/docs/tasks/M15-03E.md new file mode 100644 index 00000000..6f888f2c --- /dev/null +++ b/docs/tasks/M15-03E.md @@ -0,0 +1,10 @@ +# M15-03E:owner family 零 gap closure gate + +- `task`: `M15-03E` +- `parent`: `M15-03D` +- `status`: `blocked` + +逐 family 验证零 gap。当前仍有 6,900 项,gate 必须为 `BLOCKED`,并把执行指针交给唯一 active +实现任务;不得由历史 release 聚合 gate 反推完成。 + +验收:`npm --prefix web run test:blender-zero-gap-gate`、`npm --prefix web run typecheck`、`git diff --check`。 diff --git a/docs/tasks/M16-GAP-00001.md b/docs/tasks/M16-GAP-00001.md new file mode 100644 index 00000000..43886f30 --- /dev/null +++ b/docs/tasks/M16-GAP-00001.md @@ -0,0 +1,18 @@ +# M16-GAP-00001:Action data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00001` +- `parent`: `M15-03E` +- `status`: `in_progress` +- `gap`: `datablock:Action` +- `ownerFamily`: `RNA_DATABLOCK` +- `targetImplementationClass`: `LOCAL_EXACT` + +## Required evidence + +- Fixture: `tests/files/web/generated/M16-GAP-00001-datablock-Action.blend` +- Desktop command: `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00001.py -- tests/files/web/generated/M16-GAP-00001-datablock-Action.blend` +- Web command: `npm --prefix web run test:generated-gap -- --task M16-GAP-00001` +- Comparator: `node tools/web/check-generated-gap.mjs --task M16-GAP-00001` + +The task cannot be marked complete until desktop/WASM same-fixture evidence, save/reopen Main evidence, +artifact hashes and the comparator result are present. diff --git a/docs/tasks/M16-GAP-00002.md b/docs/tasks/M16-GAP-00002.md new file mode 100644 index 00000000..c2749109 --- /dev/null +++ b/docs/tasks/M16-GAP-00002.md @@ -0,0 +1,18 @@ +# M16-GAP-00002:Armature data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00002` +- `parent`: `M16-GAP-00001` +- `status`: `in_progress` +- `gap`: `datablock:Armature` +- `ownerFamily`: `RNA_DATABLOCK` +- `targetImplementationClass`: `LOCAL_EXACT` + +## Required evidence + +- Fixture: `tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend` +- Desktop command: `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00002.py -- tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend` +- Web command: `npm --prefix web run test:generated-gap -- --task M16-GAP-00002` +- Comparator: `node tools/web/check-generated-gap.mjs --task M16-GAP-00002` + +The task remains blocked until a same-fixture desktop/WASM report, save/reopen evidence and artifact +manifest are present. The checker currently reports `IMPLEMENTATION_NOT_STARTED` for this pointer. diff --git a/docs/tasks/M16-GAP-00003.md b/docs/tasks/M16-GAP-00003.md new file mode 100644 index 00000000..ba6939e8 --- /dev/null +++ b/docs/tasks/M16-GAP-00003.md @@ -0,0 +1,11 @@ +# M16-GAP-00003:Brush data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00003` +- `parent`: `M16-GAP-00002` +- `status`: `in_progress` +- `gap`: `datablock:Brush` +- `ownerFamily`: `RNA_DATABLOCK` +- `targetImplementationClass`: `LOCAL_EXACT` + +Required fixture, Blender desktop report, WASM report, save/reopen comparison and manifest hashes must +be produced before completion. The generated-gap checker currently reports `IMPLEMENTATION_NOT_STARTED`. diff --git a/docs/tasks/M16-GAP-00004.md b/docs/tasks/M16-GAP-00004.md new file mode 100644 index 00000000..9eef3abe --- /dev/null +++ b/docs/tasks/M16-GAP-00004.md @@ -0,0 +1,11 @@ +# M16-GAP-00004:Camera data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00004` +- `parent`: `M16-GAP-00003` +- `status`: `in_progress` +- `gap`: `datablock:Camera` +- `ownerFamily`: `RNA_DATABLOCK` +- `targetImplementationClass`: `LOCAL_EXACT` + +Required fixture, Blender desktop report, WASM report, save/reopen comparison and manifest hashes must +be produced before completion. The generated-gap checker currently reports `IMPLEMENTATION_NOT_STARTED`. diff --git a/docs/tasks/M16-GAP-00005.md b/docs/tasks/M16-GAP-00005.md new file mode 100644 index 00000000..c61eb899 --- /dev/null +++ b/docs/tasks/M16-GAP-00005.md @@ -0,0 +1,9 @@ +# M16-GAP-00005:Collection data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00005` +- `parent`: `M16-GAP-00004` +- `status`: `in_progress` +- `gap`: `datablock:Collection` +- `targetImplementationClass`: `LOCAL_EXACT` + +The task requires same-fixture desktop/WASM collection hierarchy and save/reopen evidence. diff --git a/docs/tasks/M16-GAP-00006.md b/docs/tasks/M16-GAP-00006.md new file mode 100644 index 00000000..f61e0fdf --- /dev/null +++ b/docs/tasks/M16-GAP-00006.md @@ -0,0 +1,10 @@ +# M16-GAP-00006:Curve data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00006` +- `parent`: `M16-GAP-00005` +- `status`: `in_progress` +- `gap`: `datablock:Curve` +- `targetImplementationClass`: `LOCAL_EXACT` + +Required fixture, desktop/WASM curve geometry report, save/reopen comparison and manifest hashes are +still outstanding; checker reports `IMPLEMENTATION_NOT_STARTED`. diff --git a/docs/tasks/M16-GAP-00007.md b/docs/tasks/M16-GAP-00007.md new file mode 100644 index 00000000..fd64e624 --- /dev/null +++ b/docs/tasks/M16-GAP-00007.md @@ -0,0 +1,10 @@ +# M16-GAP-00007:Curves data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00007` +- `parent`: `M16-GAP-00006` +- `status`: `in_progress` +- `gap`: `datablock:Curves` +- `targetImplementationClass`: `LOCAL_EXACT` + +Required hair/curves fixture, desktop/WASM geometry report, save/reopen comparison and manifest hashes +are outstanding; checker reports `IMPLEMENTATION_NOT_STARTED`. diff --git a/docs/tasks/M16-GAP-00008.md b/docs/tasks/M16-GAP-00008.md new file mode 100644 index 00000000..228d37ee --- /dev/null +++ b/docs/tasks/M16-GAP-00008.md @@ -0,0 +1,9 @@ +# M16-GAP-00008:FreestyleLineStyle data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00008` +- `parent`: `M16-GAP-00007` +- `status`: `in_progress` +- `gap`: `datablock:FreestyleLineStyle` +- `targetImplementationClass`: `LOCAL_EXACT` + +Required style fixture, desktop/WASM evidence and save/reopen comparison are outstanding. diff --git a/docs/tasks/M16-GAP-00009.md b/docs/tasks/M16-GAP-00009.md new file mode 100644 index 00000000..4ea2356f --- /dev/null +++ b/docs/tasks/M16-GAP-00009.md @@ -0,0 +1,9 @@ +# M16-GAP-00009:GreasePencil data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00009` +- `parent`: `M16-GAP-00008` +- `status`: `in_progress` +- `gap`: `datablock:GreasePencil` +- `targetImplementationClass`: `LOCAL_EXACT` + +Required Grease Pencil drawing fixture, desktop/WASM evidence and save/reopen comparison are outstanding. diff --git a/docs/tasks/M16-GAP-00010.md b/docs/tasks/M16-GAP-00010.md new file mode 100644 index 00000000..a0fc71b0 --- /dev/null +++ b/docs/tasks/M16-GAP-00010.md @@ -0,0 +1,50 @@ +# M16-GAP-00010:Lattice data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00010` +- `parent`: `M16-GAP-00009` +- `status`: `done` +- `gap`: `datablock:Lattice` +- `ownerFamily`: `RNA_DATABLOCK` +- `targetImplementationClass`: `LOCAL_EXACT` + +## 目标 + +让同一个 Lattice fixture 在 Blender desktop 和 WASM/Main 中得到一致的点阵/形变数据,并在 save/reopen 后保持一致。 + +## 输入与范围 + +- Fixture:`tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend` +- 生产入口:`blender-5.2.0/source/blender/web_engine/`、`web/app/src/vendor/blender/` +- 检查器:`tools/web/check-generated-gap.mjs`、`tools/web/generated/M16-GAP-00010.py` +- 做:Lattice 数据读取、desktop/WASM 对标、save/reopen 和结构化报告。 +- 不做:其他 data-block、UI 编辑器、Firefox/WebKit 或完整 Lattice 编辑工具。 + +## 子任务门 + +| 门 | 唯一交付 | 通过条件 | +| --- | --- | --- | +| L-C | Lattice 字段/稳定 ID/错误码契约 | schema 和 malformed/unsupported 负例固定 | +| L-D | Blender desktop fixture/report | 同一 fixture 生成可重跑 report 和 hash | +| L-W | WASM/Main reader | 生产入口读取同一 fixture,输出字段与 desktop 对齐 | +| L-R | save/reopen | 新 Main 重开后点阵/形变和 revision 不变 | +| L-E | 证据交接 | comparator、manifest、status 和 rollback 全部可复验 | + +每次只推进一扇门;失败门保持 `in_progress`,不得用后续报告代替前置证据。 + +## 验收 + +```bash +build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00010.py -- tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00010 +node tools/web/check-generated-gap.mjs --task M16-GAP-00010 +``` + +必须覆盖 malformed/unsupported 输入或取消路径;失败不得改变 Main revision 或推进 `nextTask`。 + +## 交付与回滚 + +- 报告:`tests/golden/M16-GAP-00010/` +- 状态:`docs/status/M16-GAP-00010.md` +- manifest:`tests/golden/M16-GAP-00010/manifest.json` +- 完成后运行 `node tools/web/check-task-context.mjs --task M16-GAP-00010 --write`。 +- 回滚:删除本任务新增的生产入口、测试、报告、manifest、status 和 context,恢复 parent manifest 为队列尾;不得改写 parent 成功证据。 diff --git a/docs/tasks/M16-GAP-00011.md b/docs/tasks/M16-GAP-00011.md new file mode 100644 index 00000000..6d396da3 --- /dev/null +++ b/docs/tasks/M16-GAP-00011.md @@ -0,0 +1,39 @@ +# M16-GAP-00011:Library data-block LOCAL_EXACT slice + +- `task`: `M16-GAP-00011` +- `parent`: `M16-GAP-00010` +- `status`: `in_progress` +- `gap`: `datablock:Library` +- `ownerFamily`: `RNA_DATABLOCK` +- `targetImplementationClass`: `LOCAL_EXACT` + +## 目标 + +让同一个 Library fixture 在 Blender desktop 和 WASM/Main 中得到一致的最小可观察数据,并在 save/reopen 后保持一致。只改变 `datablock:Library` 这一条 gap;不扩大到其他 data-block 或编辑器行为。 + +## 输入与范围 + +- Fixture:`tests/files/web/generated/M16-GAP-00011-datablock-Library.blend` +- 生成入口:`tools/web/generated/M16-GAP-00011.py` +- 生产入口:`blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp` +- 检查器:`tools/web/check-generated-gap.mjs` +- 做:Library 字段读取、desktop/WASM 对标、save/reopen 和结构化报告。 +- 不做:其他 data-block、UI 编辑器、Firefox/WebKit 或完整 Library 管理器。 + +## 验收 + +```bash +build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00011.py -- tests/files/web/generated/M16-GAP-00011-datablock-Library.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00011 +node tools/web/check-generated-gap.mjs --task M16-GAP-00011 +``` + +必须覆盖 malformed/unsupported 输入或取消路径;失败不得改变 Main revision 或推进 `nextTask`。命令未实际退出 0、fixture 不可重开或任一 hash 漂移时保持 `in_progress`,不得发布晚到的成功结果。 + +## 交付与回滚 + +- 报告:`tests/golden/M16-GAP-00011/` +- 状态:`docs/status/M16-GAP-00011.md` +- manifest:`tests/golden/M16-GAP-00011/manifest.json` +- 交接:`node tools/web/check-task-context.mjs --task M16-GAP-00011 --write` +- 回滚:删除本任务新增的生产入口、fixture、测试、报告、manifest、status 和 context;恢复 `M16-GAP-00010` 作为队列尾,不改写其成功证据。 diff --git a/docs/tasks/M16-GAP-00012.md b/docs/tasks/M16-GAP-00012.md new file mode 100644 index 00000000..1efe249b --- /dev/null +++ b/docs/tasks/M16-GAP-00012.md @@ -0,0 +1,37 @@ +# M16-GAP-00012: datablock:Light LOCAL_EXACT slice + +- task: M16-GAP-00012 +- parent: M16-GAP-00011 +- status: in_progress +- gap: datablock:Light +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Light 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-00012-datablock-Light.blend` +- Generator: `tools/web/generated/M16-GAP-00012.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-00012.py -- tests/files/web/generated/M16-GAP-00012-datablock-Light.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00012 +node tools/web/check-generated-gap.mjs --task M16-GAP-00012 + +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-00012/` +- Status: `docs/status/M16-GAP-00012.md` +- Manifest: `tests/golden/M16-GAP-00012/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00012 --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-00013.md b/docs/tasks/M16-GAP-00013.md new file mode 100644 index 00000000..4b3079e4 --- /dev/null +++ b/docs/tasks/M16-GAP-00013.md @@ -0,0 +1,37 @@ +# M16-GAP-00013: datablock:Material LOCAL_EXACT slice + +- task: M16-GAP-00013 +- parent: M16-GAP-00012 +- status: in_progress +- gap: datablock:Material +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Material 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-00013-datablock-Material.blend` +- Generator: `tools/web/generated/M16-GAP-00013.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-00013.py -- tests/files/web/generated/M16-GAP-00013-datablock-Material.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00013 +node tools/web/check-generated-gap.mjs --task M16-GAP-00013 + +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-00013/` +- Status: `docs/status/M16-GAP-00013.md` +- Manifest: `tests/golden/M16-GAP-00013/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00013 --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-00014.md b/docs/tasks/M16-GAP-00014.md new file mode 100644 index 00000000..f6dc29fc --- /dev/null +++ b/docs/tasks/M16-GAP-00014.md @@ -0,0 +1,37 @@ +# M16-GAP-00014: datablock:Mesh LOCAL_EXACT slice + +- task: M16-GAP-00014 +- parent: M16-GAP-00013 +- status: in_progress +- gap: datablock:Mesh +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Mesh 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-00014-datablock-Mesh.blend` +- Generator: `tools/web/generated/M16-GAP-00014.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-00014.py -- tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00014 +node tools/web/check-generated-gap.mjs --task M16-GAP-00014 + +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-00014/` +- Status: `docs/status/M16-GAP-00014.md` +- Manifest: `tests/golden/M16-GAP-00014/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00014 --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-00015.md b/docs/tasks/M16-GAP-00015.md new file mode 100644 index 00000000..ee624bc1 --- /dev/null +++ b/docs/tasks/M16-GAP-00015.md @@ -0,0 +1,37 @@ +# M16-GAP-00015: datablock:MetaBall LOCAL_EXACT slice + +- task: M16-GAP-00015 +- parent: M16-GAP-00014 +- status: in_progress +- gap: datablock:MetaBall +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:MetaBall 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-00015-datablock-MetaBall.blend` +- Generator: `tools/web/generated/M16-GAP-00015.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-00015.py -- tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00015 +node tools/web/check-generated-gap.mjs --task M16-GAP-00015 + +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-00015/` +- Status: `docs/status/M16-GAP-00015.md` +- Manifest: `tests/golden/M16-GAP-00015/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00015 --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-00016.md b/docs/tasks/M16-GAP-00016.md new file mode 100644 index 00000000..1d31d572 --- /dev/null +++ b/docs/tasks/M16-GAP-00016.md @@ -0,0 +1,37 @@ +# M16-GAP-00016: datablock:NodeTree LOCAL_EXACT slice + +- task: M16-GAP-00016 +- parent: M16-GAP-00015 +- status: in_progress +- gap: datablock:NodeTree +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:NodeTree 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-00016-datablock-NodeTree.blend` +- Generator: `tools/web/generated/M16-GAP-00016.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-00016.py -- tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00016 +node tools/web/check-generated-gap.mjs --task M16-GAP-00016 + +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-00016/` +- Status: `docs/status/M16-GAP-00016.md` +- Manifest: `tests/golden/M16-GAP-00016/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00016 --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-00017.md b/docs/tasks/M16-GAP-00017.md new file mode 100644 index 00000000..09cbeefe --- /dev/null +++ b/docs/tasks/M16-GAP-00017.md @@ -0,0 +1,37 @@ +# M16-GAP-00017: datablock:Object LOCAL_EXACT slice + +- task: M16-GAP-00017 +- parent: M16-GAP-00016 +- status: in_progress +- gap: datablock:Object +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Object 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-00017-datablock-Object.blend` +- Generator: `tools/web/generated/M16-GAP-00017.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-00017.py -- tests/files/web/generated/M16-GAP-00017-datablock-Object.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00017 +node tools/web/check-generated-gap.mjs --task M16-GAP-00017 + +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-00017/` +- Status: `docs/status/M16-GAP-00017.md` +- Manifest: `tests/golden/M16-GAP-00017/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00017 --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-00018.md b/docs/tasks/M16-GAP-00018.md new file mode 100644 index 00000000..7e147348 --- /dev/null +++ b/docs/tasks/M16-GAP-00018.md @@ -0,0 +1,37 @@ +# M16-GAP-00018: datablock:ParticleSettings LOCAL_EXACT slice + +- task: M16-GAP-00018 +- parent: M16-GAP-00017 +- status: in_progress +- gap: datablock:ParticleSettings +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:ParticleSettings 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-00018-datablock-ParticleSettings.blend` +- Generator: `tools/web/generated/M16-GAP-00018.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-00018.py -- tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00018 +node tools/web/check-generated-gap.mjs --task M16-GAP-00018 + +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-00018/` +- Status: `docs/status/M16-GAP-00018.md` +- Manifest: `tests/golden/M16-GAP-00018/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00018 --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-00019.md b/docs/tasks/M16-GAP-00019.md new file mode 100644 index 00000000..1ffd84b6 --- /dev/null +++ b/docs/tasks/M16-GAP-00019.md @@ -0,0 +1,37 @@ +# M16-GAP-00019: datablock:PointCloud LOCAL_EXACT slice + +- task: M16-GAP-00019 +- parent: M16-GAP-00018 +- status: in_progress +- gap: datablock:PointCloud +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:PointCloud 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-00019-datablock-PointCloud.blend` +- Generator: `tools/web/generated/M16-GAP-00019.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-00019.py -- tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00019 +node tools/web/check-generated-gap.mjs --task M16-GAP-00019 + +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-00019/` +- Status: `docs/status/M16-GAP-00019.md` +- Manifest: `tests/golden/M16-GAP-00019/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00019 --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-00020.md b/docs/tasks/M16-GAP-00020.md new file mode 100644 index 00000000..b402596a --- /dev/null +++ b/docs/tasks/M16-GAP-00020.md @@ -0,0 +1,37 @@ +# M16-GAP-00020: datablock:Scene LOCAL_EXACT slice + +- task: M16-GAP-00020 +- parent: M16-GAP-00019 +- status: in_progress +- gap: datablock:Scene +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Scene 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-00020-datablock-Scene.blend` +- Generator: `tools/web/generated/M16-GAP-00020.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-00020.py -- tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00020 +node tools/web/check-generated-gap.mjs --task M16-GAP-00020 + +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-00020/` +- Status: `docs/status/M16-GAP-00020.md` +- Manifest: `tests/golden/M16-GAP-00020/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00020 --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-00021.md b/docs/tasks/M16-GAP-00021.md new file mode 100644 index 00000000..e1650a17 --- /dev/null +++ b/docs/tasks/M16-GAP-00021.md @@ -0,0 +1,37 @@ +# M16-GAP-00021: datablock:Screen LOCAL_EXACT slice + +- task: M16-GAP-00021 +- parent: M16-GAP-00020 +- status: in_progress +- gap: datablock:Screen +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Screen 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-00021-datablock-Screen.blend` +- Generator: `tools/web/generated/M16-GAP-00021.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-00021.py -- tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00021 +node tools/web/check-generated-gap.mjs --task M16-GAP-00021 + +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-00021/` +- Status: `docs/status/M16-GAP-00021.md` +- Manifest: `tests/golden/M16-GAP-00021/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00021 --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-00022.md b/docs/tasks/M16-GAP-00022.md new file mode 100644 index 00000000..e194c6b1 --- /dev/null +++ b/docs/tasks/M16-GAP-00022.md @@ -0,0 +1,37 @@ +# M16-GAP-00022: datablock:Sound LOCAL_EXACT slice + +- task: M16-GAP-00022 +- parent: M16-GAP-00021 +- status: in_progress +- gap: datablock:Sound +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Sound 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-00022-datablock-Sound.blend` +- Generator: `tools/web/generated/M16-GAP-00022.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-00022.py -- tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00022 +node tools/web/check-generated-gap.mjs --task M16-GAP-00022 + +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-00022/` +- Status: `docs/status/M16-GAP-00022.md` +- Manifest: `tests/golden/M16-GAP-00022/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00022 --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-00023.md b/docs/tasks/M16-GAP-00023.md new file mode 100644 index 00000000..ecae34da --- /dev/null +++ b/docs/tasks/M16-GAP-00023.md @@ -0,0 +1,37 @@ +# M16-GAP-00023: datablock:Speaker LOCAL_EXACT slice + +- task: M16-GAP-00023 +- parent: M16-GAP-00022 +- status: in_progress +- gap: datablock:Speaker +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Speaker 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-00023-datablock-Speaker.blend` +- Generator: `tools/web/generated/M16-GAP-00023.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-00023.py -- tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00023 +node tools/web/check-generated-gap.mjs --task M16-GAP-00023 + +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-00023/` +- Status: `docs/status/M16-GAP-00023.md` +- Manifest: `tests/golden/M16-GAP-00023/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00023 --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-00024.md b/docs/tasks/M16-GAP-00024.md new file mode 100644 index 00000000..6889183f --- /dev/null +++ b/docs/tasks/M16-GAP-00024.md @@ -0,0 +1,37 @@ +# M16-GAP-00024: datablock:Text LOCAL_EXACT slice + +- task: M16-GAP-00024 +- parent: M16-GAP-00023 +- status: in_progress +- gap: datablock:Text +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Text 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-00024-datablock-Text.blend` +- Generator: `tools/web/generated/M16-GAP-00024.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-00024.py -- tests/files/web/generated/M16-GAP-00024-datablock-Text.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00024 +node tools/web/check-generated-gap.mjs --task M16-GAP-00024 + +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-00024/` +- Status: `docs/status/M16-GAP-00024.md` +- Manifest: `tests/golden/M16-GAP-00024/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00024 --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-00025.md b/docs/tasks/M16-GAP-00025.md new file mode 100644 index 00000000..afc3dcf5 --- /dev/null +++ b/docs/tasks/M16-GAP-00025.md @@ -0,0 +1,37 @@ +# M16-GAP-00025: datablock:Texture LOCAL_EXACT slice + +- task: M16-GAP-00025 +- parent: M16-GAP-00024 +- status: in_progress +- gap: datablock:Texture +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Texture 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-00025-datablock-Texture.blend` +- Generator: `tools/web/generated/M16-GAP-00025.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-00025.py -- tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00025 +node tools/web/check-generated-gap.mjs --task M16-GAP-00025 + +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-00025/` +- Status: `docs/status/M16-GAP-00025.md` +- Manifest: `tests/golden/M16-GAP-00025/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00025 --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-00026.md b/docs/tasks/M16-GAP-00026.md new file mode 100644 index 00000000..149a39d3 --- /dev/null +++ b/docs/tasks/M16-GAP-00026.md @@ -0,0 +1,37 @@ +# M16-GAP-00026: datablock:Volume LOCAL_EXACT slice + +- task: M16-GAP-00026 +- parent: M16-GAP-00025 +- status: in_progress +- gap: datablock:Volume +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:Volume 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-00026-datablock-Volume.blend` +- Generator: `tools/web/generated/M16-GAP-00026.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-00026.py -- tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00026 +node tools/web/check-generated-gap.mjs --task M16-GAP-00026 + +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-00026/` +- Status: `docs/status/M16-GAP-00026.md` +- Manifest: `tests/golden/M16-GAP-00026/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00026 --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-00027.md b/docs/tasks/M16-GAP-00027.md new file mode 100644 index 00000000..bfdd3029 --- /dev/null +++ b/docs/tasks/M16-GAP-00027.md @@ -0,0 +1,37 @@ +# M16-GAP-00027: datablock:WindowManager LOCAL_EXACT slice + +- task: M16-GAP-00027 +- parent: M16-GAP-00026 +- status: in_progress +- gap: datablock:WindowManager +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:WindowManager 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-00027-datablock-WindowManager.blend` +- Generator: `tools/web/generated/M16-GAP-00027.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-00027.py -- tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00027 +node tools/web/check-generated-gap.mjs --task M16-GAP-00027 + +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-00027/` +- Status: `docs/status/M16-GAP-00027.md` +- Manifest: `tests/golden/M16-GAP-00027/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00027 --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-00028.md b/docs/tasks/M16-GAP-00028.md new file mode 100644 index 00000000..74848707 --- /dev/null +++ b/docs/tasks/M16-GAP-00028.md @@ -0,0 +1,37 @@ +# M16-GAP-00028: datablock:WorkSpace LOCAL_EXACT slice + +- task: M16-GAP-00028 +- parent: M16-GAP-00027 +- status: in_progress +- gap: datablock:WorkSpace +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:WorkSpace 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-00028-datablock-WorkSpace.blend` +- Generator: `tools/web/generated/M16-GAP-00028.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-00028.py -- tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00028 +node tools/web/check-generated-gap.mjs --task M16-GAP-00028 + +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-00028/` +- Status: `docs/status/M16-GAP-00028.md` +- Manifest: `tests/golden/M16-GAP-00028/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00028 --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-00029.md b/docs/tasks/M16-GAP-00029.md new file mode 100644 index 00000000..cfa2b3e1 --- /dev/null +++ b/docs/tasks/M16-GAP-00029.md @@ -0,0 +1,37 @@ +# M16-GAP-00029: datablock:World LOCAL_EXACT slice + +- task: M16-GAP-00029 +- parent: M16-GAP-00028 +- status: in_progress +- gap: datablock:World +- ownerFamily: RNA_DATABLOCK +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable datablock:World 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-00029-datablock-World.blend` +- Generator: `tools/web/generated/M16-GAP-00029.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-00029.py -- tests/files/web/generated/M16-GAP-00029-datablock-World.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00029 +node tools/web/check-generated-gap.mjs --task M16-GAP-00029 + +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-00029/` +- Status: `docs/status/M16-GAP-00029.md` +- Manifest: `tests/golden/M16-GAP-00029/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00029 --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-00030.md b/docs/tasks/M16-GAP-00030.md new file mode 100644 index 00000000..772a5629 --- /dev/null +++ b/docs/tasks/M16-GAP-00030.md @@ -0,0 +1,37 @@ +# M16-GAP-00030: modifier:ARMATURE LOCAL_EXACT slice + +- task: M16-GAP-00030 +- parent: M16-GAP-00029 +- status: in_progress +- gap: modifier:ARMATURE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:ARMATURE 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-00030-modifier-ARMATURE.blend` +- Generator: `tools/web/generated/M16-GAP-00030.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-00030.py -- tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00030 +node tools/web/check-generated-gap.mjs --task M16-GAP-00030 + +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-00030/` +- Status: `docs/status/M16-GAP-00030.md` +- Manifest: `tests/golden/M16-GAP-00030/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00030 --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-00031.md b/docs/tasks/M16-GAP-00031.md new file mode 100644 index 00000000..2acf869d --- /dev/null +++ b/docs/tasks/M16-GAP-00031.md @@ -0,0 +1,37 @@ +# M16-GAP-00031: modifier:ARRAY LOCAL_EXACT slice + +- task: M16-GAP-00031 +- parent: M16-GAP-00030 +- status: in_progress +- gap: modifier:ARRAY +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:ARRAY 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-00031-modifier-ARRAY.blend` +- Generator: `tools/web/generated/M16-GAP-00031.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-00031.py -- tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00031 +node tools/web/check-generated-gap.mjs --task M16-GAP-00031 + +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-00031/` +- Status: `docs/status/M16-GAP-00031.md` +- Manifest: `tests/golden/M16-GAP-00031/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00031 --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-00032.md b/docs/tasks/M16-GAP-00032.md new file mode 100644 index 00000000..49427a1d --- /dev/null +++ b/docs/tasks/M16-GAP-00032.md @@ -0,0 +1,37 @@ +# M16-GAP-00032: modifier:BEVEL LOCAL_EXACT slice + +- task: M16-GAP-00032 +- parent: M16-GAP-00031 +- status: in_progress +- gap: modifier:BEVEL +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:BEVEL 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-00032-modifier-BEVEL.blend` +- Generator: `tools/web/generated/M16-GAP-00032.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-00032.py -- tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00032 +node tools/web/check-generated-gap.mjs --task M16-GAP-00032 + +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-00032/` +- Status: `docs/status/M16-GAP-00032.md` +- Manifest: `tests/golden/M16-GAP-00032/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00032 --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-00033.md b/docs/tasks/M16-GAP-00033.md new file mode 100644 index 00000000..f8d331fa --- /dev/null +++ b/docs/tasks/M16-GAP-00033.md @@ -0,0 +1,37 @@ +# M16-GAP-00033: modifier:BOOLEAN LOCAL_EXACT slice + +- task: M16-GAP-00033 +- parent: M16-GAP-00032 +- status: in_progress +- gap: modifier:BOOLEAN +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:BOOLEAN 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-00033-modifier-BOOLEAN.blend` +- Generator: `tools/web/generated/M16-GAP-00033.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-00033.py -- tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00033 +node tools/web/check-generated-gap.mjs --task M16-GAP-00033 + +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-00033/` +- Status: `docs/status/M16-GAP-00033.md` +- Manifest: `tests/golden/M16-GAP-00033/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00033 --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-00034.md b/docs/tasks/M16-GAP-00034.md new file mode 100644 index 00000000..bd5ab763 --- /dev/null +++ b/docs/tasks/M16-GAP-00034.md @@ -0,0 +1,37 @@ +# M16-GAP-00034: modifier:BUILD LOCAL_EXACT slice + +- task: M16-GAP-00034 +- parent: M16-GAP-00033 +- status: in_progress +- gap: modifier:BUILD +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:BUILD 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-00034-modifier-BUILD.blend` +- Generator: `tools/web/generated/M16-GAP-00034.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-00034.py -- tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00034 +node tools/web/check-generated-gap.mjs --task M16-GAP-00034 + +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-00034/` +- Status: `docs/status/M16-GAP-00034.md` +- Manifest: `tests/golden/M16-GAP-00034/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00034 --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-00035.md b/docs/tasks/M16-GAP-00035.md new file mode 100644 index 00000000..72ced045 --- /dev/null +++ b/docs/tasks/M16-GAP-00035.md @@ -0,0 +1,37 @@ +# M16-GAP-00035: modifier:CAST LOCAL_EXACT slice + +- task: M16-GAP-00035 +- parent: M16-GAP-00034 +- status: in_progress +- gap: modifier:CAST +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:CAST 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-00035-modifier-CAST.blend` +- Generator: `tools/web/generated/M16-GAP-00035.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-00035.py -- tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00035 +node tools/web/check-generated-gap.mjs --task M16-GAP-00035 + +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-00035/` +- Status: `docs/status/M16-GAP-00035.md` +- Manifest: `tests/golden/M16-GAP-00035/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00035 --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-00036.md b/docs/tasks/M16-GAP-00036.md new file mode 100644 index 00000000..8911a5c2 --- /dev/null +++ b/docs/tasks/M16-GAP-00036.md @@ -0,0 +1,37 @@ +# M16-GAP-00036: modifier:CLOTH LOCAL_EXACT slice + +- task: M16-GAP-00036 +- parent: M16-GAP-00035 +- status: in_progress +- gap: modifier:CLOTH +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:CLOTH 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-00036-modifier-CLOTH.blend` +- Generator: `tools/web/generated/M16-GAP-00036.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-00036.py -- tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00036 +node tools/web/check-generated-gap.mjs --task M16-GAP-00036 + +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-00036/` +- Status: `docs/status/M16-GAP-00036.md` +- Manifest: `tests/golden/M16-GAP-00036/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00036 --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-00037.md b/docs/tasks/M16-GAP-00037.md new file mode 100644 index 00000000..788b81d8 --- /dev/null +++ b/docs/tasks/M16-GAP-00037.md @@ -0,0 +1,37 @@ +# M16-GAP-00037: modifier:COLLISION LOCAL_EXACT slice + +- task: M16-GAP-00037 +- parent: M16-GAP-00036 +- status: in_progress +- gap: modifier:COLLISION +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:COLLISION 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-00037-modifier-COLLISION.blend` +- Generator: `tools/web/generated/M16-GAP-00037.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-00037.py -- tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00037 +node tools/web/check-generated-gap.mjs --task M16-GAP-00037 + +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-00037/` +- Status: `docs/status/M16-GAP-00037.md` +- Manifest: `tests/golden/M16-GAP-00037/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00037 --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-00038.md b/docs/tasks/M16-GAP-00038.md new file mode 100644 index 00000000..97c0b11d --- /dev/null +++ b/docs/tasks/M16-GAP-00038.md @@ -0,0 +1,37 @@ +# M16-GAP-00038: modifier:CORRECTIVE_SMOOTH LOCAL_EXACT slice + +- task: M16-GAP-00038 +- parent: M16-GAP-00037 +- status: in_progress +- gap: modifier:CORRECTIVE_SMOOTH +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:CORRECTIVE_SMOOTH 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-00038-modifier-CORRECTIVE_SMOOTH.blend` +- Generator: `tools/web/generated/M16-GAP-00038.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-00038.py -- tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00038 +node tools/web/check-generated-gap.mjs --task M16-GAP-00038 + +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-00038/` +- Status: `docs/status/M16-GAP-00038.md` +- Manifest: `tests/golden/M16-GAP-00038/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00038 --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-00039.md b/docs/tasks/M16-GAP-00039.md new file mode 100644 index 00000000..f157fb59 --- /dev/null +++ b/docs/tasks/M16-GAP-00039.md @@ -0,0 +1,37 @@ +# M16-GAP-00039: modifier:CURVE LOCAL_EXACT slice + +- task: M16-GAP-00039 +- parent: M16-GAP-00038 +- status: in_progress +- gap: modifier:CURVE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:CURVE 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-00039-modifier-CURVE.blend` +- Generator: `tools/web/generated/M16-GAP-00039.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-00039.py -- tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00039 +node tools/web/check-generated-gap.mjs --task M16-GAP-00039 + +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-00039/` +- Status: `docs/status/M16-GAP-00039.md` +- Manifest: `tests/golden/M16-GAP-00039/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00039 --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-00040.md b/docs/tasks/M16-GAP-00040.md new file mode 100644 index 00000000..b1a1557a --- /dev/null +++ b/docs/tasks/M16-GAP-00040.md @@ -0,0 +1,37 @@ +# M16-GAP-00040: modifier:DATA_TRANSFER LOCAL_EXACT slice + +- task: M16-GAP-00040 +- parent: M16-GAP-00039 +- status: in_progress +- gap: modifier:DATA_TRANSFER +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:DATA_TRANSFER 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-00040-modifier-DATA_TRANSFER.blend` +- Generator: `tools/web/generated/M16-GAP-00040.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-00040.py -- tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00040 +node tools/web/check-generated-gap.mjs --task M16-GAP-00040 + +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-00040/` +- Status: `docs/status/M16-GAP-00040.md` +- Manifest: `tests/golden/M16-GAP-00040/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00040 --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-00041.md b/docs/tasks/M16-GAP-00041.md new file mode 100644 index 00000000..7d751b0a --- /dev/null +++ b/docs/tasks/M16-GAP-00041.md @@ -0,0 +1,37 @@ +# M16-GAP-00041: modifier:DECIMATE LOCAL_EXACT slice + +- task: M16-GAP-00041 +- parent: M16-GAP-00040 +- status: in_progress +- gap: modifier:DECIMATE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:DECIMATE 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-00041-modifier-DECIMATE.blend` +- Generator: `tools/web/generated/M16-GAP-00041.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-00041.py -- tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00041 +node tools/web/check-generated-gap.mjs --task M16-GAP-00041 + +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-00041/` +- Status: `docs/status/M16-GAP-00041.md` +- Manifest: `tests/golden/M16-GAP-00041/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00041 --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-00042.md b/docs/tasks/M16-GAP-00042.md new file mode 100644 index 00000000..e174bccb --- /dev/null +++ b/docs/tasks/M16-GAP-00042.md @@ -0,0 +1,37 @@ +# M16-GAP-00042: modifier:DISPLACE LOCAL_EXACT slice + +- task: M16-GAP-00042 +- parent: M16-GAP-00041 +- status: in_progress +- gap: modifier:DISPLACE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:DISPLACE 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-00042-modifier-DISPLACE.blend` +- Generator: `tools/web/generated/M16-GAP-00042.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-00042.py -- tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00042 +node tools/web/check-generated-gap.mjs --task M16-GAP-00042 + +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-00042/` +- Status: `docs/status/M16-GAP-00042.md` +- Manifest: `tests/golden/M16-GAP-00042/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00042 --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-00043.md b/docs/tasks/M16-GAP-00043.md new file mode 100644 index 00000000..91b9ab83 --- /dev/null +++ b/docs/tasks/M16-GAP-00043.md @@ -0,0 +1,37 @@ +# M16-GAP-00043: modifier:DYNAMIC_PAINT LOCAL_EXACT slice + +- task: M16-GAP-00043 +- parent: M16-GAP-00042 +- status: in_progress +- gap: modifier:DYNAMIC_PAINT +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:DYNAMIC_PAINT 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-00043-modifier-DYNAMIC_PAINT.blend` +- Generator: `tools/web/generated/M16-GAP-00043.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-00043.py -- tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00043 +node tools/web/check-generated-gap.mjs --task M16-GAP-00043 + +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-00043/` +- Status: `docs/status/M16-GAP-00043.md` +- Manifest: `tests/golden/M16-GAP-00043/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00043 --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-00044.md b/docs/tasks/M16-GAP-00044.md new file mode 100644 index 00000000..6b107091 --- /dev/null +++ b/docs/tasks/M16-GAP-00044.md @@ -0,0 +1,37 @@ +# M16-GAP-00044: modifier:EDGE_SPLIT LOCAL_EXACT slice + +- task: M16-GAP-00044 +- parent: M16-GAP-00043 +- status: in_progress +- gap: modifier:EDGE_SPLIT +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:EDGE_SPLIT 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-00044-modifier-EDGE_SPLIT.blend` +- Generator: `tools/web/generated/M16-GAP-00044.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-00044.py -- tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00044 +node tools/web/check-generated-gap.mjs --task M16-GAP-00044 + +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-00044/` +- Status: `docs/status/M16-GAP-00044.md` +- Manifest: `tests/golden/M16-GAP-00044/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00044 --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-00045.md b/docs/tasks/M16-GAP-00045.md new file mode 100644 index 00000000..10743b0f --- /dev/null +++ b/docs/tasks/M16-GAP-00045.md @@ -0,0 +1,37 @@ +# M16-GAP-00045: modifier:EXPLODE LOCAL_EXACT slice + +- task: M16-GAP-00045 +- parent: M16-GAP-00044 +- status: in_progress +- gap: modifier:EXPLODE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:EXPLODE 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-00045-modifier-EXPLODE.blend` +- Generator: `tools/web/generated/M16-GAP-00045.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-00045.py -- tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00045 +node tools/web/check-generated-gap.mjs --task M16-GAP-00045 + +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-00045/` +- Status: `docs/status/M16-GAP-00045.md` +- Manifest: `tests/golden/M16-GAP-00045/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00045 --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-00046.md b/docs/tasks/M16-GAP-00046.md new file mode 100644 index 00000000..0faff94e --- /dev/null +++ b/docs/tasks/M16-GAP-00046.md @@ -0,0 +1,37 @@ +# M16-GAP-00046: modifier:FLUID LOCAL_EXACT slice + +- task: M16-GAP-00046 +- parent: M16-GAP-00045 +- status: in_progress +- gap: modifier:FLUID +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:FLUID 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-00046-modifier-FLUID.blend` +- Generator: `tools/web/generated/M16-GAP-00046.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-00046.py -- tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00046 +node tools/web/check-generated-gap.mjs --task M16-GAP-00046 + +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-00046/` +- Status: `docs/status/M16-GAP-00046.md` +- Manifest: `tests/golden/M16-GAP-00046/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00046 --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-00047.md b/docs/tasks/M16-GAP-00047.md new file mode 100644 index 00000000..e7655a83 --- /dev/null +++ b/docs/tasks/M16-GAP-00047.md @@ -0,0 +1,37 @@ +# M16-GAP-00047: modifier:GREASE_PENCIL_ARMATURE LOCAL_EXACT slice + +- task: M16-GAP-00047 +- parent: M16-GAP-00046 +- status: in_progress +- gap: modifier:GREASE_PENCIL_ARMATURE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_ARMATURE 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-00047-modifier-GREASE_PENCIL_ARMATURE.blend` +- Generator: `tools/web/generated/M16-GAP-00047.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-00047.py -- tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00047 +node tools/web/check-generated-gap.mjs --task M16-GAP-00047 + +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-00047/` +- Status: `docs/status/M16-GAP-00047.md` +- Manifest: `tests/golden/M16-GAP-00047/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00047 --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-00048.md b/docs/tasks/M16-GAP-00048.md new file mode 100644 index 00000000..973de0c9 --- /dev/null +++ b/docs/tasks/M16-GAP-00048.md @@ -0,0 +1,37 @@ +# M16-GAP-00048: modifier:GREASE_PENCIL_ARRAY LOCAL_EXACT slice + +- task: M16-GAP-00048 +- parent: M16-GAP-00047 +- status: in_progress +- gap: modifier:GREASE_PENCIL_ARRAY +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_ARRAY 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-00048-modifier-GREASE_PENCIL_ARRAY.blend` +- Generator: `tools/web/generated/M16-GAP-00048.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-00048.py -- tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00048 +node tools/web/check-generated-gap.mjs --task M16-GAP-00048 + +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-00048/` +- Status: `docs/status/M16-GAP-00048.md` +- Manifest: `tests/golden/M16-GAP-00048/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00048 --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-00049.md b/docs/tasks/M16-GAP-00049.md new file mode 100644 index 00000000..8e272091 --- /dev/null +++ b/docs/tasks/M16-GAP-00049.md @@ -0,0 +1,37 @@ +# M16-GAP-00049: modifier:GREASE_PENCIL_BUILD LOCAL_EXACT slice + +- task: M16-GAP-00049 +- parent: M16-GAP-00048 +- status: in_progress +- gap: modifier:GREASE_PENCIL_BUILD +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_BUILD 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-00049-modifier-GREASE_PENCIL_BUILD.blend` +- Generator: `tools/web/generated/M16-GAP-00049.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-00049.py -- tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00049 +node tools/web/check-generated-gap.mjs --task M16-GAP-00049 + +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-00049/` +- Status: `docs/status/M16-GAP-00049.md` +- Manifest: `tests/golden/M16-GAP-00049/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00049 --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-00050.md b/docs/tasks/M16-GAP-00050.md new file mode 100644 index 00000000..98ba4247 --- /dev/null +++ b/docs/tasks/M16-GAP-00050.md @@ -0,0 +1,37 @@ +# M16-GAP-00050: modifier:GREASE_PENCIL_COLOR LOCAL_EXACT slice + +- task: M16-GAP-00050 +- parent: M16-GAP-00049 +- status: in_progress +- gap: modifier:GREASE_PENCIL_COLOR +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_COLOR 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-00050-modifier-GREASE_PENCIL_COLOR.blend` +- Generator: `tools/web/generated/M16-GAP-00050.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-00050.py -- tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00050 +node tools/web/check-generated-gap.mjs --task M16-GAP-00050 + +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-00050/` +- Status: `docs/status/M16-GAP-00050.md` +- Manifest: `tests/golden/M16-GAP-00050/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00050 --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-00051.md b/docs/tasks/M16-GAP-00051.md new file mode 100644 index 00000000..94268cd3 --- /dev/null +++ b/docs/tasks/M16-GAP-00051.md @@ -0,0 +1,37 @@ +# M16-GAP-00051: modifier:GREASE_PENCIL_DASH LOCAL_EXACT slice + +- task: M16-GAP-00051 +- parent: M16-GAP-00050 +- status: in_progress +- gap: modifier:GREASE_PENCIL_DASH +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_DASH 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-00051-modifier-GREASE_PENCIL_DASH.blend` +- Generator: `tools/web/generated/M16-GAP-00051.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-00051.py -- tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00051 +node tools/web/check-generated-gap.mjs --task M16-GAP-00051 + +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-00051/` +- Status: `docs/status/M16-GAP-00051.md` +- Manifest: `tests/golden/M16-GAP-00051/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00051 --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-00052.md b/docs/tasks/M16-GAP-00052.md new file mode 100644 index 00000000..69832439 --- /dev/null +++ b/docs/tasks/M16-GAP-00052.md @@ -0,0 +1,37 @@ +# M16-GAP-00052: modifier:GREASE_PENCIL_ENVELOPE LOCAL_EXACT slice + +- task: M16-GAP-00052 +- parent: M16-GAP-00051 +- status: in_progress +- gap: modifier:GREASE_PENCIL_ENVELOPE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_ENVELOPE 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-00052-modifier-GREASE_PENCIL_ENVELOPE.blend` +- Generator: `tools/web/generated/M16-GAP-00052.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-00052.py -- tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00052 +node tools/web/check-generated-gap.mjs --task M16-GAP-00052 + +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-00052/` +- Status: `docs/status/M16-GAP-00052.md` +- Manifest: `tests/golden/M16-GAP-00052/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00052 --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-00053.md b/docs/tasks/M16-GAP-00053.md new file mode 100644 index 00000000..cfba467d --- /dev/null +++ b/docs/tasks/M16-GAP-00053.md @@ -0,0 +1,37 @@ +# M16-GAP-00053: modifier:GREASE_PENCIL_HOOK LOCAL_EXACT slice + +- task: M16-GAP-00053 +- parent: M16-GAP-00052 +- status: in_progress +- gap: modifier:GREASE_PENCIL_HOOK +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_HOOK 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-00053-modifier-GREASE_PENCIL_HOOK.blend` +- Generator: `tools/web/generated/M16-GAP-00053.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-00053.py -- tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00053 +node tools/web/check-generated-gap.mjs --task M16-GAP-00053 + +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-00053/` +- Status: `docs/status/M16-GAP-00053.md` +- Manifest: `tests/golden/M16-GAP-00053/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00053 --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-00054.md b/docs/tasks/M16-GAP-00054.md new file mode 100644 index 00000000..0b5b11a0 --- /dev/null +++ b/docs/tasks/M16-GAP-00054.md @@ -0,0 +1,37 @@ +# M16-GAP-00054: modifier:GREASE_PENCIL_LATTICE LOCAL_EXACT slice + +- task: M16-GAP-00054 +- parent: M16-GAP-00053 +- status: in_progress +- gap: modifier:GREASE_PENCIL_LATTICE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_LATTICE 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-00054-modifier-GREASE_PENCIL_LATTICE.blend` +- Generator: `tools/web/generated/M16-GAP-00054.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-00054.py -- tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00054 +node tools/web/check-generated-gap.mjs --task M16-GAP-00054 + +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-00054/` +- Status: `docs/status/M16-GAP-00054.md` +- Manifest: `tests/golden/M16-GAP-00054/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00054 --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-00055.md b/docs/tasks/M16-GAP-00055.md new file mode 100644 index 00000000..a271d92d --- /dev/null +++ b/docs/tasks/M16-GAP-00055.md @@ -0,0 +1,37 @@ +# M16-GAP-00055: modifier:GREASE_PENCIL_LENGTH LOCAL_EXACT slice + +- task: M16-GAP-00055 +- parent: M16-GAP-00054 +- status: in_progress +- gap: modifier:GREASE_PENCIL_LENGTH +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_LENGTH 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-00055-modifier-GREASE_PENCIL_LENGTH.blend` +- Generator: `tools/web/generated/M16-GAP-00055.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-00055.py -- tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00055 +node tools/web/check-generated-gap.mjs --task M16-GAP-00055 + +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-00055/` +- Status: `docs/status/M16-GAP-00055.md` +- Manifest: `tests/golden/M16-GAP-00055/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00055 --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-00056.md b/docs/tasks/M16-GAP-00056.md new file mode 100644 index 00000000..081cc7bb --- /dev/null +++ b/docs/tasks/M16-GAP-00056.md @@ -0,0 +1,37 @@ +# M16-GAP-00056: modifier:GREASE_PENCIL_MIRROR LOCAL_EXACT slice + +- task: M16-GAP-00056 +- parent: M16-GAP-00055 +- status: in_progress +- gap: modifier:GREASE_PENCIL_MIRROR +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_MIRROR 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-00056-modifier-GREASE_PENCIL_MIRROR.blend` +- Generator: `tools/web/generated/M16-GAP-00056.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-00056.py -- tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00056 +node tools/web/check-generated-gap.mjs --task M16-GAP-00056 + +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-00056/` +- Status: `docs/status/M16-GAP-00056.md` +- Manifest: `tests/golden/M16-GAP-00056/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00056 --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-00057.md b/docs/tasks/M16-GAP-00057.md new file mode 100644 index 00000000..b3e221cc --- /dev/null +++ b/docs/tasks/M16-GAP-00057.md @@ -0,0 +1,37 @@ +# M16-GAP-00057: modifier:GREASE_PENCIL_MULTIPLY LOCAL_EXACT slice + +- task: M16-GAP-00057 +- parent: M16-GAP-00056 +- status: in_progress +- gap: modifier:GREASE_PENCIL_MULTIPLY +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_MULTIPLY 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-00057-modifier-GREASE_PENCIL_MULTIPLY.blend` +- Generator: `tools/web/generated/M16-GAP-00057.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-00057.py -- tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00057 +node tools/web/check-generated-gap.mjs --task M16-GAP-00057 + +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-00057/` +- Status: `docs/status/M16-GAP-00057.md` +- Manifest: `tests/golden/M16-GAP-00057/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00057 --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-00058.md b/docs/tasks/M16-GAP-00058.md new file mode 100644 index 00000000..24711d44 --- /dev/null +++ b/docs/tasks/M16-GAP-00058.md @@ -0,0 +1,37 @@ +# M16-GAP-00058: modifier:GREASE_PENCIL_NOISE LOCAL_EXACT slice + +- task: M16-GAP-00058 +- parent: M16-GAP-00057 +- status: in_progress +- gap: modifier:GREASE_PENCIL_NOISE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_NOISE 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-00058-modifier-GREASE_PENCIL_NOISE.blend` +- Generator: `tools/web/generated/M16-GAP-00058.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-00058.py -- tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00058 +node tools/web/check-generated-gap.mjs --task M16-GAP-00058 + +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-00058/` +- Status: `docs/status/M16-GAP-00058.md` +- Manifest: `tests/golden/M16-GAP-00058/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00058 --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-00059.md b/docs/tasks/M16-GAP-00059.md new file mode 100644 index 00000000..f8911eed --- /dev/null +++ b/docs/tasks/M16-GAP-00059.md @@ -0,0 +1,37 @@ +# M16-GAP-00059: modifier:GREASE_PENCIL_OFFSET LOCAL_EXACT slice + +- task: M16-GAP-00059 +- parent: M16-GAP-00058 +- status: in_progress +- gap: modifier:GREASE_PENCIL_OFFSET +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_OFFSET 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-00059-modifier-GREASE_PENCIL_OFFSET.blend` +- Generator: `tools/web/generated/M16-GAP-00059.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-00059.py -- tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00059 +node tools/web/check-generated-gap.mjs --task M16-GAP-00059 + +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-00059/` +- Status: `docs/status/M16-GAP-00059.md` +- Manifest: `tests/golden/M16-GAP-00059/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00059 --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-00060.md b/docs/tasks/M16-GAP-00060.md new file mode 100644 index 00000000..98277c8d --- /dev/null +++ b/docs/tasks/M16-GAP-00060.md @@ -0,0 +1,37 @@ +# M16-GAP-00060: modifier:GREASE_PENCIL_OPACITY LOCAL_EXACT slice + +- task: M16-GAP-00060 +- parent: M16-GAP-00059 +- status: in_progress +- gap: modifier:GREASE_PENCIL_OPACITY +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_OPACITY 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-00060-modifier-GREASE_PENCIL_OPACITY.blend` +- Generator: `tools/web/generated/M16-GAP-00060.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-00060.py -- tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00060 +node tools/web/check-generated-gap.mjs --task M16-GAP-00060 + +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-00060/` +- Status: `docs/status/M16-GAP-00060.md` +- Manifest: `tests/golden/M16-GAP-00060/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00060 --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-00061.md b/docs/tasks/M16-GAP-00061.md new file mode 100644 index 00000000..8d9bb3c0 --- /dev/null +++ b/docs/tasks/M16-GAP-00061.md @@ -0,0 +1,37 @@ +# M16-GAP-00061: modifier:GREASE_PENCIL_OUTLINE LOCAL_EXACT slice + +- task: M16-GAP-00061 +- parent: M16-GAP-00060 +- status: in_progress +- gap: modifier:GREASE_PENCIL_OUTLINE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_OUTLINE 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-00061-modifier-GREASE_PENCIL_OUTLINE.blend` +- Generator: `tools/web/generated/M16-GAP-00061.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-00061.py -- tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00061 +node tools/web/check-generated-gap.mjs --task M16-GAP-00061 + +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-00061/` +- Status: `docs/status/M16-GAP-00061.md` +- Manifest: `tests/golden/M16-GAP-00061/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00061 --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-00062.md b/docs/tasks/M16-GAP-00062.md new file mode 100644 index 00000000..ed4afa64 --- /dev/null +++ b/docs/tasks/M16-GAP-00062.md @@ -0,0 +1,37 @@ +# M16-GAP-00062: modifier:GREASE_PENCIL_SHRINKWRAP LOCAL_EXACT slice + +- task: M16-GAP-00062 +- parent: M16-GAP-00061 +- status: in_progress +- gap: modifier:GREASE_PENCIL_SHRINKWRAP +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SHRINKWRAP 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-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend` +- Generator: `tools/web/generated/M16-GAP-00062.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-00062.py -- tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00062 +node tools/web/check-generated-gap.mjs --task M16-GAP-00062 + +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-00062/` +- Status: `docs/status/M16-GAP-00062.md` +- Manifest: `tests/golden/M16-GAP-00062/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00062 --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-00063.md b/docs/tasks/M16-GAP-00063.md new file mode 100644 index 00000000..0f8b10a0 --- /dev/null +++ b/docs/tasks/M16-GAP-00063.md @@ -0,0 +1,37 @@ +# M16-GAP-00063: modifier:GREASE_PENCIL_SIMPLIFY LOCAL_EXACT slice + +- task: M16-GAP-00063 +- parent: M16-GAP-00062 +- status: in_progress +- gap: modifier:GREASE_PENCIL_SIMPLIFY +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SIMPLIFY 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-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend` +- Generator: `tools/web/generated/M16-GAP-00063.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-00063.py -- tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00063 +node tools/web/check-generated-gap.mjs --task M16-GAP-00063 + +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-00063/` +- Status: `docs/status/M16-GAP-00063.md` +- Manifest: `tests/golden/M16-GAP-00063/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00063 --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-00064.md b/docs/tasks/M16-GAP-00064.md new file mode 100644 index 00000000..e581c33e --- /dev/null +++ b/docs/tasks/M16-GAP-00064.md @@ -0,0 +1,37 @@ +# M16-GAP-00064: modifier:GREASE_PENCIL_SMOOTH LOCAL_EXACT slice + +- task: M16-GAP-00064 +- parent: M16-GAP-00063 +- status: in_progress +- gap: modifier:GREASE_PENCIL_SMOOTH +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SMOOTH 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-00064-modifier-GREASE_PENCIL_SMOOTH.blend` +- Generator: `tools/web/generated/M16-GAP-00064.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-00064.py -- tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00064 +node tools/web/check-generated-gap.mjs --task M16-GAP-00064 + +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-00064/` +- Status: `docs/status/M16-GAP-00064.md` +- Manifest: `tests/golden/M16-GAP-00064/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00064 --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-00065.md b/docs/tasks/M16-GAP-00065.md new file mode 100644 index 00000000..3ed9712a --- /dev/null +++ b/docs/tasks/M16-GAP-00065.md @@ -0,0 +1,37 @@ +# M16-GAP-00065: modifier:GREASE_PENCIL_SUBDIV LOCAL_EXACT slice + +- task: M16-GAP-00065 +- parent: M16-GAP-00064 +- status: in_progress +- gap: modifier:GREASE_PENCIL_SUBDIV +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SUBDIV 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-00065-modifier-GREASE_PENCIL_SUBDIV.blend` +- Generator: `tools/web/generated/M16-GAP-00065.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-00065.py -- tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00065 +node tools/web/check-generated-gap.mjs --task M16-GAP-00065 + +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-00065/` +- Status: `docs/status/M16-GAP-00065.md` +- Manifest: `tests/golden/M16-GAP-00065/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00065 --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-00066.md b/docs/tasks/M16-GAP-00066.md new file mode 100644 index 00000000..7d299d9d --- /dev/null +++ b/docs/tasks/M16-GAP-00066.md @@ -0,0 +1,37 @@ +# M16-GAP-00066: modifier:GREASE_PENCIL_TEXTURE LOCAL_EXACT slice + +- task: M16-GAP-00066 +- parent: M16-GAP-00065 +- status: in_progress +- gap: modifier:GREASE_PENCIL_TEXTURE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_TEXTURE 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-00066-modifier-GREASE_PENCIL_TEXTURE.blend` +- Generator: `tools/web/generated/M16-GAP-00066.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-00066.py -- tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00066 +node tools/web/check-generated-gap.mjs --task M16-GAP-00066 + +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-00066/` +- Status: `docs/status/M16-GAP-00066.md` +- Manifest: `tests/golden/M16-GAP-00066/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00066 --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-00067.md b/docs/tasks/M16-GAP-00067.md new file mode 100644 index 00000000..797b1d81 --- /dev/null +++ b/docs/tasks/M16-GAP-00067.md @@ -0,0 +1,37 @@ +# M16-GAP-00067: modifier:GREASE_PENCIL_THICKNESS LOCAL_EXACT slice + +- task: M16-GAP-00067 +- parent: M16-GAP-00066 +- status: in_progress +- gap: modifier:GREASE_PENCIL_THICKNESS +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_THICKNESS 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-00067-modifier-GREASE_PENCIL_THICKNESS.blend` +- Generator: `tools/web/generated/M16-GAP-00067.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-00067.py -- tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00067 +node tools/web/check-generated-gap.mjs --task M16-GAP-00067 + +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-00067/` +- Status: `docs/status/M16-GAP-00067.md` +- Manifest: `tests/golden/M16-GAP-00067/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00067 --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-00068.md b/docs/tasks/M16-GAP-00068.md new file mode 100644 index 00000000..194dbdbe --- /dev/null +++ b/docs/tasks/M16-GAP-00068.md @@ -0,0 +1,37 @@ +# M16-GAP-00068: modifier:GREASE_PENCIL_TIME LOCAL_EXACT slice + +- task: M16-GAP-00068 +- parent: M16-GAP-00067 +- status: in_progress +- gap: modifier:GREASE_PENCIL_TIME +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_TIME 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-00068-modifier-GREASE_PENCIL_TIME.blend` +- Generator: `tools/web/generated/M16-GAP-00068.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-00068.py -- tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00068 +node tools/web/check-generated-gap.mjs --task M16-GAP-00068 + +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-00068/` +- Status: `docs/status/M16-GAP-00068.md` +- Manifest: `tests/golden/M16-GAP-00068/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00068 --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-00069.md b/docs/tasks/M16-GAP-00069.md new file mode 100644 index 00000000..45ce002f --- /dev/null +++ b/docs/tasks/M16-GAP-00069.md @@ -0,0 +1,37 @@ +# M16-GAP-00069: modifier:GREASE_PENCIL_TINT LOCAL_EXACT slice + +- task: M16-GAP-00069 +- parent: M16-GAP-00068 +- status: in_progress +- gap: modifier:GREASE_PENCIL_TINT +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_TINT 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-00069-modifier-GREASE_PENCIL_TINT.blend` +- Generator: `tools/web/generated/M16-GAP-00069.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-00069.py -- tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00069 +node tools/web/check-generated-gap.mjs --task M16-GAP-00069 + +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-00069/` +- Status: `docs/status/M16-GAP-00069.md` +- Manifest: `tests/golden/M16-GAP-00069/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00069 --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-00070.md b/docs/tasks/M16-GAP-00070.md new file mode 100644 index 00000000..0945c68c --- /dev/null +++ b/docs/tasks/M16-GAP-00070.md @@ -0,0 +1,37 @@ +# M16-GAP-00070: modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE LOCAL_EXACT slice + +- task: M16-GAP-00070 +- parent: M16-GAP-00069 +- status: in_progress +- gap: modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE 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-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend` +- Generator: `tools/web/generated/M16-GAP-00070.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-00070.py -- tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00070 +node tools/web/check-generated-gap.mjs --task M16-GAP-00070 + +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-00070/` +- Status: `docs/status/M16-GAP-00070.md` +- Manifest: `tests/golden/M16-GAP-00070/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00070 --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-00071.md b/docs/tasks/M16-GAP-00071.md new file mode 100644 index 00000000..4844ecb5 --- /dev/null +++ b/docs/tasks/M16-GAP-00071.md @@ -0,0 +1,37 @@ +# M16-GAP-00071: modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY LOCAL_EXACT slice + +- task: M16-GAP-00071 +- parent: M16-GAP-00070 +- status: in_progress +- gap: modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY +- ownerFamily: MODIFIER +- targetImplementationClass: LOCAL_EXACT + +## 目标 + +Make the same minimal fixture produce observable modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY 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-00071-modifier-GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY.blend` +- Generator: `tools/web/generated/M16-GAP-00071.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-00071.py -- tests/files/web/generated/M16-GAP-00071-modifier-GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY.blend +npm --prefix web run test:generated-gap -- --task M16-GAP-00071 +node tools/web/check-generated-gap.mjs --task M16-GAP-00071 + +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-00071/` +- Status: `docs/status/M16-GAP-00071.md` +- Manifest: `tests/golden/M16-GAP-00071/manifest.json` +- Handoff: `node tools/web/check-task-context.mjs --task M16-GAP-00071 --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-00001-datablock-Action.blend b/tests/files/web/generated/M16-GAP-00001-datablock-Action.blend new file mode 100644 index 00000000..e4414713 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00001-datablock-Action.blend differ diff --git a/tests/files/web/generated/M16-GAP-00001-datablock-Action.blend1 b/tests/files/web/generated/M16-GAP-00001-datablock-Action.blend1 new file mode 100644 index 00000000..0ed1daba Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00001-datablock-Action.blend1 differ diff --git a/tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend b/tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend new file mode 100644 index 00000000..fcd8754c Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend differ diff --git a/tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend b/tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend new file mode 100644 index 00000000..d615cb77 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend differ diff --git a/tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend b/tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend new file mode 100644 index 00000000..bd885dfe Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend differ diff --git a/tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend b/tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend new file mode 100644 index 00000000..d0574630 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend differ diff --git a/tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend b/tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend new file mode 100644 index 00000000..6e9b86cd Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend differ diff --git a/tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend b/tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend new file mode 100644 index 00000000..d5f8b208 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend differ diff --git a/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend b/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend new file mode 100644 index 00000000..dfee7529 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend differ diff --git a/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend1 b/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend1 new file mode 100644 index 00000000..0824ab9c Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend1 differ diff --git a/tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend b/tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend new file mode 100644 index 00000000..c12e4529 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend differ diff --git a/tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend b/tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend new file mode 100644 index 00000000..143791ad Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend differ diff --git a/tests/files/web/generated/M16-GAP-00011-datablock-Library.blend b/tests/files/web/generated/M16-GAP-00011-datablock-Library.blend new file mode 100644 index 00000000..c48e6bc7 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00011-datablock-Library.blend differ diff --git a/tests/files/web/generated/M16-GAP-00012-datablock-Light.blend b/tests/files/web/generated/M16-GAP-00012-datablock-Light.blend new file mode 100644 index 00000000..08290971 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00012-datablock-Light.blend differ diff --git a/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend b/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend new file mode 100644 index 00000000..4365685c Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend differ diff --git a/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend1 b/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend1 new file mode 100644 index 00000000..996f5c18 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend1 differ diff --git a/tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend b/tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend new file mode 100644 index 00000000..074c8137 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend differ diff --git a/tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend b/tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend new file mode 100644 index 00000000..ccf72263 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend differ diff --git a/tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend b/tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend new file mode 100644 index 00000000..06455f09 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend differ diff --git a/tests/files/web/generated/M16-GAP-00017-datablock-Object.blend b/tests/files/web/generated/M16-GAP-00017-datablock-Object.blend new file mode 100644 index 00000000..5bb693bf Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00017-datablock-Object.blend differ diff --git a/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend b/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend new file mode 100644 index 00000000..6319bc60 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend differ diff --git a/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend1 b/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend1 new file mode 100644 index 00000000..5588e8fc Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend1 differ diff --git a/tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend b/tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend new file mode 100644 index 00000000..e4ac696a Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend differ diff --git a/tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend b/tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend new file mode 100644 index 00000000..dab861d8 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend differ diff --git a/tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend b/tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend new file mode 100644 index 00000000..9cf364c5 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend differ diff --git a/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend b/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend new file mode 100644 index 00000000..9d56e05c Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend differ diff --git a/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend1 b/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend1 new file mode 100644 index 00000000..569c984d Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend1 differ diff --git a/tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend b/tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend new file mode 100644 index 00000000..3941467b Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend differ diff --git a/tests/files/web/generated/M16-GAP-00024-datablock-Text.blend b/tests/files/web/generated/M16-GAP-00024-datablock-Text.blend new file mode 100644 index 00000000..7798f40e Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00024-datablock-Text.blend differ diff --git a/tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend b/tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend new file mode 100644 index 00000000..3ea877ef Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend differ diff --git a/tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend b/tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend new file mode 100644 index 00000000..2e0139a3 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend differ diff --git a/tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend b/tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend new file mode 100644 index 00000000..ad4404d5 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend differ diff --git a/tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend b/tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend new file mode 100644 index 00000000..f34c566b Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend differ diff --git a/tests/files/web/generated/M16-GAP-00029-datablock-World.blend b/tests/files/web/generated/M16-GAP-00029-datablock-World.blend new file mode 100644 index 00000000..274cd997 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00029-datablock-World.blend differ diff --git a/tests/files/web/generated/M16-GAP-00029-datablock-World.blend1 b/tests/files/web/generated/M16-GAP-00029-datablock-World.blend1 new file mode 100644 index 00000000..1522c9b1 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00029-datablock-World.blend1 differ diff --git a/tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend b/tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend new file mode 100644 index 00000000..57606ddc Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend b/tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend new file mode 100644 index 00000000..dd6e77b4 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend differ diff --git a/tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend b/tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend new file mode 100644 index 00000000..65f837ed Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend differ diff --git a/tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend b/tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend new file mode 100644 index 00000000..3fea58ab Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend differ diff --git a/tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend b/tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend new file mode 100644 index 00000000..f1a73da0 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend differ diff --git a/tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend b/tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend new file mode 100644 index 00000000..95c025f0 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend differ diff --git a/tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend b/tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend new file mode 100644 index 00000000..2d1e212b Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend differ diff --git a/tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend b/tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend new file mode 100644 index 00000000..d555de09 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend differ diff --git a/tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend b/tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend new file mode 100644 index 00000000..03102914 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend differ diff --git a/tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend b/tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend new file mode 100644 index 00000000..7b00693b Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend b/tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend new file mode 100644 index 00000000..895c438e Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend differ diff --git a/tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend b/tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend new file mode 100644 index 00000000..ddfd4d71 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend b/tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend new file mode 100644 index 00000000..7ad768ca Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend b/tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend new file mode 100644 index 00000000..acb18574 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend differ diff --git a/tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend b/tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend new file mode 100644 index 00000000..152250a3 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend differ diff --git a/tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend b/tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend new file mode 100644 index 00000000..b61c3033 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend b/tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend new file mode 100644 index 00000000..366e9827 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend differ diff --git a/tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend b/tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend b/tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend differ diff --git a/tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend b/tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend differ diff --git a/tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend b/tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend differ diff --git a/tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend b/tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend differ diff --git a/tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend b/tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend b/tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend differ diff --git a/tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend b/tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend b/tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend differ diff --git a/tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend b/tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend differ diff --git a/tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend b/tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend differ diff --git a/tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend b/tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend b/tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend differ diff --git a/tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend b/tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend differ diff --git a/tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend b/tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend b/tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend differ diff --git a/tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend b/tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend differ diff --git a/tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend b/tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend differ diff --git a/tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend b/tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend differ diff --git a/tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend b/tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend differ diff --git a/tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend b/tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend differ diff --git a/tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend b/tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend differ diff --git a/tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend b/tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend differ diff --git a/tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend b/tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend new file mode 100644 index 00000000..40273a11 Binary files /dev/null and b/tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend differ diff --git a/tests/files/web/generated/WebGapLibrary.blend b/tests/files/web/generated/WebGapLibrary.blend new file mode 100644 index 00000000..d8599e1d Binary files /dev/null and b/tests/files/web/generated/WebGapLibrary.blend differ diff --git a/tests/files/web/generated/m16-armature-modifier-reopen-_h313f11.blend1 b/tests/files/web/generated/m16-armature-modifier-reopen-_h313f11.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-armature-modifier-reopen-gxasjymt.blend1 b/tests/files/web/generated/m16-armature-modifier-reopen-gxasjymt.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-armature-modifier-reopen-nqdj7o5e.blend1 b/tests/files/web/generated/m16-armature-modifier-reopen-nqdj7o5e.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-armature-modifier-reopen-o7bz7r6f.blend1 b/tests/files/web/generated/m16-armature-modifier-reopen-o7bz7r6f.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-array-modifier-reopen-amanh0lg.blend1 b/tests/files/web/generated/m16-array-modifier-reopen-amanh0lg.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-array-modifier-reopen-f2604i1p.blend1 b/tests/files/web/generated/m16-array-modifier-reopen-f2604i1p.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-bevel-modifier-reopen-7jk5r7jt.blend1 b/tests/files/web/generated/m16-bevel-modifier-reopen-7jk5r7jt.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-bevel-modifier-reopen-k4mww0ym.blend1 b/tests/files/web/generated/m16-bevel-modifier-reopen-k4mww0ym.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-bevel-modifier-reopen-wkcewedm.blend1 b/tests/files/web/generated/m16-bevel-modifier-reopen-wkcewedm.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-boolean-modifier-reopen-5c8tre34.blend1 b/tests/files/web/generated/m16-boolean-modifier-reopen-5c8tre34.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-boolean-modifier-reopen-9fwjeeq3.blend1 b/tests/files/web/generated/m16-boolean-modifier-reopen-9fwjeeq3.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-boolean-modifier-reopen-c4c4jmu1.blend1 b/tests/files/web/generated/m16-boolean-modifier-reopen-c4c4jmu1.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-boolean-modifier-reopen-robqt7dc.blend1 b/tests/files/web/generated/m16-boolean-modifier-reopen-robqt7dc.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-boolean-modifier-reopen-t3kt1sj0.blend1 b/tests/files/web/generated/m16-boolean-modifier-reopen-t3kt1sj0.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-build-modifier-reopen-cwkfiwzs.blend1 b/tests/files/web/generated/m16-build-modifier-reopen-cwkfiwzs.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-build-modifier-reopen-d04y3n96.blend1 b/tests/files/web/generated/m16-build-modifier-reopen-d04y3n96.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-build-modifier-reopen-ie1l4na9.blend1 b/tests/files/web/generated/m16-build-modifier-reopen-ie1l4na9.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-build-modifier-reopen-jqdqctpx.blend1 b/tests/files/web/generated/m16-build-modifier-reopen-jqdqctpx.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-cast-modifier-reopen-02vjafdj.blend1 b/tests/files/web/generated/m16-cast-modifier-reopen-02vjafdj.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-cast-modifier-reopen-8ool3kbz.blend1 b/tests/files/web/generated/m16-cast-modifier-reopen-8ool3kbz.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-cast-modifier-reopen-j7f2kk7k.blend1 b/tests/files/web/generated/m16-cast-modifier-reopen-j7f2kk7k.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-cast-modifier-reopen-n19cv64q.blend1 b/tests/files/web/generated/m16-cast-modifier-reopen-n19cv64q.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-cloth-modifier-reopen-3piita_r.blend1 b/tests/files/web/generated/m16-cloth-modifier-reopen-3piita_r.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-cloth-modifier-reopen-vrs2og0r.blend1 b/tests/files/web/generated/m16-cloth-modifier-reopen-vrs2og0r.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-collision-reopen-vdszt6zl.blend1 b/tests/files/web/generated/m16-collision-reopen-vdszt6zl.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-collision-reopen-vvd633rd.blend1 b/tests/files/web/generated/m16-collision-reopen-vvd633rd.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-1aghhvup.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-1aghhvup.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-4jwsxs8x.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-4jwsxs8x.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-508uylh6.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-508uylh6.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-52_i6mby.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-52_i6mby.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-69cr1j4r.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-69cr1j4r.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-6_jt57rz.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-6_jt57rz.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-6dhl53ql.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-6dhl53ql.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-6gnredpf.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-6gnredpf.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-6krstrm1.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-6krstrm1.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-6ohild7w.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-6ohild7w.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-746ef_qd.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-746ef_qd.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-74q1f5da.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-74q1f5da.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-_3gpfpyu.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-_3gpfpyu.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-_6ok9ark.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-_6ok9ark.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-_fblu0p9.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-_fblu0p9.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-_imkk_7o.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-_imkk_7o.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-bobwy_hv.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-bobwy_hv.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-cxpr_roz.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-cxpr_roz.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-d662jd_w.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-d662jd_w.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-e4iabhw_.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-e4iabhw_.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-e5mnum47.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-e5mnum47.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-ei96ctq5.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-ei96ctq5.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-enpd9s63.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-enpd9s63.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-f87lm1ky.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-f87lm1ky.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-fr9p9fca.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-fr9p9fca.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-fx8k3pcp.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-fx8k3pcp.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-gg5476nh.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-gg5476nh.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-gkaflk_e.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-gkaflk_e.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-gtjzlgb2.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-gtjzlgb2.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-h49l0i4g.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-h49l0i4g.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-h74akucs.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-h74akucs.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-hj4zyxh8.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-hj4zyxh8.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-hz9_meam.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-hz9_meam.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-hzy2dsdl.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-hzy2dsdl.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-ihyytuxb.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-ihyytuxb.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-iyk0biv7.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-iyk0biv7.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-jlkphvss.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-jlkphvss.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-jllmylu1.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-jllmylu1.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-juw3pyod.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-juw3pyod.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-kavolixm.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-kavolixm.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-kcju3dkx.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-kcju3dkx.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-kfbk4w9c.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-kfbk4w9c.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-kjp64qpi.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-kjp64qpi.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-kmfp3cgw.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-kmfp3cgw.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-kn_q9njn.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-kn_q9njn.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-najkvbzc.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-najkvbzc.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-np1x67_0.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-np1x67_0.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-nr6p9143.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-nr6p9143.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-o4pn24_w.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-o4pn24_w.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-ofp52vvi.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-ofp52vvi.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-onnxlfm8.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-onnxlfm8.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-owc564mx.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-owc564mx.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-p3r2t0k1.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-p3r2t0k1.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-pll4_mnv.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-pll4_mnv.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-pvkxr4gd.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-pvkxr4gd.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-px1kxmkc.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-px1kxmkc.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-qnnczibn.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-qnnczibn.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-qsc2h8uu.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-qsc2h8uu.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-rpgi619f.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-rpgi619f.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-rvnjiu51.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-rvnjiu51.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-rwqzwjn5.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-rwqzwjn5.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-sekdp3ip.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-sekdp3ip.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-t5_mht12.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-t5_mht12.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-vbjqnexq.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-vbjqnexq.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-wqh77a2m.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-wqh77a2m.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-x_8ztooe.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-x_8ztooe.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-xrugqrto.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-xrugqrto.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-xyaqgh82.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-xyaqgh82.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-ykbwf67b.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-ykbwf67b.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-yqkvre3v.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-yqkvre3v.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-zh1x2uqh.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-zh1x2uqh.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-generic-modifier-reopen-zo2ilg04.blend1 b/tests/files/web/generated/m16-generic-modifier-reopen-zo2ilg04.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-library-reopen-a_o61bmd.blend1 b/tests/files/web/generated/m16-library-reopen-a_o61bmd.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-library-reopen-euqel05v.blend1 b/tests/files/web/generated/m16-library-reopen-euqel05v.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-library-reopen-f2sth1ms.blend1 b/tests/files/web/generated/m16-library-reopen-f2sth1ms.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-library-reopen-i2xnswhr.blend1 b/tests/files/web/generated/m16-library-reopen-i2xnswhr.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-library-reopen-uv3_d89n.blend1 b/tests/files/web/generated/m16-library-reopen-uv3_d89n.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-light-reopen-0fbn57ic.blend1 b/tests/files/web/generated/m16-light-reopen-0fbn57ic.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-light-reopen-hy2lr8tv.blend1 b/tests/files/web/generated/m16-light-reopen-hy2lr8tv.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-light-reopen-ltby_xqd.blend1 b/tests/files/web/generated/m16-light-reopen-ltby_xqd.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-light-reopen-o5dh1dh3.blend1 b/tests/files/web/generated/m16-light-reopen-o5dh1dh3.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-light-reopen-uqg4gsaw.blend1 b/tests/files/web/generated/m16-light-reopen-uqg4gsaw.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-light-reopen-zedx8s34.blend1 b/tests/files/web/generated/m16-light-reopen-zedx8s34.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-material-reopen-64z4xel4.blend1 b/tests/files/web/generated/m16-material-reopen-64z4xel4.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-material-reopen-_cbyc9bt.blend1 b/tests/files/web/generated/m16-material-reopen-_cbyc9bt.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-material-reopen-mp2i8_6c.blend1 b/tests/files/web/generated/m16-material-reopen-mp2i8_6c.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-mesh-reopen-74ilsxk_.blend1 b/tests/files/web/generated/m16-mesh-reopen-74ilsxk_.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-mesh-reopen-l2jrscfb.blend1 b/tests/files/web/generated/m16-mesh-reopen-l2jrscfb.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-mesh-reopen-w14m2aju.blend1 b/tests/files/web/generated/m16-mesh-reopen-w14m2aju.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-metaball-reopen-6fzhkq3_.blend1 b/tests/files/web/generated/m16-metaball-reopen-6fzhkq3_.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-metaball-reopen-l4j1lx20.blend1 b/tests/files/web/generated/m16-metaball-reopen-l4j1lx20.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-metaball-reopen-sk3nlfi5.blend1 b/tests/files/web/generated/m16-metaball-reopen-sk3nlfi5.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-nodetree-reopen-2ade748f.blend1 b/tests/files/web/generated/m16-nodetree-reopen-2ade748f.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-nodetree-reopen-mqzq_o10.blend1 b/tests/files/web/generated/m16-nodetree-reopen-mqzq_o10.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-nodetree-reopen-qyaot_y6.blend1 b/tests/files/web/generated/m16-nodetree-reopen-qyaot_y6.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-object-reopen-aol3hp8g.blend1 b/tests/files/web/generated/m16-object-reopen-aol3hp8g.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-object-reopen-eamt7tc7.blend1 b/tests/files/web/generated/m16-object-reopen-eamt7tc7.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-object-reopen-hxx1dwck.blend1 b/tests/files/web/generated/m16-object-reopen-hxx1dwck.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-34i8qfvc.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-34i8qfvc.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-_cutrns5.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-_cutrns5.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-awi44iql.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-awi44iql.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-dgv57rla.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-dgv57rla.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-dpzeym9q.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-dpzeym9q.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-mo9gxc__.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-mo9gxc__.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-mr8b2nau.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-mr8b2nau.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-particle-settings-reopen-z25w8j7s.blend1 b/tests/files/web/generated/m16-particle-settings-reopen-z25w8j7s.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-pointcloud-reopen-0zd_gnu3.blend1 b/tests/files/web/generated/m16-pointcloud-reopen-0zd_gnu3.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-pointcloud-reopen-4r8fb3bm.blend1 b/tests/files/web/generated/m16-pointcloud-reopen-4r8fb3bm.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-pointcloud-reopen-f928wi9u.blend1 b/tests/files/web/generated/m16-pointcloud-reopen-f928wi9u.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-scene-reopen-63_iylge.blend1 b/tests/files/web/generated/m16-scene-reopen-63_iylge.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-scene-reopen-_k2e4r7d.blend1 b/tests/files/web/generated/m16-scene-reopen-_k2e4r7d.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-scene-reopen-p4d973qt.blend1 b/tests/files/web/generated/m16-scene-reopen-p4d973qt.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-screen-reopen-6uz58o6j.blend1 b/tests/files/web/generated/m16-screen-reopen-6uz58o6j.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-screen-reopen-bscc19pt.blend1 b/tests/files/web/generated/m16-screen-reopen-bscc19pt.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-screen-reopen-mraipxaz.blend1 b/tests/files/web/generated/m16-screen-reopen-mraipxaz.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-screen-reopen-u0ki2g0h.blend1 b/tests/files/web/generated/m16-screen-reopen-u0ki2g0h.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-sound-reopen-49xmsa53.blend1 b/tests/files/web/generated/m16-sound-reopen-49xmsa53.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-sound-reopen-emmej6t3.blend1 b/tests/files/web/generated/m16-sound-reopen-emmej6t3.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-sound-reopen-gril9iih.blend1 b/tests/files/web/generated/m16-sound-reopen-gril9iih.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-sound-reopen-lm9_f3s5.blend1 b/tests/files/web/generated/m16-sound-reopen-lm9_f3s5.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-sound-reopen-tujkgz3q.blend1 b/tests/files/web/generated/m16-sound-reopen-tujkgz3q.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-speaker-reopen-3ynqut1w.blend1 b/tests/files/web/generated/m16-speaker-reopen-3ynqut1w.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-speaker-reopen-eyc_sbiz.blend1 b/tests/files/web/generated/m16-speaker-reopen-eyc_sbiz.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-speaker-reopen-t__k7swa.blend1 b/tests/files/web/generated/m16-speaker-reopen-t__k7swa.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-text-reopen-0iigxii0.blend1 b/tests/files/web/generated/m16-text-reopen-0iigxii0.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-text-reopen-2rhzjcre.blend1 b/tests/files/web/generated/m16-text-reopen-2rhzjcre.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-text-reopen-beo_c27v.blend1 b/tests/files/web/generated/m16-text-reopen-beo_c27v.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-text-reopen-rf7ecljk.blend1 b/tests/files/web/generated/m16-text-reopen-rf7ecljk.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-texture-reopen-9f03_9l4.blend1 b/tests/files/web/generated/m16-texture-reopen-9f03_9l4.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-texture-reopen-lexzbvjt.blend1 b/tests/files/web/generated/m16-texture-reopen-lexzbvjt.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-texture-reopen-x7z41b6m.blend1 b/tests/files/web/generated/m16-texture-reopen-x7z41b6m.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-volume-reopen-i98om7o9.blend1 b/tests/files/web/generated/m16-volume-reopen-i98om7o9.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-volume-reopen-idauslqz.blend1 b/tests/files/web/generated/m16-volume-reopen-idauslqz.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-window-manager-reopen-_bxszg_d.blend1 b/tests/files/web/generated/m16-window-manager-reopen-_bxszg_d.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-window-manager-reopen-p_04zcst.blend1 b/tests/files/web/generated/m16-window-manager-reopen-p_04zcst.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-workspace-reopen-db88awms.blend1 b/tests/files/web/generated/m16-workspace-reopen-db88awms.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-workspace-reopen-haqswgr9.blend1 b/tests/files/web/generated/m16-workspace-reopen-haqswgr9.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-world-reopen-04jj65qu.blend1 b/tests/files/web/generated/m16-world-reopen-04jj65qu.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-world-reopen-jz52mply.blend1 b/tests/files/web/generated/m16-world-reopen-jz52mply.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-world-reopen-tvwrz9zr.blend1 b/tests/files/web/generated/m16-world-reopen-tvwrz9zr.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-world-reopen-w5az1zvg.blend1 b/tests/files/web/generated/m16-world-reopen-w5az1zvg.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/files/web/generated/m16-world-reopen-zpf_0kql.blend1 b/tests/files/web/generated/m16-world-reopen-zpf_0kql.blend1 new file mode 100644 index 00000000..e69de29b diff --git a/tests/golden/M14-04F/chromium-input-modal-report.json b/tests/golden/M14-04F/chromium-input-modal-report.json index c7643d2e..66491eef 100644 --- a/tests/golden/M14-04F/chromium-input-modal-report.json +++ b/tests/golden/M14-04F/chromium-input-modal-report.json @@ -3,31 +3,128 @@ "task": "M14-04F", "operation": "CHROMIUM_INPUT_MODAL_BOUNDARY", "runtime": "PLAYWRIGHT_CHROMIUM", - "browserEvents": [ - { - "pointerId": 2, - "pointerType": "touch", - "phase": "down" + "backends": { + "main": { + "events": [ + { + "pointerId": 2, + "pointerType": "touch", + "phase": "down" + }, + { + "pointerId": 4, + "pointerType": "touch", + "phase": "down" + }, + { + "pointerId": 2, + "pointerType": "touch", + "phase": "cancel" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "down" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "up" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "up" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "cancel" + } + ], + "twoFinger": { + "kind": "TOUCH_NAVIGATION", + "activePointerIds": "2,4", + "cancelled": "0", + "navigationRevision": 1, + "mainCommitCount": 0 + }, + "touchCancel": { + "kind": "NONE", + "activePointerIds": "", + "cancelled": "1", + "navigationRevision": 1, + "mainCommitCount": 0 + }, + "penCommit": { + "kind": "NONE", + "activePointerIds": "", + "cancelled": "1", + "navigationRevision": 1, + "mainCommitCount": 1 + } }, - { - "pointerId": 4, - "pointerType": "touch", - "phase": "down" - }, - { - "pointerId": 9, - "pointerType": "pen", - "phase": "down" - }, - { - "pointerId": 2, - "phase": "cancel" - }, - { - "pointerId": 9, - "phase": "up" + "offscreen": { + "events": [ + { + "pointerId": 2, + "pointerType": "touch", + "phase": "down" + }, + { + "pointerId": 4, + "pointerType": "touch", + "phase": "down" + }, + { + "pointerId": 2, + "pointerType": "touch", + "phase": "cancel" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "down" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "up" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "up" + }, + { + "pointerId": 9, + "pointerType": "pen", + "phase": "cancel" + } + ], + "twoFinger": { + "kind": "TOUCH_NAVIGATION", + "activePointerIds": "2,4", + "cancelled": "0", + "navigationRevision": 1, + "mainCommitCount": 0 + }, + "touchCancel": { + "kind": "NONE", + "activePointerIds": "", + "cancelled": "1", + "navigationRevision": 1, + "mainCommitCount": 0 + }, + "penCommit": { + "kind": "NONE", + "activePointerIds": "", + "cancelled": "1", + "navigationRevision": 1, + "mainCommitCount": 1 + } } - ], + }, "guarantees": { "touchCancelMainCommit": 0, "twoFingerNavigationRevision": 1, diff --git a/tests/golden/M14-04F/manifest.json b/tests/golden/M14-04F/manifest.json index fd742f2b..5b835d5a 100644 --- a/tests/golden/M14-04F/manifest.json +++ b/tests/golden/M14-04F/manifest.json @@ -13,15 +13,23 @@ }, "checker": { "path": "tools/web/check-chromium-input-modal.mjs", - "sha256": "3ed496cbb9d24617c594025ba20f38ec79d6fee56e5d471317857230143c8295" + "sha256": "4f813623d9845b73c1a05aeccaf88d8d3b13d48e5fd83c83fa6222e13324e854" }, "protocol": { "path": "web/protocol/input-modal.ts", - "sha256": "1f8318e11dbdb7aebc4f391f8c2474e9ddd2ee872eac755c1856d1f20d78344d" + "sha256": "271e4f9e86a6aa4ebe92a43f6ce3d9b42b0931a5d12d9b40a8b4c26b2808cb23" }, "unit": { "path": "web/tests/unit/input-modal.test.mjs", - "sha256": "f56be3057561db6068e6f738a2e5e73febfe27ba5a8b210190056bd590a52c42" + "sha256": "f8105ebb59f3a369b15282a3923bdc47249f7a727794d3a89c29c1523f1aa989" + }, + "mainViewport": { + "path": "web/app/src/three-adapter/viewport.ts", + "sha256": "e8d97cb59fd4eca3789aeeb35221a70cf47ef048a5665383d809d0efc49f7119" + }, + "offscreenViewport": { + "path": "web/app/src/three-adapter/offscreen-viewport.ts", + "sha256": "4a210ae247d0e29972096da6c206f3457c2238e6061c6eb622f0ce55c6bfd439" }, "package": { "path": "web/package.json", @@ -29,7 +37,7 @@ }, "report": { "path": "tests/golden/M14-04F/chromium-input-modal-report.json", - "sha256": "11ea07732f74660a5410a696c3db7646a2dcc333d565d5318c2436c3ed93afc0" + "sha256": "dc8c386a705c4cd7335eb5f7ea0ec9d61feaae8b9529fdab423ab00898ecf911" } }, "nextTask": "M14-04G" diff --git a/tests/golden/M14-04G/chromium-layout-report.json b/tests/golden/M14-04G/chromium-layout-report.json new file mode 100644 index 00000000..cff99662 --- /dev/null +++ b/tests/golden/M14-04G/chromium-layout-report.json @@ -0,0 +1,1385 @@ +{ + "schemaVersion": 1, + "task": "M14-04G", + "operation": "CHROMIUM_RESPONSIVE_LAYOUT_BOUNDARY", + "runtime": "PLAYWRIGHT_CHROMIUM", + "viewports": [ + { + "name": "desktop-1440x900", + "width": 1440, + "height": 900 + }, + { + "name": "desktop-1280x720", + "width": 1280, + "height": 720 + }, + { + "name": "tablet-834x1112", + "width": 834, + "height": 1112 + }, + { + "name": "phone-390x844", + "width": 390, + "height": 844 + } + ], + "deviceScaleFactors": [ + 1, + 2 + ], + "backends": [ + "main", + "offscreen" + ], + "resultCount": 16, + "results": [ + { + "backend": "main", + "deviceScaleFactor": 1, + "viewport": { + "name": "desktop-1440x900", + "width": 1440, + "height": 900 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 38, + "width": 1440, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1440, + "bottom": 102, + "width": 1440, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1440, + "bottom": 72, + "width": 1440, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1440, + "bottom": 876, + "width": 1440, + "height": 774 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 1159, + "bottom": 711, + "width": 1159, + "height": 609 + }, + ".timeline-area": { + "left": 0, + "top": 712, + "right": 1159, + "bottom": 876, + "width": 1159, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 876, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1440, + "rootClientWidth": 1440, + "bodyScrollWidth": 1440, + "viewportWidth": 1440, + "appRect": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 900 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 1, + "viewport": { + "name": "desktop-1280x720", + "width": 1280, + "height": 720 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 38, + "width": 1280, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1280, + "bottom": 102, + "width": 1280, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1280, + "bottom": 72, + "width": 1280, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1280, + "bottom": 696, + "width": 1280, + "height": 594 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 999, + "bottom": 531, + "width": 999, + "height": 429 + }, + ".timeline-area": { + "left": 0, + "top": 532, + "right": 999, + "bottom": 696, + "width": 999, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 696, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1280, + "rootClientWidth": 1280, + "bodyScrollWidth": 1280, + "viewportWidth": 1280, + "appRect": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 720 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 1, + "viewport": { + "name": "tablet-834x1112", + "width": 834, + "height": 1112 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 38, + "width": 834, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 834, + "bottom": 102, + "width": 834, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 834, + "bottom": 72, + "width": 834, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 986 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 937, + "width": 834, + "height": 835 + }, + ".timeline-area": { + "left": 0, + "top": 938, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 1088, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 834, + "rootClientWidth": 834, + "bodyScrollWidth": 834, + "viewportWidth": 834, + "appRect": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 1112 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 1, + "viewport": { + "name": "phone-390x844", + "width": 390, + "height": 844 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 38, + "width": 390, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 390, + "bottom": 102, + "width": 390, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 390, + "bottom": 72, + "width": 390, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 820, + "width": 390, + "height": 718 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 669, + "width": 390, + "height": 567 + }, + ".timeline-area": { + "left": 0, + "top": 670, + "right": 390, + "bottom": 820, + "width": 390, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 820, + "right": 390, + "bottom": 844, + "width": 390, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 390, + "rootClientWidth": 390, + "bodyScrollWidth": 390, + "viewportWidth": 390, + "appRect": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 844, + "width": 390, + "height": 844 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 2, + "viewport": { + "name": "desktop-1440x900", + "width": 1440, + "height": 900 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 38, + "width": 1440, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1440, + "bottom": 102, + "width": 1440, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1440, + "bottom": 72, + "width": 1440, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1440, + "bottom": 876, + "width": 1440, + "height": 774 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 1159, + "bottom": 711, + "width": 1159, + "height": 609 + }, + ".timeline-area": { + "left": 0, + "top": 712, + "right": 1159, + "bottom": 876, + "width": 1159, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 876, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1440, + "rootClientWidth": 1440, + "bodyScrollWidth": 1440, + "viewportWidth": 1440, + "appRect": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 900 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 2, + "viewport": { + "name": "desktop-1280x720", + "width": 1280, + "height": 720 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 38, + "width": 1280, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1280, + "bottom": 102, + "width": 1280, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1280, + "bottom": 72, + "width": 1280, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1280, + "bottom": 696, + "width": 1280, + "height": 594 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 999, + "bottom": 531, + "width": 999, + "height": 429 + }, + ".timeline-area": { + "left": 0, + "top": 532, + "right": 999, + "bottom": 696, + "width": 999, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 696, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1280, + "rootClientWidth": 1280, + "bodyScrollWidth": 1280, + "viewportWidth": 1280, + "appRect": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 720 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 2, + "viewport": { + "name": "tablet-834x1112", + "width": 834, + "height": 1112 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 38, + "width": 834, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 834, + "bottom": 102, + "width": 834, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 834, + "bottom": 72, + "width": 834, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 986 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 937, + "width": 834, + "height": 835 + }, + ".timeline-area": { + "left": 0, + "top": 938, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 1088, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 834, + "rootClientWidth": 834, + "bodyScrollWidth": 834, + "viewportWidth": 834, + "appRect": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 1112 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "main", + "deviceScaleFactor": 2, + "viewport": { + "name": "phone-390x844", + "width": 390, + "height": 844 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 38, + "width": 390, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 390, + "bottom": 102, + "width": 390, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 390, + "bottom": 72, + "width": 390, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 820, + "width": 390, + "height": 718 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 669, + "width": 390, + "height": 567 + }, + ".timeline-area": { + "left": 0, + "top": 670, + "right": 390, + "bottom": 820, + "width": 390, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 820, + "right": 390, + "bottom": 844, + "width": 390, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 390, + "rootClientWidth": 390, + "bodyScrollWidth": 390, + "viewportWidth": 390, + "appRect": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 844, + "width": 390, + "height": 844 + }, + "rendererBackend": "webgl-pbr" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 1, + "viewport": { + "name": "desktop-1440x900", + "width": 1440, + "height": 900 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 38, + "width": 1440, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1440, + "bottom": 102, + "width": 1440, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1440, + "bottom": 72, + "width": 1440, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1440, + "bottom": 876, + "width": 1440, + "height": 774 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 1159, + "bottom": 711, + "width": 1159, + "height": 609 + }, + ".timeline-area": { + "left": 0, + "top": 712, + "right": 1159, + "bottom": 876, + "width": 1159, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 876, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1440, + "rootClientWidth": 1440, + "bodyScrollWidth": 1440, + "viewportWidth": 1440, + "appRect": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 900 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 1, + "viewport": { + "name": "desktop-1280x720", + "width": 1280, + "height": 720 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 38, + "width": 1280, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1280, + "bottom": 102, + "width": 1280, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1280, + "bottom": 72, + "width": 1280, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1280, + "bottom": 696, + "width": 1280, + "height": 594 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 999, + "bottom": 531, + "width": 999, + "height": 429 + }, + ".timeline-area": { + "left": 0, + "top": 532, + "right": 999, + "bottom": 696, + "width": 999, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 696, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1280, + "rootClientWidth": 1280, + "bodyScrollWidth": 1280, + "viewportWidth": 1280, + "appRect": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 720 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 1, + "viewport": { + "name": "tablet-834x1112", + "width": 834, + "height": 1112 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 38, + "width": 834, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 834, + "bottom": 102, + "width": 834, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 834, + "bottom": 72, + "width": 834, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 986 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 937, + "width": 834, + "height": 835 + }, + ".timeline-area": { + "left": 0, + "top": 938, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 1088, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 834, + "rootClientWidth": 834, + "bodyScrollWidth": 834, + "viewportWidth": 834, + "appRect": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 1112 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 1, + "viewport": { + "name": "phone-390x844", + "width": 390, + "height": 844 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 38, + "width": 390, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 390, + "bottom": 102, + "width": 390, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 390, + "bottom": 72, + "width": 390, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 820, + "width": 390, + "height": 718 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 669, + "width": 390, + "height": 567 + }, + ".timeline-area": { + "left": 0, + "top": 670, + "right": 390, + "bottom": 820, + "width": 390, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 820, + "right": 390, + "bottom": 844, + "width": 390, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 390, + "rootClientWidth": 390, + "bodyScrollWidth": 390, + "viewportWidth": 390, + "appRect": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 844, + "width": 390, + "height": 844 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 2, + "viewport": { + "name": "desktop-1440x900", + "width": 1440, + "height": 900 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 38, + "width": 1440, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1440, + "bottom": 102, + "width": 1440, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1440, + "bottom": 72, + "width": 1440, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1440, + "bottom": 876, + "width": 1440, + "height": 774 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 1159, + "bottom": 711, + "width": 1159, + "height": 609 + }, + ".timeline-area": { + "left": 0, + "top": 712, + "right": 1159, + "bottom": 876, + "width": 1159, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 876, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1440, + "rootClientWidth": 1440, + "bodyScrollWidth": 1440, + "viewportWidth": 1440, + "appRect": { + "left": 0, + "top": 0, + "right": 1440, + "bottom": 900, + "width": 1440, + "height": 900 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 2, + "viewport": { + "name": "desktop-1280x720", + "width": 1280, + "height": 720 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 38, + "width": 1280, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 1280, + "bottom": 102, + "width": 1280, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 1280, + "bottom": 72, + "width": 1280, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 1280, + "bottom": 696, + "width": 1280, + "height": 594 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 999, + "bottom": 531, + "width": 999, + "height": 429 + }, + ".timeline-area": { + "left": 0, + "top": 532, + "right": 999, + "bottom": 696, + "width": 999, + "height": 164 + }, + ".status-bar": { + "left": 0, + "top": 696, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 1280, + "rootClientWidth": 1280, + "bodyScrollWidth": 1280, + "viewportWidth": 1280, + "appRect": { + "left": 0, + "top": 0, + "right": 1280, + "bottom": 720, + "width": 1280, + "height": 720 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 2, + "viewport": { + "name": "tablet-834x1112", + "width": 834, + "height": 1112 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 38, + "width": 834, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 834, + "bottom": 102, + "width": 834, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 834, + "bottom": 72, + "width": 834, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 986 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 834, + "bottom": 937, + "width": 834, + "height": 835 + }, + ".timeline-area": { + "left": 0, + "top": 938, + "right": 834, + "bottom": 1088, + "width": 834, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 1088, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 834, + "rootClientWidth": 834, + "bodyScrollWidth": 834, + "viewportWidth": 834, + "appRect": { + "left": 0, + "top": 0, + "right": 834, + "bottom": 1112, + "width": 834, + "height": 1112 + }, + "rendererBackend": "offscreen-worker" + } + }, + { + "backend": "offscreen", + "deviceScaleFactor": 2, + "viewport": { + "name": "phone-390x844", + "width": 390, + "height": 844 + }, + "measurement": { + "bands": { + ".topbar": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 38, + "width": 390, + "height": 38 + }, + ".workspace-toolbar": { + "left": 0, + "top": 72, + "right": 390, + "bottom": 102, + "width": 390, + "height": 30 + }, + ".storage-budget-panel": { + "left": 0, + "top": 38, + "right": 390, + "bottom": 72, + "width": 390, + "height": 34 + }, + ".workspace-grid": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 820, + "width": 390, + "height": 718 + }, + ".viewport-area": { + "left": 0, + "top": 102, + "right": 390, + "bottom": 669, + "width": 390, + "height": 567 + }, + ".timeline-area": { + "left": 0, + "top": 670, + "right": 390, + "bottom": 820, + "width": 390, + "height": 150 + }, + ".status-bar": { + "left": 0, + "top": 820, + "right": 390, + "bottom": 844, + "width": 390, + "height": 24 + } + }, + "bandViolations": [], + "textOverflow": [], + "rootScrollWidth": 390, + "rootClientWidth": 390, + "bodyScrollWidth": 390, + "viewportWidth": 390, + "appRect": { + "left": 0, + "top": 0, + "right": 390, + "bottom": 844, + "width": 390, + "height": 844 + }, + "rendererBackend": "offscreen-worker" + } + } + ], + "execution": "DISABLED", + "nextTask": "M14-04H" +} diff --git a/tests/golden/M14-04G/manifest.json b/tests/golden/M14-04G/manifest.json new file mode 100644 index 00000000..3e10a36e --- /dev/null +++ b/tests/golden/M14-04G/manifest.json @@ -0,0 +1,48 @@ +{ + "schemaVersion": 1, + "task": "M14-04G", + "parentTask": "M14-04F", + "enablingTask": false, + "parityStateChange": false, + "runtime": "PLAYWRIGHT_CHROMIUM", + "operation": "CHROMIUM_RESPONSIVE_LAYOUT_BOUNDARY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M14-04F/manifest.json", + "sha256": "895b460477a8379594ee93043139b9521952638dbd6670b0205eab1896886455" + }, + "checker": { + "path": "tools/web/check-chromium-layout.mjs", + "sha256": "b211b703309e22810c39f85e4801bc5f0690fa682e33cdcb85157bd28ea042c0" + }, + "app": { + "path": "web/app/src/app/App.tsx", + "sha256": "92d01daecf3f39bc4ac214e4b651ec6feb687bbfbf58c4d3e602a314cdcc664c" + }, + "css": { + "path": "web/app/src/app/app-shell.css", + "sha256": "5961164f29e25b461c03201534fe56e32020633cac6c0970e149a58ba9f6e9fc" + }, + "mainViewport": { + "path": "web/app/src/three-adapter/viewport.ts", + "sha256": "e8d97cb59fd4eca3789aeeb35221a70cf47ef048a5665383d809d0efc49f7119" + }, + "offscreenViewport": { + "path": "web/app/src/three-adapter/offscreen-viewport.ts", + "sha256": "4a210ae247d0e29972096da6c206f3457c2238e6061c6eb622f0ce55c6bfd439" + }, + "referenceE2E": { + "path": "web/tests/e2e/responsive-layout.spec.ts", + "sha256": "f5de57f570880f823224ebdcddb2be4d59ec414a32641effdaa68dc1f4102f28" + }, + "package": { + "path": "web/package.json", + "sha256": "0345600a3249420582cfee7092c265e1a195333f28ebc46f8b37929372864896" + }, + "report": { + "path": "tests/golden/M14-04G/chromium-layout-report.json", + "sha256": "65b1050217e2343e656d56c4d7893d13f36b5f07008288ea194a101dafbaa0e2" + } + }, + "nextTask": "M14-04H" +} diff --git a/tests/golden/M14-04H/chromium-accessibility-report.json b/tests/golden/M14-04H/chromium-accessibility-report.json new file mode 100644 index 00000000..9ca627ae --- /dev/null +++ b/tests/golden/M14-04H/chromium-accessibility-report.json @@ -0,0 +1,33 @@ +{ + "schemaVersion": 1, + "task": "M14-04H", + "operation": "CHROMIUM_KEYBOARD_ACCESSIBILITY_BOUNDARY", + "runtime": "PLAYWRIGHT_CHROMIUM", + "backends": [ + "main", + "offscreen" + ], + "results": { + "main": { + "fileTabCount": 1, + "accessible": { + "missing": [], + "visibleInteractiveCount": 66 + } + }, + "offscreen": { + "fileTabCount": 1, + "accessible": { + "missing": [], + "visibleInteractiveCount": 66 + } + } + }, + "guarantees": { + "menuFocus": "RESTORED", + "operatorSearchFocus": "RESTORED", + "accessibleNames": "COMPLETE" + }, + "execution": "DISABLED", + "nextTask": "M15-01A" +} diff --git a/tests/golden/M14-04H/manifest.json b/tests/golden/M14-04H/manifest.json new file mode 100644 index 00000000..0ef6d937 --- /dev/null +++ b/tests/golden/M14-04H/manifest.json @@ -0,0 +1,40 @@ +{ + "schemaVersion": 1, + "task": "M14-04H", + "parentTask": "M14-04G", + "enablingTask": false, + "parityStateChange": false, + "runtime": "PLAYWRIGHT_CHROMIUM", + "operation": "CHROMIUM_KEYBOARD_ACCESSIBILITY_BOUNDARY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M14-04G/manifest.json", + "sha256": "a5a80cedd824cc4aac27bd2cec39e11560d4cf3207ab947a1abe19c8bb9e053f" + }, + "checker": { + "path": "tools/web/check-chromium-accessibility.mjs", + "sha256": "b39cdef61007e5ac1f2e7686ccdffd42f6b9723b2e93a7bd63e46800c4453ced" + }, + "app": { + "path": "web/app/src/app/App.tsx", + "sha256": "5861988f3dfbb8c05d36aee3033a72514de53a0cb4ec6f3d832418ef6b5cc8b2" + }, + "css": { + "path": "web/app/src/app/app-shell.css", + "sha256": "5961164f29e25b461c03201534fe56e32020633cac6c0970e149a58ba9f6e9fc" + }, + "referenceE2E": { + "path": "web/tests/e2e/keyboard-accessibility.spec.ts", + "sha256": "e74a53a1f9e9bfea73be8da1de486938d0dcc4718e7585b57bee27a5ce78a978" + }, + "package": { + "path": "web/package.json", + "sha256": "7e24f577b7ffbc002bb29e0b723f39cda887ec546765505f559c5694e016e54b" + }, + "report": { + "path": "tests/golden/M14-04H/chromium-accessibility-report.json", + "sha256": "508adab3c6ced83c95bcced36d610c20f2f2fd456637cb79568b4b824d66ead9" + } + }, + "nextTask": "M15-01A" +} diff --git a/tests/golden/M15-01A/blender-rna-datablock-inventory.json b/tests/golden/M15-01A/blender-rna-datablock-inventory.json new file mode 100644 index 00000000..807aa5a0 --- /dev/null +++ b/tests/golden/M15-01A/blender-rna-datablock-inventory.json @@ -0,0 +1,231 @@ +{ + "dataBlockTypes": [ + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_ACTION", + "rnaIdentifier": "Action", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Action" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_ARMATURE", + "rnaIdentifier": "Armature", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Armature" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_BRUSH", + "rnaIdentifier": "Brush", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Brush" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_CAMERA", + "rnaIdentifier": "Camera", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Camera" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_COLLECTION", + "rnaIdentifier": "Collection", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Collection" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_CURVE", + "rnaIdentifier": "Curve", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Curve" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_CURVES", + "rnaIdentifier": "Curves", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Curves" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_FREESTYLELINESTYLE", + "rnaIdentifier": "FreestyleLineStyle", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "FreestyleLineStyle" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_GREASEPENCIL", + "rnaIdentifier": "GreasePencil", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "GreasePencil" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_LATTICE", + "rnaIdentifier": "Lattice", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Lattice" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_LIBRARY", + "rnaIdentifier": "Library", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Library" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_LIGHT", + "rnaIdentifier": "Light", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Light" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_MATERIAL", + "rnaIdentifier": "Material", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Material" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_MESH", + "rnaIdentifier": "Mesh", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Mesh" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_METABALL", + "rnaIdentifier": "MetaBall", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "MetaBall" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_NODETREE", + "rnaIdentifier": "NodeTree", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "NodeTree" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_OBJECT", + "rnaIdentifier": "Object", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Object" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_PARTICLESETTINGS", + "rnaIdentifier": "ParticleSettings", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "ParticleSettings" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_POINTCLOUD", + "rnaIdentifier": "PointCloud", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "PointCloud" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_SCENE", + "rnaIdentifier": "Scene", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Scene" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_SCREEN", + "rnaIdentifier": "Screen", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Screen" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_SOUND", + "rnaIdentifier": "Sound", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Sound" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_SPEAKER", + "rnaIdentifier": "Speaker", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Speaker" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_TEXT", + "rnaIdentifier": "Text", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Text" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_TEXTURE", + "rnaIdentifier": "Texture", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Texture" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_VOLUME", + "rnaIdentifier": "Volume", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "Volume" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_WINDOWMANAGER", + "rnaIdentifier": "WindowManager", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "WindowManager" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_WORKSPACE", + "rnaIdentifier": "WorkSpace", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "WorkSpace" + }, + { + "baseType": "ID", + "parityId": "BLENDER52_RNA_ID_WORLD", + "rnaIdentifier": "World", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "typeName": "World" + } + ], + "nextTask": "M15-01B", + "operation": "BLENDER_RNA_DATABLOCK_INVENTORY", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "schemaVersion": 1, + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "summary": { + "baseType": "ID", + "count": 29 + }, + "task": "M15-01A" +} diff --git a/tests/golden/M15-01A/inventory-check-report.json b/tests/golden/M15-01A/inventory-check-report.json new file mode 100644 index 00000000..d0fc32d3 --- /dev/null +++ b/tests/golden/M15-01A/inventory-check-report.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M15-01A", + "operation": "BLENDER_RNA_DATABLOCK_INVENTORY_CHECK", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "count": 29, + "first": "Action", + "last": "World", + "inventorySha256": "98e6c2ebc9f62647b43fb06eff178bef02db06516f6ac87048ae81fcf2d8e792", + "nextTask": "M15-01B" +} diff --git a/tests/golden/M15-01A/manifest.json b/tests/golden/M15-01A/manifest.json new file mode 100644 index 00000000..877b987c --- /dev/null +++ b/tests/golden/M15-01A/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-01A", + "parentTask": "M14-04H", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_RNA", + "operation": "BLENDER_RNA_DATABLOCK_INVENTORY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M14-04H/manifest.json", + "sha256": "2c4e4323250f3426f610babb42978ba36c48e471729b20b0ce8f3483eb6f899c" + }, + "generator": { + "path": "tools/web/generate-blender-rna-datablock-inventory.py", + "sha256": "2e61a1a8a2e5347d3ee0f8efa5bad74e9823de6e7b0959f505e73c9d96e7037b" + }, + "checker": { + "path": "tools/web/check-blender-rna-datablock-inventory.mjs", + "sha256": "43b72286964fcfa1f6beebec786c4f96cf12d5d33c6227754e5b98e2dda668ab" + }, + "inventory": { + "path": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "sha256": "98e6c2ebc9f62647b43fb06eff178bef02db06516f6ac87048ae81fcf2d8e792" + }, + "runtime": { + "path": "build_blender_5.2.0/bin/blender", + "sha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-01B" +} diff --git a/tests/golden/M15-01B/blender-operator-inventory.json b/tests/golden/M15-01B/blender-operator-inventory.json new file mode 100644 index 00000000..17d16b00 --- /dev/null +++ b/tests/golden/M15-01B/blender-operator-inventory.json @@ -0,0 +1,49553 @@ +{ + "nextTask": "M15-01C", + "operation": "BLENDER_OPERATOR_INVENTORY", + "operators": [ + { + "operator": "action.bake_keys", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_bake_keys" + }, + { + "operator": "action.clean", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channels", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_clean" + }, + { + "operator": "action.clickselect", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "column", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_clickselect" + }, + { + "operator": "action.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_copy" + }, + { + "operator": "action.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_delete" + }, + { + "operator": "action.duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_duplicate" + }, + { + "operator": "action.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "ACTION_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_transform", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_duplicate_move" + }, + { + "operator": "action.easing_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_easing_type" + }, + { + "operator": "action.extrapolation_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_extrapolation_type" + }, + { + "operator": "action.frame_jump", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_frame_jump" + }, + { + "operator": "action.handle_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_handle_type" + }, + { + "operator": "action.interpolation_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_interpolation_type" + }, + { + "operator": "action.keyframe_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_keyframe_insert" + }, + { + "operator": "action.keyframe_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_keyframe_type" + }, + { + "operator": "action.markers_make_local", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_markers_make_local" + }, + { + "operator": "action.mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_mirror" + }, + { + "operator": "action.new", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_new" + }, + { + "operator": "action.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "identifier": "merge", + "type": "ENUM" + }, + { + "identifier": "offset", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_paste" + }, + { + "operator": "action.previewrange_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_previewrange_set" + }, + { + "operator": "action.push_down", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_push_down" + }, + { + "operator": "action.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_all" + }, + { + "operator": "action.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "axis_range", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_box" + }, + { + "operator": "action.select_by_type", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_by_type" + }, + { + "operator": "action.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_circle" + }, + { + "operator": "action.select_column", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_column" + }, + { + "operator": "action.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_lasso" + }, + { + "operator": "action.select_leftright", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_leftright" + }, + { + "operator": "action.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_less" + }, + { + "operator": "action.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_linked" + }, + { + "operator": "action.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_select_more" + }, + { + "operator": "action.snap", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_snap" + }, + { + "operator": "action.stash", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "create_new", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_stash" + }, + { + "operator": "action.stash_and_create", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_stash_and_create" + }, + { + "operator": "action.unlink", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "force_delete", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ACTION_OT_unlink" + }, + { + "operator": "action.view_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_view_all" + }, + { + "operator": "action.view_frame", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_view_frame" + }, + { + "operator": "action.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ACTION_OT_view_selected" + }, + { + "operator": "anim.change_frame", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "pass_through_on_strip_handles", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seq_solo_preview", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_change_frame" + }, + { + "operator": "anim.channel_select_keys", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channel_select_keys" + }, + { + "operator": "anim.channel_view_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preview_range", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channel_view_pick" + }, + { + "operator": "anim.channels_bake", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_modifiers", + "type": "BOOLEAN" + }, + { + "identifier": "interpolation_type", + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "range", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "remove_outside_range", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "step", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_scene_range", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_bake" + }, + { + "operator": "anim.channels_clean_empty", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_clean_empty" + }, + { + "operator": "anim.channels_click", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "children_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend_range", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_click" + }, + { + "operator": "anim.channels_collapse", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_collapse" + }, + { + "operator": "anim.channels_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_delete" + }, + { + "operator": "anim.channels_editable_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_editable_toggle" + }, + { + "operator": "anim.channels_expand", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_expand" + }, + { + "operator": "anim.channels_fcurves_enable", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_fcurves_enable" + }, + { + "operator": "anim.channels_group", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_group" + }, + { + "operator": "anim.channels_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_move" + }, + { + "operator": "anim.channels_rename", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_rename" + }, + { + "operator": "anim.channels_select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_select_all" + }, + { + "operator": "anim.channels_select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_select_box" + }, + { + "operator": "anim.channels_select_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_select_filter" + }, + { + "operator": "anim.channels_setting_disable", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_setting_disable" + }, + { + "operator": "anim.channels_setting_enable", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_setting_enable" + }, + { + "operator": "anim.channels_setting_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_setting_toggle" + }, + { + "operator": "anim.channels_ungroup", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_ungroup" + }, + { + "operator": "anim.channels_view_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preview_range", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_channels_view_selected" + }, + { + "operator": "anim.clear_useless_actions", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_unused", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_clear_useless_actions" + }, + { + "operator": "anim.copy_driver_button", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_copy_driver_button" + }, + { + "operator": "anim.driver_button_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_driver_button_add" + }, + { + "operator": "anim.driver_button_edit", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_driver_button_edit" + }, + { + "operator": "anim.driver_button_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_driver_button_remove" + }, + { + "operator": "anim.end_frame_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_end_frame_set" + }, + { + "operator": "anim.keyframe_clear_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_clear_button" + }, + { + "operator": "anim.keyframe_clear_v3d", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_clear_v3d" + }, + { + "operator": "anim.keyframe_clear_vse", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_clear_vse" + }, + { + "operator": "anim.keyframe_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_delete" + }, + { + "operator": "anim.keyframe_delete_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_delete_button" + }, + { + "operator": "anim.keyframe_delete_by_name", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_delete_by_name" + }, + { + "operator": "anim.keyframe_delete_v3d", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_delete_v3d" + }, + { + "operator": "anim.keyframe_delete_vse", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_delete_vse" + }, + { + "operator": "anim.keyframe_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_insert" + }, + { + "operator": "anim.keyframe_insert_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_insert_button" + }, + { + "operator": "anim.keyframe_insert_by_name", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_insert_by_name" + }, + { + "operator": "anim.keyframe_insert_menu", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "always_prompt", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyframe_insert_menu" + }, + { + "operator": "anim.keying_set_active_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keying_set_active_set" + }, + { + "operator": "anim.keying_set_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_keying_set_add" + }, + { + "operator": "anim.keying_set_export", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keying_set_export" + }, + { + "operator": "anim.keying_set_path_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_keying_set_path_add" + }, + { + "operator": "anim.keying_set_path_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_keying_set_path_remove" + }, + { + "operator": "anim.keying_set_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_keying_set_remove" + }, + { + "operator": "anim.keyingset_button_add", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyingset_button_add" + }, + { + "operator": "anim.keyingset_button_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_keyingset_button_remove" + }, + { + "operator": "anim.merge_animation", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_merge_animation" + }, + { + "operator": "anim.paste_driver_button", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_paste_driver_button" + }, + { + "operator": "anim.previewrange_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_previewrange_clear" + }, + { + "operator": "anim.previewrange_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_previewrange_set" + }, + { + "operator": "anim.replace_action", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "new_session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "old_session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_replace_action" + }, + { + "operator": "anim.replace_action_new", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "old_session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_replace_action_new" + }, + { + "operator": "anim.scene_range_frame", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_scene_range_frame" + }, + { + "operator": "anim.separate_slots", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_separate_slots" + }, + { + "operator": "anim.slot_channels_move_to_new_action", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_slot_channels_move_to_new_action" + }, + { + "operator": "anim.slot_new_for_id", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_slot_new_for_id" + }, + { + "operator": "anim.slot_unassign_from_constraint", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_slot_unassign_from_constraint" + }, + { + "operator": "anim.slot_unassign_from_id", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_slot_unassign_from_id" + }, + { + "operator": "anim.slot_unassign_from_nla_strip", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_slot_unassign_from_nla_strip" + }, + { + "operator": "anim.start_frame_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_start_frame_set" + }, + { + "operator": "anim.update_animated_transform_constraints", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_convert_to_radians", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_update_animated_transform_constraints" + }, + { + "operator": "anim.version_bone_hide_property", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ANIM_OT_version_bone_hide_property" + }, + { + "operator": "anim.view_curve_in_graph_editor", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "isolate", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ANIM_OT_view_curve_in_graph_editor" + }, + { + "operator": "armature.align", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_align" + }, + { + "operator": "armature.assign_to_collection", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "collection_index", + "type": "INT" + }, + { + "identifier": "new_collection_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_assign_to_collection" + }, + { + "operator": "armature.autoside_names", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_autoside_names" + }, + { + "operator": "armature.bone_primitive_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "length", + "type": "FLOAT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "space", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_deform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_bone_primitive_add" + }, + { + "operator": "armature.calculate_roll", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "axis_flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "axis_only", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_calculate_roll" + }, + { + "operator": "armature.click_extrude", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_click_extrude" + }, + { + "operator": "armature.collection_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_add" + }, + { + "operator": "armature.collection_assign", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_assign" + }, + { + "operator": "armature.collection_create_and_assign", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_create_and_assign" + }, + { + "operator": "armature.collection_deselect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_deselect" + }, + { + "operator": "armature.collection_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_move" + }, + { + "operator": "armature.collection_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_remove" + }, + { + "operator": "armature.collection_remove_unused", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_remove_unused" + }, + { + "operator": "armature.collection_select", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_select" + }, + { + "operator": "armature.collection_show_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_show_all" + }, + { + "operator": "armature.collection_unassign", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_unassign" + }, + { + "operator": "armature.collection_unassign_named", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "bone_name", + "type": "STRING" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_unassign_named" + }, + { + "operator": "armature.collection_unsolo_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_collection_unsolo_all" + }, + { + "operator": "armature.copy_bone_color_to_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "bone_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_copy_bone_color_to_selected" + }, + { + "operator": "armature.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_delete" + }, + { + "operator": "armature.dissolve", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_dissolve" + }, + { + "operator": "armature.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "do_flip_names", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_duplicate" + }, + { + "operator": "armature.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "ARMATURE_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_duplicate_move" + }, + { + "operator": "armature.duplicate_rename", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "do_flip_names", + "type": "BOOLEAN" + }, + { + "identifier": "replace", + "type": "STRING" + }, + { + "identifier": "search", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_duplicate_rename" + }, + { + "operator": "armature.extrude", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "forked", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_extrude" + }, + { + "operator": "armature.extrude_forked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "ARMATURE_OT_extrude", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_extrude_forked" + }, + { + "operator": "armature.extrude_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "ARMATURE_OT_extrude", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_extrude_move" + }, + { + "operator": "armature.fill", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_fill" + }, + { + "operator": "armature.flip_names", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "do_strip_numbers", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_flip_names" + }, + { + "operator": "armature.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_hide" + }, + { + "operator": "armature.move_to_collection", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "collection_index", + "type": "INT" + }, + { + "identifier": "new_collection_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_move_to_collection" + }, + { + "operator": "armature.parent_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_parent_clear" + }, + { + "operator": "armature.parent_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_parent_set" + }, + { + "operator": "armature.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_reveal" + }, + { + "operator": "armature.roll_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "roll", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_roll_clear" + }, + { + "operator": "armature.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_all" + }, + { + "operator": "armature.select_hierarchy", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_hierarchy" + }, + { + "operator": "armature.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_less" + }, + { + "operator": "armature.select_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_forks", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_linked" + }, + { + "operator": "armature.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_forks", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_linked_pick" + }, + { + "operator": "armature.select_mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_mirror" + }, + { + "operator": "armature.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_more" + }, + { + "operator": "armature.select_similar", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_select_similar" + }, + { + "operator": "armature.separate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_separate" + }, + { + "operator": "armature.shortest_path_pick", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_shortest_path_pick" + }, + { + "operator": "armature.split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_split" + }, + { + "operator": "armature.subdivide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_subdivide" + }, + { + "operator": "armature.switch_direction", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_switch_direction" + }, + { + "operator": "armature.symmetrize", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "copy_bone_colors", + "type": "BOOLEAN" + }, + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ARMATURE_OT_symmetrize" + }, + { + "operator": "asset.asset_download", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_asset_download" + }, + { + "operator": "asset.assets_download", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_assets_download" + }, + { + "operator": "asset.assign_action", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_assign_action" + }, + { + "operator": "asset.browse_containing_blend_file", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_browse_containing_blend_file" + }, + { + "operator": "asset.bundle_install", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_reference", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_bundle_install" + }, + { + "operator": "asset.catalog_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "catalog_id", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_catalog_delete" + }, + { + "operator": "asset.catalog_new", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "parent_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_catalog_new" + }, + { + "operator": "asset.catalog_redo", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_catalog_redo" + }, + { + "operator": "asset.catalog_undo", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_catalog_undo" + }, + { + "operator": "asset.catalog_undo_push", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_catalog_undo_push" + }, + { + "operator": "asset.catalogs_save", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_catalogs_save" + }, + { + "operator": "asset.clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "set_fake_user", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_clear" + }, + { + "operator": "asset.clear_single", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "set_fake_user", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_clear_single" + }, + { + "operator": "asset.library_refresh", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_remote_listing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_shift_for_remote_listing", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_library_refresh" + }, + { + "operator": "asset.library_reload_listing", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_library_reload_listing" + }, + { + "operator": "asset.mark", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_mark" + }, + { + "operator": "asset.mark_single", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_mark_single" + }, + { + "operator": "asset.open_containing_blend_file", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_open_containing_blend_file" + }, + { + "operator": "asset.screenshot_preview", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "force_square", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "p1", + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "p2", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ASSET_OT_screenshot_preview" + }, + { + "operator": "asset.tag_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_tag_add" + }, + { + "operator": "asset.tag_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ASSET_OT_tag_remove" + }, + { + "operator": "boid.rule_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "BOID_OT_rule_add" + }, + { + "operator": "boid.rule_del", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_rule_del" + }, + { + "operator": "boid.rule_move_down", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_rule_move_down" + }, + { + "operator": "boid.rule_move_up", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_rule_move_up" + }, + { + "operator": "boid.state_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_state_add" + }, + { + "operator": "boid.state_del", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_state_del" + }, + { + "operator": "boid.state_move_down", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_state_move_down" + }, + { + "operator": "boid.state_move_up", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BOID_OT_state_move_up" + }, + { + "operator": "brush.asset_activate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_activate" + }, + { + "operator": "brush.asset_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_delete" + }, + { + "operator": "brush.asset_edit_metadata", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "author", + "type": "STRING" + }, + { + "identifier": "catalog_path", + "type": "STRING" + }, + { + "identifier": "description", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_edit_metadata" + }, + { + "operator": "brush.asset_load_preview", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_load_preview" + }, + { + "operator": "brush.asset_revert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_revert" + }, + { + "operator": "brush.asset_save", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_save" + }, + { + "operator": "brush.asset_save_as", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_reference", + "type": "ENUM" + }, + { + "identifier": "catalog_path", + "type": "STRING" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_asset_save_as" + }, + { + "operator": "brush.scale_size", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "scalar", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_scale_size" + }, + { + "operator": "brush.stencil_control", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "texmode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_stencil_control" + }, + { + "operator": "brush.stencil_fit_image_aspect", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mask", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_repeat", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_stencil_fit_image_aspect" + }, + { + "operator": "brush.stencil_reset_transform", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mask", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "BRUSH_OT_stencil_reset_transform" + }, + { + "operator": "buttons.clear_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BUTTONS_OT_clear_filter" + }, + { + "operator": "buttons.context_menu", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BUTTONS_OT_context_menu" + }, + { + "operator": "buttons.directory_browse", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "BUTTONS_OT_directory_browse" + }, + { + "operator": "buttons.file_browse", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "BUTTONS_OT_file_browse" + }, + { + "operator": "buttons.start_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BUTTONS_OT_start_filter" + }, + { + "operator": "buttons.toggle_pin", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "BUTTONS_OT_toggle_pin" + }, + { + "operator": "cachefile.layer_add", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CACHEFILE_OT_layer_add" + }, + { + "operator": "cachefile.layer_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CACHEFILE_OT_layer_move" + }, + { + "operator": "cachefile.layer_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CACHEFILE_OT_layer_remove" + }, + { + "operator": "cachefile.open", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CACHEFILE_OT_open" + }, + { + "operator": "cachefile.reload", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CACHEFILE_OT_reload" + }, + { + "operator": "camera.preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_focal_length", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CAMERA_OT_preset_add" + }, + { + "operator": "camera.safe_areas_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CAMERA_OT_safe_areas_preset_add" + }, + { + "operator": "clip.add_marker", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_add_marker" + }, + { + "operator": "clip.add_marker_at_click", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_add_marker_at_click" + }, + { + "operator": "clip.add_marker_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "CLIP_OT_add_marker", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_add_marker_move" + }, + { + "operator": "clip.add_marker_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "CLIP_OT_add_marker", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_add_marker_slide" + }, + { + "operator": "clip.apply_solution_scale", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_apply_solution_scale" + }, + { + "operator": "clip.average_tracks", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_original", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_average_tracks" + }, + { + "operator": "clip.bundles_to_mesh", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_bundles_to_mesh" + }, + { + "operator": "clip.camera_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_focal_length", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_camera_preset_add" + }, + { + "operator": "clip.change_frame", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_change_frame" + }, + { + "operator": "clip.clean_tracks", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "error", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frames", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_clean_tracks" + }, + { + "operator": "clip.clear_solution", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_clear_solution" + }, + { + "operator": "clip.clear_track_path", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clear_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_clear_track_path" + }, + { + "operator": "clip.constraint_to_fcurve", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_constraint_to_fcurve" + }, + { + "operator": "clip.copy_tracks", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_copy_tracks" + }, + { + "operator": "clip.create_plane_track", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_create_plane_track" + }, + { + "operator": "clip.cursor_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_cursor_set" + }, + { + "operator": "clip.delete_marker", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_delete_marker" + }, + { + "operator": "clip.delete_proxy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_delete_proxy" + }, + { + "operator": "clip.delete_track", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_delete_track" + }, + { + "operator": "clip.detect_features", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "margin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "min_distance", + "type": "INT" + }, + { + "identifier": "placement", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_detect_features" + }, + { + "operator": "clip.disable_markers", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_disable_markers" + }, + { + "operator": "clip.dopesheet_select_channel", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_dopesheet_select_channel" + }, + { + "operator": "clip.dopesheet_view_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_dopesheet_view_all" + }, + { + "operator": "clip.filter_tracks", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "track_threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_filter_tracks" + }, + { + "operator": "clip.frame_jump", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "position", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_frame_jump" + }, + { + "operator": "clip.graph_center_current_frame", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_center_current_frame" + }, + { + "operator": "clip.graph_delete_curve", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_delete_curve" + }, + { + "operator": "clip.graph_delete_knot", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_delete_knot" + }, + { + "operator": "clip.graph_disable_markers", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_disable_markers" + }, + { + "operator": "clip.graph_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_select" + }, + { + "operator": "clip.graph_select_all_markers", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_select_all_markers" + }, + { + "operator": "clip.graph_select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_select_box" + }, + { + "operator": "clip.graph_view_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_graph_view_all" + }, + { + "operator": "clip.hide_tracks", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_hide_tracks" + }, + { + "operator": "clip.hide_tracks_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_hide_tracks_clear" + }, + { + "operator": "clip.join_tracks", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_join_tracks" + }, + { + "operator": "clip.keyframe_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_keyframe_delete" + }, + { + "operator": "clip.keyframe_insert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_keyframe_insert" + }, + { + "operator": "clip.lock_selection_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_lock_selection_toggle" + }, + { + "operator": "clip.lock_tracks", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_lock_tracks" + }, + { + "operator": "clip.mode_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_mode_set" + }, + { + "operator": "clip.new_image_from_plane_marker", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_new_image_from_plane_marker" + }, + { + "operator": "clip.open", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_open" + }, + { + "operator": "clip.paste_tracks", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_paste_tracks" + }, + { + "operator": "clip.prefetch", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_prefetch" + }, + { + "operator": "clip.rebuild_proxy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_rebuild_proxy" + }, + { + "operator": "clip.refine_markers", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "backwards", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_refine_markers" + }, + { + "operator": "clip.reload", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_reload" + }, + { + "operator": "clip.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_select" + }, + { + "operator": "clip.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_select_all" + }, + { + "operator": "clip.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_select_box" + }, + { + "operator": "clip.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_select_circle" + }, + { + "operator": "clip.select_grouped", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "group", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_select_grouped" + }, + { + "operator": "clip.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_select_lasso" + }, + { + "operator": "clip.set_active_clip", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_active_clip" + }, + { + "operator": "clip.set_axis", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_axis" + }, + { + "operator": "clip.set_origin", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_median", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_origin" + }, + { + "operator": "clip.set_plane", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "plane", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_plane" + }, + { + "operator": "clip.set_scale", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_scale" + }, + { + "operator": "clip.set_scene_frames", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_scene_frames" + }, + { + "operator": "clip.set_solution_scale", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_solution_scale" + }, + { + "operator": "clip.set_solver_keyframe", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "keyframe", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_solver_keyframe" + }, + { + "operator": "clip.set_viewport_background", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_set_viewport_background" + }, + { + "operator": "clip.setup_tracking_scene", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_setup_tracking_scene" + }, + { + "operator": "clip.slide_marker", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_slide_marker" + }, + { + "operator": "clip.slide_plane_marker", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_slide_plane_marker" + }, + { + "operator": "clip.solve_camera", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_solve_camera" + }, + { + "operator": "clip.stabilize_2d_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_stabilize_2d_add" + }, + { + "operator": "clip.stabilize_2d_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_stabilize_2d_remove" + }, + { + "operator": "clip.stabilize_2d_rotation_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_stabilize_2d_rotation_add" + }, + { + "operator": "clip.stabilize_2d_rotation_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_stabilize_2d_rotation_remove" + }, + { + "operator": "clip.stabilize_2d_rotation_select", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_stabilize_2d_rotation_select" + }, + { + "operator": "clip.stabilize_2d_select", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_stabilize_2d_select" + }, + { + "operator": "clip.track_color_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_track_color_preset_add" + }, + { + "operator": "clip.track_copy_color", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_track_copy_color" + }, + { + "operator": "clip.track_markers", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "backwards", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "sequence", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_track_markers" + }, + { + "operator": "clip.track_settings_as_default", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_track_settings_as_default" + }, + { + "operator": "clip.track_settings_to_track", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_track_settings_to_track" + }, + { + "operator": "clip.track_to_empty", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_track_to_empty" + }, + { + "operator": "clip.tracking_object_new", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_tracking_object_new" + }, + { + "operator": "clip.tracking_object_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_tracking_object_remove" + }, + { + "operator": "clip.tracking_settings_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_tracking_settings_preset_add" + }, + { + "operator": "clip.update_image_from_plane_marker", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_update_image_from_plane_marker" + }, + { + "operator": "clip.view_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "fit_view", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_all" + }, + { + "operator": "clip.view_center_cursor", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_center_cursor" + }, + { + "operator": "clip.view_ndof", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_ndof" + }, + { + "operator": "clip.view_pan", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_pan" + }, + { + "operator": "clip.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_selected" + }, + { + "operator": "clip.view_zoom", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_zoom" + }, + { + "operator": "clip.view_zoom_in", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_zoom_in" + }, + { + "operator": "clip.view_zoom_out", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_zoom_out" + }, + { + "operator": "clip.view_zoom_ratio", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CLIP_OT_view_zoom_ratio" + }, + { + "operator": "cloth.preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CLOTH_OT_preset_add" + }, + { + "operator": "collection.create", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_create" + }, + { + "operator": "collection.export_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_export_all" + }, + { + "operator": "collection.exporter_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_exporter_add" + }, + { + "operator": "collection.exporter_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_exporter_export" + }, + { + "operator": "collection.exporter_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_exporter_move" + }, + { + "operator": "collection.exporter_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_exporter_remove" + }, + { + "operator": "collection.importer_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_importer_add" + }, + { + "operator": "collection.importer_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_importer_remove" + }, + { + "operator": "collection.objects_add_active", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "collection", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_objects_add_active" + }, + { + "operator": "collection.objects_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "collection", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_objects_remove" + }, + { + "operator": "collection.objects_remove_active", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "collection", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_objects_remove_active" + }, + { + "operator": "collection.objects_remove_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "COLLECTION_OT_objects_remove_all" + }, + { + "operator": "console.autocomplete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_autocomplete" + }, + { + "operator": "console.banner", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_banner" + }, + { + "operator": "console.clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "history", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "scrollback", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_clear" + }, + { + "operator": "console.clear_line", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_clear_line" + }, + { + "operator": "console.copy", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delete", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_copy" + }, + { + "operator": "console.copy_as_script", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_copy_as_script" + }, + { + "operator": "console.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_delete" + }, + { + "operator": "console.execute", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "interactive", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_execute" + }, + { + "operator": "console.history_append", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "current_character", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "remove_duplicates", + "type": "BOOLEAN" + }, + { + "identifier": "text", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_history_append" + }, + { + "operator": "console.history_cycle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_history_cycle" + }, + { + "operator": "console.indent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_indent" + }, + { + "operator": "console.indent_or_autocomplete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_indent_or_autocomplete" + }, + { + "operator": "console.insert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "text", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_insert" + }, + { + "operator": "console.language", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "language", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_language" + }, + { + "operator": "console.move", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_move" + }, + { + "operator": "console.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_paste" + }, + { + "operator": "console.scrollback_append", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "text", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_scrollback_append" + }, + { + "operator": "console.select_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_select_all" + }, + { + "operator": "console.select_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_select_set" + }, + { + "operator": "console.select_word", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_select_word" + }, + { + "operator": "console.unindent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSOLE_OT_unindent" + }, + { + "operator": "constraint.add_target", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_add_target" + }, + { + "operator": "constraint.apply", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_apply" + }, + { + "operator": "constraint.childof_clear_inverse", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_childof_clear_inverse" + }, + { + "operator": "constraint.childof_set_inverse", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_childof_set_inverse" + }, + { + "operator": "constraint.copy", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_copy" + }, + { + "operator": "constraint.copy_to_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_copy_to_selected" + }, + { + "operator": "constraint.delete", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_delete" + }, + { + "operator": "constraint.disable_keep_transform", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_disable_keep_transform" + }, + { + "operator": "constraint.followpath_path_animate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "length", + "type": "INT" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_followpath_path_animate" + }, + { + "operator": "constraint.limitdistance_reset", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_limitdistance_reset" + }, + { + "operator": "constraint.move_down", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_move_down" + }, + { + "operator": "constraint.move_to_index", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_move_to_index" + }, + { + "operator": "constraint.move_up", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_move_up" + }, + { + "operator": "constraint.normalize_target_weights", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_normalize_target_weights" + }, + { + "operator": "constraint.objectsolver_clear_inverse", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_objectsolver_clear_inverse" + }, + { + "operator": "constraint.objectsolver_set_inverse", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_objectsolver_set_inverse" + }, + { + "operator": "constraint.remove_target", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_remove_target" + }, + { + "operator": "constraint.stretchto_reset", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "constraint", + "type": "STRING" + }, + { + "identifier": "owner", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CONSTRAINT_OT_stretchto_reset" + }, + { + "operator": "curve.cyclic_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_cyclic_toggle" + }, + { + "operator": "curve.de_select_first", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_de_select_first" + }, + { + "operator": "curve.de_select_last", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_de_select_last" + }, + { + "operator": "curve.decimate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_decimate" + }, + { + "operator": "curve.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_delete" + }, + { + "operator": "curve.dissolve_verts", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_dissolve_verts" + }, + { + "operator": "curve.draw", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "corner_angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "error_threshold", + "type": "FLOAT" + }, + { + "identifier": "fit_method", + "type": "ENUM" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_draw" + }, + { + "operator": "curve.duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_duplicate" + }, + { + "operator": "curve.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "CURVE_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_duplicate_move" + }, + { + "operator": "curve.extrude", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_extrude" + }, + { + "operator": "curve.extrude_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "CURVE_OT_extrude", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_extrude_move" + }, + { + "operator": "curve.handle_type_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_handle_type_set" + }, + { + "operator": "curve.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_hide" + }, + { + "operator": "curve.make_segment", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_make_segment" + }, + { + "operator": "curve.match_texture_space", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_match_texture_space" + }, + { + "operator": "curve.normals_make_consistent", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "calc_length", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_normals_make_consistent" + }, + { + "operator": "curve.pen", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "close_spline", + "type": "BOOLEAN" + }, + { + "identifier": "close_spline_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "cycle_handle_type", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "delete_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "extrude_handle", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extrude_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "insert_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle_vector", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_pen" + }, + { + "operator": "curve.primitive_bezier_circle_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_primitive_bezier_circle_add" + }, + { + "operator": "curve.primitive_bezier_curve_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_primitive_bezier_curve_add" + }, + { + "operator": "curve.primitive_nurbs_circle_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_primitive_nurbs_circle_add" + }, + { + "operator": "curve.primitive_nurbs_curve_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_primitive_nurbs_curve_add" + }, + { + "operator": "curve.primitive_nurbs_path_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_primitive_nurbs_path_add" + }, + { + "operator": "curve.radius_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_radius_set" + }, + { + "operator": "curve.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_reveal" + }, + { + "operator": "curve.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_all" + }, + { + "operator": "curve.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_less" + }, + { + "operator": "curve.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_linked" + }, + { + "operator": "curve.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_linked_pick" + }, + { + "operator": "curve.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_more" + }, + { + "operator": "curve.select_next", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_next" + }, + { + "operator": "curve.select_nth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "nth", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "skip", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_nth" + }, + { + "operator": "curve.select_previous", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_previous" + }, + { + "operator": "curve.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_random" + }, + { + "operator": "curve.select_row", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_row" + }, + { + "operator": "curve.select_similar", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "compare", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_select_similar" + }, + { + "operator": "curve.separate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_separate" + }, + { + "operator": "curve.shade_flat", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_shade_flat" + }, + { + "operator": "curve.shade_smooth", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_shade_smooth" + }, + { + "operator": "curve.shortest_path_pick", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_shortest_path_pick" + }, + { + "operator": "curve.smooth", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_smooth" + }, + { + "operator": "curve.smooth_radius", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_smooth_radius" + }, + { + "operator": "curve.smooth_tilt", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_smooth_tilt" + }, + { + "operator": "curve.smooth_weight", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_smooth_weight" + }, + { + "operator": "curve.spin", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "axis", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "center", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_spin" + }, + { + "operator": "curve.spline_type_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_handles", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_spline_type_set" + }, + { + "operator": "curve.spline_weight_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "weight", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_spline_weight_set" + }, + { + "operator": "curve.split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_split" + }, + { + "operator": "curve.subdivide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_subdivide" + }, + { + "operator": "curve.switch_direction", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_switch_direction" + }, + { + "operator": "curve.tilt_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVE_OT_tilt_clear" + }, + { + "operator": "curve.vertex_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVE_OT_vertex_add" + }, + { + "operator": "curves.add_bezier", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_add_bezier" + }, + { + "operator": "curves.add_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_add_circle" + }, + { + "operator": "curves.attribute_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "value_bool", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "value_color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value_float", + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "value_float_vector_2d", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "value_float_vector_3d", + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "value_float_vector_4d", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value_int", + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "value_int_vector_2d", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_attribute_set" + }, + { + "operator": "curves.convert_from_particle_system", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_convert_from_particle_system" + }, + { + "operator": "curves.convert_to_particle_system", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_convert_to_particle_system" + }, + { + "operator": "curves.curve_type_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_handles", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_curve_type_set" + }, + { + "operator": "curves.cyclic_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_cyclic_toggle" + }, + { + "operator": "curves.delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_delete" + }, + { + "operator": "curves.draw", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bezier_as_nurbs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "corner_angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "error_threshold", + "type": "FLOAT" + }, + { + "identifier": "fit_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_curve_2d", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_draw" + }, + { + "operator": "curves.duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_duplicate" + }, + { + "operator": "curves.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "CURVES_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_duplicate_move" + }, + { + "operator": "curves.extrude", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_extrude" + }, + { + "operator": "curves.extrude_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "CURVES_OT_extrude", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_extrude_move" + }, + { + "operator": "curves.handle_type_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_handle_type_set" + }, + { + "operator": "curves.pen", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cycle_handle_type", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "delete_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "extrude_handle", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extrude_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "insert_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_pen" + }, + { + "operator": "curves.sculptmode_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_sculptmode_toggle" + }, + { + "operator": "curves.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_all" + }, + { + "operator": "curves.select_ends", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "amount_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "amount_start", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_ends" + }, + { + "operator": "curves.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_less" + }, + { + "operator": "curves.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_linked" + }, + { + "operator": "curves.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_linked_pick" + }, + { + "operator": "curves.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_more" + }, + { + "operator": "curves.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "probability", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_select_random" + }, + { + "operator": "curves.separate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_separate" + }, + { + "operator": "curves.set_selection_domain", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "domain", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_set_selection_domain" + }, + { + "operator": "curves.snap_curves_to_surface", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "attach_mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_snap_curves_to_surface" + }, + { + "operator": "curves.split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_split" + }, + { + "operator": "curves.subdivide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "CURVES_OT_subdivide" + }, + { + "operator": "curves.surface_set", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_surface_set" + }, + { + "operator": "curves.switch_direction", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_switch_direction" + }, + { + "operator": "curves.tilt_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CURVES_OT_tilt_clear" + }, + { + "operator": "cycles.denoise_animation", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "input_filepath", + "type": "STRING" + }, + { + "identifier": "output_filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "CYCLES_OT_denoise_animation" + }, + { + "operator": "cycles.merge_images", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "input_filepath1", + "type": "STRING" + }, + { + "identifier": "input_filepath2", + "type": "STRING" + }, + { + "identifier": "output_filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "CYCLES_OT_merge_images" + }, + { + "operator": "cycles.use_shading_nodes", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "CYCLES_OT_use_shading_nodes" + }, + { + "operator": "dpaint.bake", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "DPAINT_OT_bake" + }, + { + "operator": "dpaint.output_toggle", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "output", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "DPAINT_OT_output_toggle" + }, + { + "operator": "dpaint.surface_slot_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "DPAINT_OT_surface_slot_add" + }, + { + "operator": "dpaint.surface_slot_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "DPAINT_OT_surface_slot_remove" + }, + { + "operator": "dpaint.type_toggle", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "DPAINT_OT_type_toggle" + }, + { + "operator": "ed.flush_edits", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_flush_edits" + }, + { + "operator": "ed.lib_id_fake_user_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_fake_user_toggle" + }, + { + "operator": "ed.lib_id_generate_preview", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_generate_preview" + }, + { + "operator": "ed.lib_id_generate_preview_from_object", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_generate_preview_from_object" + }, + { + "operator": "ed.lib_id_load_custom_preview", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_load_custom_preview" + }, + { + "operator": "ed.lib_id_override_editable_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_override_editable_toggle" + }, + { + "operator": "ed.lib_id_remove_preview", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_remove_preview" + }, + { + "operator": "ed.lib_id_unlink", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_lib_id_unlink" + }, + { + "operator": "ed.redo", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_redo" + }, + { + "operator": "ed.undo", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_undo" + }, + { + "operator": "ed.undo_history", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "item", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "ED_OT_undo_history" + }, + { + "operator": "ed.undo_push", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "message", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "ED_OT_undo_push" + }, + { + "operator": "ed.undo_redo", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "ED_OT_undo_redo" + }, + { + "operator": "export_anim.bvh", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "root_transform_only", + "type": "BOOLEAN" + }, + { + "identifier": "rotate_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sort_children_by_names", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXPORT_ANIM_OT_bvh" + }, + { + "operator": "export_scene.fbx", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_leaf_bones", + "type": "BOOLEAN" + }, + { + "identifier": "apply_scale_options", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "apply_unit_scale", + "type": "BOOLEAN" + }, + { + "identifier": "armature_nodetype", + "type": "ENUM" + }, + { + "identifier": "axis_forward", + "type": "ENUM" + }, + { + "identifier": "axis_up", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bake_anim", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_force_startend_keying", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_simplify_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_step", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_use_all_actions", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_use_all_bones", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_use_nla_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_space_transform", + "type": "BOOLEAN" + }, + { + "identifier": "batch_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "type": "STRING" + }, + { + "identifier": "colors_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "embed_textures", + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "identifier": "mesh_smooth_type", + "type": "ENUM" + }, + { + "identifier": "object_types", + "type": "ENUM" + }, + { + "identifier": "path_mode", + "type": "ENUM" + }, + { + "identifier": "primary_bone_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "prioritize_active_color", + "type": "BOOLEAN" + }, + { + "identifier": "secondary_bone_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_active_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_armature_deform_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_batch_own_dir", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_edges", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_modifiers", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_modifiers_render", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_metadata", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_space_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_subsurf", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_triangles", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_tspace", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_visible", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXPORT_SCENE_OT_fbx" + }, + { + "operator": "export_scene.gltf", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "at_collection_center", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_action_filter", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_active_vertex_color_when_no_material", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_all_influences", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_all_vertex_colors", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_anim_scene_split_object", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_anim_single_armature", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_anim_slide_to_zero", + "type": "BOOLEAN" + }, + { + "identifier": "export_animation_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_animations", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_apply", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_armature_object_remove", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_attributes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_bake_animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_cameras", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_convert_animation_pointer", + "type": "BOOLEAN" + }, + { + "identifier": "export_copyright", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_current_frame", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_def_bones", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_draco_color_quantization", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_generic_quantization", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_mesh_compression_enable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_draco_mesh_compression_level", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_normal_quantization", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_position_quantization", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_texcoord_quantization", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_extra_animations", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_extras", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_force_sampling", + "type": "BOOLEAN" + }, + { + "identifier": "export_format", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_frame_range", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_frame_step", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_kn", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_noq", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_sa", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_si", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_slb", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_tc", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_tq", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vc", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vn", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vp", + "type": "INT" + }, + { + "identifier": "export_gltfpack_vpi", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vt", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gn_mesh", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gpu_instances", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_hierarchy_flatten_bones", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_hierarchy_flatten_objs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_hierarchy_full_collections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_image_add_webp", + "type": "BOOLEAN" + }, + { + "identifier": "export_image_format", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_image_quality", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_image_webp_fallback", + "type": "BOOLEAN" + }, + { + "identifier": "export_import_convert_lighting_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_influence_nb", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_jpeg_quality", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_keep_originals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_leaf_bone", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_lights", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_loglevel", + "type": "INT" + }, + { + "identifier": "export_materials", + "type": "ENUM" + }, + { + "identifier": "export_merge_animation", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_meshopt_compression_enable", + "type": "BOOLEAN" + }, + { + "identifier": "export_meshopt_extension", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_morph", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_normal", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_reset_sk_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_tangent", + "type": "BOOLEAN" + }, + { + "identifier": "export_negative_frame", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_nla_strips", + "type": "BOOLEAN" + }, + { + "identifier": "export_nla_strips_merged_animation_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_animation_keep_anim_armature", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_animation_keep_anim_object", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_animation_size", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_disable_viewport", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_original_specular", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_pointer_animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_reset_pose_bones", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_rest_position_armature", + "type": "BOOLEAN" + }, + { + "identifier": "export_sampling_interpolation_fallback", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_shared_accessors", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_skins", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_tangents", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_texcoords", + "type": "BOOLEAN" + }, + { + "identifier": "export_texture_dir", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_try_omit_sparse_sk", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_try_sparse_sk", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_unused_images", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_unused_textures", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_use_gltfpack", + "type": "BOOLEAN" + }, + { + "identifier": "export_vertex_color", + "type": "ENUM" + }, + { + "identifier": "export_vertex_color_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_yup", + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "identifier": "gltf_export_id", + "type": "STRING" + }, + { + "identifier": "ui_tab", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_active_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_active_collection_with_nested", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_active_scene", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_edges", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_vertices", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_renderable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_visible", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "will_save_settings", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXPORT_SCENE_OT_gltf" + }, + { + "operator": "extensions.package_disable", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_disable" + }, + { + "operator": "extensions.package_install", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "do_legacy_replace", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enable_on_install", + "type": "BOOLEAN" + }, + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "identifier": "repo_directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + }, + { + "identifier": "url", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_install" + }, + { + "operator": "extensions.package_install_files", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "enable_on_install", + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "overwrite", + "type": "BOOLEAN" + }, + { + "identifier": "repo", + "type": "ENUM" + }, + { + "identifier": "target", + "type": "ENUM" + }, + { + "identifier": "url", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_install_files" + }, + { + "operator": "extensions.package_install_marked", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "enable_on_install", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_install_marked" + }, + { + "operator": "extensions.package_mark_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_mark_clear" + }, + { + "operator": "extensions.package_mark_clear_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_mark_clear_all" + }, + { + "operator": "extensions.package_mark_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_mark_set" + }, + { + "operator": "extensions.package_mark_set_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_mark_set_all" + }, + { + "operator": "extensions.package_obsolete_marked", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_obsolete_marked" + }, + { + "operator": "extensions.package_show_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_show_clear" + }, + { + "operator": "extensions.package_show_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_show_set" + }, + { + "operator": "extensions.package_show_settings", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_show_settings" + }, + { + "operator": "extensions.package_theme_disable", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_theme_disable" + }, + { + "operator": "extensions.package_theme_enable", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_theme_enable" + }, + { + "operator": "extensions.package_uninstall", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "pkg_id", + "type": "STRING" + }, + { + "identifier": "repo_directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_uninstall" + }, + { + "operator": "extensions.package_uninstall_marked", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_uninstall_marked" + }, + { + "operator": "extensions.package_uninstall_system", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_uninstall_system" + }, + { + "operator": "extensions.package_upgrade_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_active_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_package_upgrade_all" + }, + { + "operator": "extensions.repo_enable_from_drop", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_enable_from_drop" + }, + { + "operator": "extensions.repo_lock_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_lock_all" + }, + { + "operator": "extensions.repo_refresh_all", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_active_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_refresh_all" + }, + { + "operator": "extensions.repo_sync", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "repo_directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "repo_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_sync" + }, + { + "operator": "extensions.repo_sync_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_active_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_sync_all" + }, + { + "operator": "extensions.repo_unlock", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_unlock" + }, + { + "operator": "extensions.repo_unlock_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_repo_unlock_all" + }, + { + "operator": "extensions.status_clear", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_status_clear" + }, + { + "operator": "extensions.status_clear_errors", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_status_clear_errors" + }, + { + "operator": "extensions.userpref_allow_online", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_userpref_allow_online" + }, + { + "operator": "extensions.userpref_allow_online_popup", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_userpref_allow_online_popup" + }, + { + "operator": "extensions.userpref_show_for_update", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_userpref_show_for_update" + }, + { + "operator": "extensions.userpref_show_online", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_userpref_show_online" + }, + { + "operator": "extensions.userpref_tags_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "EXTENSIONS_OT_userpref_tags_set" + }, + { + "operator": "file.autopack_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_autopack_toggle" + }, + { + "operator": "file.bookmark_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_bookmark_add" + }, + { + "operator": "file.bookmark_cleanup", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_bookmark_cleanup" + }, + { + "operator": "file.bookmark_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_bookmark_delete" + }, + { + "operator": "file.bookmark_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_bookmark_move" + }, + { + "operator": "file.cancel", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_cancel" + }, + { + "operator": "file.delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_delete" + }, + { + "operator": "file.directory_new", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "open", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_directory_new" + }, + { + "operator": "file.edit_directory_path", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_edit_directory_path" + }, + { + "operator": "file.execute", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_execute" + }, + { + "operator": "file.external_operation", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "operation", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_external_operation" + }, + { + "operator": "file.filenum", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "increment", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_filenum" + }, + { + "operator": "file.filepath_drop", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_filepath_drop" + }, + { + "operator": "file.find_missing_files", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "find_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_find_missing_files" + }, + { + "operator": "file.hidedot", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_hidedot" + }, + { + "operator": "file.highlight", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_highlight" + }, + { + "operator": "file.make_paths_absolute", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_make_paths_absolute" + }, + { + "operator": "file.make_paths_relative", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_make_paths_relative" + }, + { + "operator": "file.mouse_execute", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_mouse_execute" + }, + { + "operator": "file.next", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_next" + }, + { + "operator": "file.pack_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_pack_all" + }, + { + "operator": "file.pack_libraries", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_pack_libraries" + }, + { + "operator": "file.parent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_parent" + }, + { + "operator": "file.previous", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_previous" + }, + { + "operator": "file.refresh", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_refresh" + }, + { + "operator": "file.rename", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_rename" + }, + { + "operator": "file.report_missing_files", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_report_missing_files" + }, + { + "operator": "file.reset_recent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_reset_recent" + }, + { + "operator": "file.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "only_activate_if_selected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "open", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "pass_through", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_select" + }, + { + "operator": "file.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_select_all" + }, + { + "operator": "file.select_bookmark", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "dir", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_select_bookmark" + }, + { + "operator": "file.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_select_box" + }, + { + "operator": "file.select_walk", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "fill", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_select_walk" + }, + { + "operator": "file.smoothscroll", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_smoothscroll" + }, + { + "operator": "file.sort_column_ui_context", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_sort_column_ui_context" + }, + { + "operator": "file.start_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_start_filter" + }, + { + "operator": "file.unpack_all", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_unpack_all" + }, + { + "operator": "file.unpack_item", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "id_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "id_type", + "type": "INT" + }, + { + "identifier": "method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FILE_OT_unpack_item" + }, + { + "operator": "file.unpack_libraries", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_unpack_libraries" + }, + { + "operator": "file.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FILE_OT_view_selected" + }, + { + "operator": "fluid.bake_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_bake_all" + }, + { + "operator": "fluid.bake_data", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_bake_data" + }, + { + "operator": "fluid.bake_guides", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_bake_guides" + }, + { + "operator": "fluid.bake_mesh", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_bake_mesh" + }, + { + "operator": "fluid.bake_noise", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_bake_noise" + }, + { + "operator": "fluid.bake_particles", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_bake_particles" + }, + { + "operator": "fluid.free_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_free_all" + }, + { + "operator": "fluid.free_data", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_free_data" + }, + { + "operator": "fluid.free_guides", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_free_guides" + }, + { + "operator": "fluid.free_mesh", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_free_mesh" + }, + { + "operator": "fluid.free_noise", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_free_noise" + }, + { + "operator": "fluid.free_particles", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_free_particles" + }, + { + "operator": "fluid.pause_bake", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FLUID_OT_pause_bake" + }, + { + "operator": "fluid.preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "FLUID_OT_preset_add" + }, + { + "operator": "font.case_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "case", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_case_set" + }, + { + "operator": "font.case_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_case_toggle" + }, + { + "operator": "font.change_character", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_change_character" + }, + { + "operator": "font.change_spacing", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_change_spacing" + }, + { + "operator": "font.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_delete" + }, + { + "operator": "font.line_break", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_line_break" + }, + { + "operator": "font.move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_move" + }, + { + "operator": "font.move_select", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_move_select" + }, + { + "operator": "font.open", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_open" + }, + { + "operator": "font.select_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_select_all" + }, + { + "operator": "font.select_word", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_select_word" + }, + { + "operator": "font.selection_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_selection_set" + }, + { + "operator": "font.style_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + }, + { + "identifier": "style", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_style_set" + }, + { + "operator": "font.style_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "style", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_style_toggle" + }, + { + "operator": "font.text_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_text_copy" + }, + { + "operator": "font.text_cut", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_text_cut" + }, + { + "operator": "font.text_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "accent", + "type": "BOOLEAN" + }, + { + "identifier": "text", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_text_insert" + }, + { + "operator": "font.text_insert_unicode", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_text_insert_unicode" + }, + { + "operator": "font.text_paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_text_paste" + }, + { + "operator": "font.text_paste_from_file", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_text_paste_from_file" + }, + { + "operator": "font.textbox_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_textbox_add" + }, + { + "operator": "font.textbox_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "FONT_OT_textbox_remove" + }, + { + "operator": "font.unlink", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "FONT_OT_unlink" + }, + { + "operator": "geometry.attribute_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "domain", + "type": "ENUM" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_attribute_add" + }, + { + "operator": "geometry.attribute_convert", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "domain", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_attribute_convert" + }, + { + "operator": "geometry.attribute_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_attribute_remove" + }, + { + "operator": "geometry.color_attribute_add", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "domain", + "type": "ENUM" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_color_attribute_add" + }, + { + "operator": "geometry.color_attribute_convert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "domain", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_color_attribute_convert" + }, + { + "operator": "geometry.color_attribute_duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_color_attribute_duplicate" + }, + { + "operator": "geometry.color_attribute_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_color_attribute_remove" + }, + { + "operator": "geometry.color_attribute_render_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_color_attribute_render_set" + }, + { + "operator": "geometry.geometry_randomization", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "value", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GEOMETRY_OT_geometry_randomization" + }, + { + "operator": "gizmogroup.gizmo_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GIZMOGROUP_OT_gizmo_select" + }, + { + "operator": "gizmogroup.gizmo_tweak", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GIZMOGROUP_OT_gizmo_tweak" + }, + { + "operator": "gpencil.annotate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "arrowstyle_end", + "type": "ENUM" + }, + { + "identifier": "arrowstyle_start", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "stabilizer_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "stabilizer_radius", + "type": "INT" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_stabilizer", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_annotate" + }, + { + "operator": "gpencil.annotation_active_frame_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_annotation_active_frame_delete" + }, + { + "operator": "gpencil.annotation_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_annotation_add" + }, + { + "operator": "gpencil.data_unlink", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_data_unlink" + }, + { + "operator": "gpencil.layer_annotation_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_layer_annotation_add" + }, + { + "operator": "gpencil.layer_annotation_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_layer_annotation_move" + }, + { + "operator": "gpencil.layer_annotation_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GPENCIL_OT_layer_annotation_remove" + }, + { + "operator": "graph.bake_keys", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_bake_keys" + }, + { + "operator": "graph.blend_offset", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_blend_offset" + }, + { + "operator": "graph.blend_to_default", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_blend_to_default" + }, + { + "operator": "graph.blend_to_ease", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_blend_to_ease" + }, + { + "operator": "graph.blend_to_neighbor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_blend_to_neighbor" + }, + { + "operator": "graph.breakdown", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_breakdown" + }, + { + "operator": "graph.butterworth_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "blend", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "blend_in_out", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cutoff_frequency", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "filter_order", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "samples_per_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_butterworth_smooth" + }, + { + "operator": "graph.clean", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channels", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_clean" + }, + { + "operator": "graph.click_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "frame", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_click_insert" + }, + { + "operator": "graph.clickselect", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "column", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "curves", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_clickselect" + }, + { + "operator": "graph.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_copy" + }, + { + "operator": "graph.cursor_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_cursor_set" + }, + { + "operator": "graph.decimate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "remove_error_margin", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_decimate" + }, + { + "operator": "graph.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_delete" + }, + { + "operator": "graph.driver_delete_invalid", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_driver_delete_invalid" + }, + { + "operator": "graph.driver_variables_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_driver_variables_copy" + }, + { + "operator": "graph.driver_variables_paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "replace", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_driver_variables_paste" + }, + { + "operator": "graph.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_duplicate" + }, + { + "operator": "graph.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "GRAPH_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_duplicate_move" + }, + { + "operator": "graph.ease", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sharpness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_ease" + }, + { + "operator": "graph.easing_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_easing_type" + }, + { + "operator": "graph.equalize_handles", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "flatten", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "handle_length", + "type": "FLOAT" + }, + { + "identifier": "side", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_equalize_handles" + }, + { + "operator": "graph.euler_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_euler_filter" + }, + { + "operator": "graph.extrapolation_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_extrapolation_type" + }, + { + "operator": "graph.fmodifier_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_fmodifier_add" + }, + { + "operator": "graph.fmodifier_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_fmodifier_copy" + }, + { + "operator": "graph.fmodifier_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_fmodifier_delete" + }, + { + "operator": "graph.fmodifier_paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_fmodifier_paste" + }, + { + "operator": "graph.frame_jump", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_frame_jump" + }, + { + "operator": "graph.gaussian_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "filter_width", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sigma", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_gaussian_smooth" + }, + { + "operator": "graph.ghost_curves_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_ghost_curves_clear" + }, + { + "operator": "graph.ghost_curves_create", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_ghost_curves_create" + }, + { + "operator": "graph.handle_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_handle_type" + }, + { + "operator": "graph.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_hide" + }, + { + "operator": "graph.interpolation_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_interpolation_type" + }, + { + "operator": "graph.keyframe_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_keyframe_insert" + }, + { + "operator": "graph.keyframe_jump", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "next", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_keyframe_jump" + }, + { + "operator": "graph.keys_to_samples", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_keys_to_samples" + }, + { + "operator": "graph.local_view", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_local_view" + }, + { + "operator": "graph.match_slope", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_match_slope" + }, + { + "operator": "graph.mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_mirror" + }, + { + "operator": "graph.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "identifier": "merge", + "type": "ENUM" + }, + { + "identifier": "offset", + "type": "ENUM" + }, + { + "identifier": "value_offset", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_paste" + }, + { + "operator": "graph.previewrange_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_previewrange_set" + }, + { + "operator": "graph.push_pull", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_push_pull" + }, + { + "operator": "graph.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_reveal" + }, + { + "operator": "graph.samples_to_keys", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_samples_to_keys" + }, + { + "operator": "graph.scale_average", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_scale_average" + }, + { + "operator": "graph.scale_from_neighbor", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "anchor", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_scale_from_neighbor" + }, + { + "operator": "graph.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_all" + }, + { + "operator": "graph.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "axis_range", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_curve_selection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_box" + }, + { + "operator": "graph.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_curve_selection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_circle" + }, + { + "operator": "graph.select_column", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_column" + }, + { + "operator": "graph.select_key_handles", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "key_action", + "type": "ENUM" + }, + { + "identifier": "left_handle_action", + "type": "ENUM" + }, + { + "identifier": "right_handle_action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_key_handles" + }, + { + "operator": "graph.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_curve_selection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_lasso" + }, + { + "operator": "graph.select_leftright", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_leftright" + }, + { + "operator": "graph.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_less" + }, + { + "operator": "graph.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_linked" + }, + { + "operator": "graph.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_select_more" + }, + { + "operator": "graph.shear", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_shear" + }, + { + "operator": "graph.smooth", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_smooth" + }, + { + "operator": "graph.snap", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_snap" + }, + { + "operator": "graph.snap_cursor_value", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_snap_cursor_value" + }, + { + "operator": "graph.sound_to_samples", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "attack", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "high", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "low", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sthreshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_accumulate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_additive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_square", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_sound_to_samples" + }, + { + "operator": "graph.time_offset", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame_offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_time_offset" + }, + { + "operator": "graph.view_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_view_all" + }, + { + "operator": "graph.view_frame", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GRAPH_OT_view_frame" + }, + { + "operator": "graph.view_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GRAPH_OT_view_selected" + }, + { + "operator": "grease_pencil.active_frame_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_active_frame_delete" + }, + { + "operator": "grease_pencil.bake_grease_pencil_animation", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_target", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + }, + { + "identifier": "project_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "step", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_bake_grease_pencil_animation" + }, + { + "operator": "grease_pencil.brush_stroke", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_brush_stroke" + }, + { + "operator": "grease_pencil.caps_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_caps_set" + }, + { + "operator": "grease_pencil.clean_loose", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "limit", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_clean_loose" + }, + { + "operator": "grease_pencil.convert_curve_type", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_convert_curve_type" + }, + { + "operator": "grease_pencil.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_copy" + }, + { + "operator": "grease_pencil.cyclical_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivide_cyclic_segment", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_cyclical_set" + }, + { + "operator": "grease_pencil.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_delete" + }, + { + "operator": "grease_pencil.delete_breakdown", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_delete_breakdown" + }, + { + "operator": "grease_pencil.delete_frame", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_delete_frame" + }, + { + "operator": "grease_pencil.dissolve", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_dissolve" + }, + { + "operator": "grease_pencil.duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_duplicate" + }, + { + "operator": "grease_pencil.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "GREASE_PENCIL_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_duplicate_move" + }, + { + "operator": "grease_pencil.erase_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_erase_box" + }, + { + "operator": "grease_pencil.erase_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_erase_lasso" + }, + { + "operator": "grease_pencil.extrude", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_extrude" + }, + { + "operator": "grease_pencil.extrude_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "GREASE_PENCIL_OT_extrude", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_extrude_move" + }, + { + "operator": "grease_pencil.fill", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "precision", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_fill" + }, + { + "operator": "grease_pencil.frame_clean_duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_frame_clean_duplicate" + }, + { + "operator": "grease_pencil.frame_duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_frame_duplicate" + }, + { + "operator": "grease_pencil.insert_blank_frame", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_layers", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "duration", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_insert_blank_frame" + }, + { + "operator": "grease_pencil.interpolate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "exclude_breakdowns", + "type": "BOOLEAN" + }, + { + "identifier": "flip", + "type": "ENUM" + }, + { + "identifier": "layers", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "shift", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_steps", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_selection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_interpolate" + }, + { + "operator": "grease_pencil.interpolate_sequence", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "amplitude", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "back", + "type": "FLOAT" + }, + { + "identifier": "easing", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "exclude_breakdowns", + "type": "BOOLEAN" + }, + { + "identifier": "flip", + "type": "ENUM" + }, + { + "identifier": "layers", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "period", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_steps", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "step", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_selection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_interpolate_sequence" + }, + { + "operator": "grease_pencil.join_fills", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_join_fills" + }, + { + "operator": "grease_pencil.join_selection", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_join_selection" + }, + { + "operator": "grease_pencil.layer_active", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "layer", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_active" + }, + { + "operator": "grease_pencil.layer_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "new_layer_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_add" + }, + { + "operator": "grease_pencil.layer_duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "empty_keyframes", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_duplicate" + }, + { + "operator": "grease_pencil.layer_duplicate_object", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_duplicate_object" + }, + { + "operator": "grease_pencil.layer_group_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "new_layer_group_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_group_add" + }, + { + "operator": "grease_pencil.layer_group_color_tag", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "color_tag", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_group_color_tag" + }, + { + "operator": "grease_pencil.layer_group_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_children", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_group_remove" + }, + { + "operator": "grease_pencil.layer_hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_hide" + }, + { + "operator": "grease_pencil.layer_isolate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "affect_visibility", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_isolate" + }, + { + "operator": "grease_pencil.layer_lock_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "lock", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_lock_all" + }, + { + "operator": "grease_pencil.layer_mask_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_mask_add" + }, + { + "operator": "grease_pencil.layer_mask_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_mask_remove" + }, + { + "operator": "grease_pencil.layer_mask_reorder", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_mask_reorder" + }, + { + "operator": "grease_pencil.layer_merge", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_merge" + }, + { + "operator": "grease_pencil.layer_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_move" + }, + { + "operator": "grease_pencil.layer_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_remove" + }, + { + "operator": "grease_pencil.layer_reveal", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_layer_reveal" + }, + { + "operator": "grease_pencil.material_copy_to_object", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_copy_to_object" + }, + { + "operator": "grease_pencil.material_hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_hide" + }, + { + "operator": "grease_pencil.material_isolate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "affect_visibility", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_isolate" + }, + { + "operator": "grease_pencil.material_lock_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_lock_all" + }, + { + "operator": "grease_pencil.material_lock_unselected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_lock_unselected" + }, + { + "operator": "grease_pencil.material_lock_unused", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_lock_unused" + }, + { + "operator": "grease_pencil.material_reveal", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_reveal" + }, + { + "operator": "grease_pencil.material_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_select" + }, + { + "operator": "grease_pencil.material_unlock_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_material_unlock_all" + }, + { + "operator": "grease_pencil.move_to_layer", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_new_layer", + "type": "BOOLEAN" + }, + { + "identifier": "target_group_name", + "type": "STRING" + }, + { + "identifier": "target_layer_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_move_to_layer" + }, + { + "operator": "grease_pencil.outline", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "corner_subdivisions", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_outline" + }, + { + "operator": "grease_pencil.paintmode_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "back", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_paintmode_toggle" + }, + { + "operator": "grease_pencil.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_world_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "paste_back", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_paste" + }, + { + "operator": "grease_pencil.pen", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cycle_handle_type", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "delete_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "extrude_handle", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extrude_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "insert_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_pen" + }, + { + "operator": "grease_pencil.primitive_arc", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivision", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_primitive_arc" + }, + { + "operator": "grease_pencil.primitive_box", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivision", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_primitive_box" + }, + { + "operator": "grease_pencil.primitive_circle", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivision", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_primitive_circle" + }, + { + "operator": "grease_pencil.primitive_curve", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivision", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_primitive_curve" + }, + { + "operator": "grease_pencil.primitive_line", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivision", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_primitive_line" + }, + { + "operator": "grease_pencil.primitive_polyline", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "subdivision", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_primitive_polyline" + }, + { + "operator": "grease_pencil.relative_layer_mask_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_relative_layer_mask_add" + }, + { + "operator": "grease_pencil.remove_fill_guides", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_remove_fill_guides" + }, + { + "operator": "grease_pencil.reorder", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_reorder" + }, + { + "operator": "grease_pencil.reproject", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_original", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_reproject" + }, + { + "operator": "grease_pencil.reset_uvs", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_reset_uvs" + }, + { + "operator": "grease_pencil.sculpt_paint", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_sculpt_paint" + }, + { + "operator": "grease_pencil.sculptmode_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "back", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_sculptmode_toggle" + }, + { + "operator": "grease_pencil.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_all" + }, + { + "operator": "grease_pencil.select_alternate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect_ends", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_alternate" + }, + { + "operator": "grease_pencil.select_by_stroke_type", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_by_stroke_type" + }, + { + "operator": "grease_pencil.select_ends", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "amount_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "amount_start", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_ends" + }, + { + "operator": "grease_pencil.select_fill", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_fill" + }, + { + "operator": "grease_pencil.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_less" + }, + { + "operator": "grease_pencil.select_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_linked" + }, + { + "operator": "grease_pencil.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_more" + }, + { + "operator": "grease_pencil.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_random" + }, + { + "operator": "grease_pencil.select_similar", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_select_similar" + }, + { + "operator": "grease_pencil.separate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_separate" + }, + { + "operator": "grease_pencil.separate_fills", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "individual", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_separate_fills" + }, + { + "operator": "grease_pencil.set_active_material", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_active_material" + }, + { + "operator": "grease_pencil.set_corner_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "corner_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "miter_angle", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_corner_type" + }, + { + "operator": "grease_pencil.set_curve_resolution", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "resolution", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_curve_resolution" + }, + { + "operator": "grease_pencil.set_curve_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_handles", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_curve_type" + }, + { + "operator": "grease_pencil.set_handle_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_handle_type" + }, + { + "operator": "grease_pencil.set_material", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "slot", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_material" + }, + { + "operator": "grease_pencil.set_selection_mode", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_selection_mode" + }, + { + "operator": "grease_pencil.set_start_point", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_start_point" + }, + { + "operator": "grease_pencil.set_stroke_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_stroke_type" + }, + { + "operator": "grease_pencil.set_uniform_opacity", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "opacity_fill", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "opacity_stroke", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_uniform_opacity" + }, + { + "operator": "grease_pencil.set_uniform_thickness", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "thickness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_set_uniform_thickness" + }, + { + "operator": "grease_pencil.snap_cursor_to_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_snap_cursor_to_selected" + }, + { + "operator": "grease_pencil.snap_to_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_offset", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_snap_to_cursor" + }, + { + "operator": "grease_pencil.snap_to_grid", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_snap_to_grid" + }, + { + "operator": "grease_pencil.stroke_material_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "material", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_material_set" + }, + { + "operator": "grease_pencil.stroke_merge_by_distance", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_merge_by_distance" + }, + { + "operator": "grease_pencil.stroke_reset_vertex_color", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_reset_vertex_color" + }, + { + "operator": "grease_pencil.stroke_simplify", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "length", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "steps", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_simplify" + }, + { + "operator": "grease_pencil.stroke_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "keep_shape", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "smooth_ends", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "smooth_opacity", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "smooth_position", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "smooth_radius", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_smooth" + }, + { + "operator": "grease_pencil.stroke_split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_split" + }, + { + "operator": "grease_pencil.stroke_subdivide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_subdivide" + }, + { + "operator": "grease_pencil.stroke_subdivide_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "GREASE_PENCIL_OT_stroke_smooth", + "type": "POINTER" + }, + { + "identifier": "GREASE_PENCIL_OT_stroke_subdivide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_subdivide_smooth" + }, + { + "operator": "grease_pencil.stroke_switch_direction", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_switch_direction" + }, + { + "operator": "grease_pencil.stroke_trim", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_stroke_trim" + }, + { + "operator": "grease_pencil.texture_gradient", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_texture_gradient" + }, + { + "operator": "grease_pencil.trace_image", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame_number", + "type": "INT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "turnpolicy", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_current_frame", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_trace_image" + }, + { + "operator": "grease_pencil.vertex_brush_stroke", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_brush_stroke" + }, + { + "operator": "grease_pencil.vertex_color_brightness_contrast", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "brightness", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "contrast", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_color_brightness_contrast" + }, + { + "operator": "grease_pencil.vertex_color_hsv", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "h", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "s", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "v", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_color_hsv" + }, + { + "operator": "grease_pencil.vertex_color_invert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_color_invert" + }, + { + "operator": "grease_pencil.vertex_color_levels", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "gain", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_color_levels" + }, + { + "operator": "grease_pencil.vertex_color_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_color_set" + }, + { + "operator": "grease_pencil.vertex_group_normalize", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_group_normalize" + }, + { + "operator": "grease_pencil.vertex_group_normalize_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "lock_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_group_normalize_all" + }, + { + "operator": "grease_pencil.vertex_group_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "repeat", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertex_group_smooth" + }, + { + "operator": "grease_pencil.vertexmode_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "back", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_vertexmode_toggle" + }, + { + "operator": "grease_pencil.weight_brush_stroke", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_weight_brush_stroke" + }, + { + "operator": "grease_pencil.weight_invert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_weight_invert" + }, + { + "operator": "grease_pencil.weight_sample", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_weight_sample" + }, + { + "operator": "grease_pencil.weight_toggle_direction", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_weight_toggle_direction" + }, + { + "operator": "grease_pencil.weightmode_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "back", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "GREASE_PENCIL_OT_weightmode_toggle" + }, + { + "operator": "image.add_render_slot", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_add_render_slot" + }, + { + "operator": "image.change_frame", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_change_frame" + }, + { + "operator": "image.clear_render_border", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_clear_render_border" + }, + { + "operator": "image.clear_render_slot", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_clear_render_slot" + }, + { + "operator": "image.clipboard_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_clipboard_copy" + }, + { + "operator": "image.clipboard_paste", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_clipboard_paste" + }, + { + "operator": "image.convert_to_mesh_plane", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delete_ref", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "emit_strength", + "type": "FLOAT" + }, + { + "identifier": "extension", + "type": "ENUM" + }, + { + "identifier": "interpolation", + "type": "ENUM" + }, + { + "identifier": "name_from", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "overwrite_material", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative", + "type": "BOOLEAN" + }, + { + "identifier": "render_method", + "type": "ENUM" + }, + { + "identifier": "shader", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_transparent_back", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_auto_refresh", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backface_culling", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_transparency", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_convert_to_mesh_plane" + }, + { + "operator": "image.curves_point_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "point", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_curves_point_set" + }, + { + "operator": "image.cycle_render_slot", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_cycle_render_slot" + }, + { + "operator": "image.external_edit", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_external_edit" + }, + { + "operator": "image.file_browse", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_file_browse" + }, + { + "operator": "image.flip", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_flip_x", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_flip_y", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_flip" + }, + { + "operator": "image.import_as_mesh_planes", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "identifier": "align_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "align_track", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "emit_strength", + "type": "FLOAT" + }, + { + "identifier": "extension", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "identifier": "fill_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "force_reload", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "image_sequence", + "type": "BOOLEAN" + }, + { + "identifier": "interpolation", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "offset_amount", + "type": "FLOAT" + }, + { + "identifier": "offset_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "overwrite_material", + "type": "BOOLEAN" + }, + { + "identifier": "prev_align_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "relative", + "type": "BOOLEAN" + }, + { + "identifier": "render_method", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "identifier": "shader", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_transparent_back", + "type": "BOOLEAN" + }, + { + "identifier": "size_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_refresh", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backface_culling", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_transparency", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_import_as_mesh_planes" + }, + { + "operator": "image.invert", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "invert_a", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_b", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_g", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_r", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_invert" + }, + { + "operator": "image.match_movie_length", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_match_movie_length" + }, + { + "operator": "image.new", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "alpha", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "float", + "type": "BOOLEAN" + }, + { + "identifier": "generated_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "INT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "tiled", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stereo_3d", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "width", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_new" + }, + { + "operator": "image.open", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "allow_path_tokens", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sequence_detection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_udim_detecting", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_open" + }, + { + "operator": "image.open_images", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sequence_detection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_udim_detection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_open_images" + }, + { + "operator": "image.pack", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_pack" + }, + { + "operator": "image.project_apply", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_project_apply" + }, + { + "operator": "image.project_edit", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_project_edit" + }, + { + "operator": "image.read_viewlayers", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_read_viewlayers" + }, + { + "operator": "image.reload", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_reload" + }, + { + "operator": "image.remove_render_slot", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_remove_render_slot" + }, + { + "operator": "image.render_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_render_border" + }, + { + "operator": "image.replace", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_replace" + }, + { + "operator": "image.resize", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_udims", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "size", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_resize" + }, + { + "operator": "image.rotate_orthogonal", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "degrees", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_rotate_orthogonal" + }, + { + "operator": "image.sample", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "size", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_sample" + }, + { + "operator": "image.sample_line", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_sample_line" + }, + { + "operator": "image.save", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_save" + }, + { + "operator": "image.save_all_modified", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_save_all_modified" + }, + { + "operator": "image.save_as", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "allow_path_tokens", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "copy", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "save_as_render", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_save_as" + }, + { + "operator": "image.save_sequence", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_save_sequence" + }, + { + "operator": "image.tile_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "alpha", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "count", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "float", + "type": "BOOLEAN" + }, + { + "identifier": "generated_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "INT" + }, + { + "identifier": "label", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "number", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "width", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_tile_add" + }, + { + "operator": "image.tile_fill", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "alpha", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "float", + "type": "BOOLEAN" + }, + { + "identifier": "generated_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "width", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_tile_fill" + }, + { + "operator": "image.tile_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_tile_remove" + }, + { + "operator": "image.unpack", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "id", + "type": "STRING" + }, + { + "identifier": "method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_unpack" + }, + { + "operator": "image.view_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "fit_view", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_all" + }, + { + "operator": "image.view_center_cursor", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_center_cursor" + }, + { + "operator": "image.view_cursor_center", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "fit_view", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_cursor_center" + }, + { + "operator": "image.view_ndof", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_ndof" + }, + { + "operator": "image.view_pan", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_pan" + }, + { + "operator": "image.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_selected" + }, + { + "operator": "image.view_zoom", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_zoom" + }, + { + "operator": "image.view_zoom_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "zoom_out", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_zoom_border" + }, + { + "operator": "image.view_zoom_in", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_zoom_in" + }, + { + "operator": "image.view_zoom_out", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_zoom_out" + }, + { + "operator": "image.view_zoom_ratio", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "IMAGE_OT_view_zoom_ratio" + }, + { + "operator": "import_anim.bvh", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_forward", + "type": "ENUM" + }, + { + "identifier": "axis_up", + "type": "ENUM" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "identifier": "rotate_mode", + "type": "ENUM" + }, + { + "identifier": "target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "update_scene_duration", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "update_scene_fps", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fps_scale", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMPORT_ANIM_OT_bvh" + }, + { + "operator": "import_curve.svg", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "IMPORT_CURVE_OT_svg" + }, + { + "operator": "import_scene.fbx", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "anim_offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "automatic_bone_orientation", + "type": "BOOLEAN" + }, + { + "identifier": "axis_forward", + "type": "ENUM" + }, + { + "identifier": "axis_up", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bake_space_transform", + "type": "BOOLEAN" + }, + { + "identifier": "colors_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "decal_offset", + "type": "FLOAT" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "force_connect_children", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ignore_leaf_bones", + "type": "BOOLEAN" + }, + { + "identifier": "mtl_name_collision_mode", + "type": "ENUM" + }, + { + "identifier": "primary_bone_axis", + "type": "ENUM" + }, + { + "identifier": "secondary_bone_axis", + "type": "ENUM" + }, + { + "identifier": "ui_tab", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_alpha_decals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_anim", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props_enum_as_string", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_image_search", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_manual_orientation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_prepost_rot", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_subsurf", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMPORT_SCENE_OT_fbx" + }, + { + "operator": "import_scene.gltf", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "bone_heuristic", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bone_shape_scale_factor", + "type": "FLOAT" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "disable_bone_shape", + "type": "BOOLEAN" + }, + { + "identifier": "export_import_convert_lighting_mode", + "type": "ENUM" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "guess_original_bind_pose", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_merge_material_slots", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_pack_images", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_point_as_pointcloud", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_scene_as_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_scene_extras", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_select_created_objects", + "type": "BOOLEAN" + }, + { + "identifier": "import_shading", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "import_unused_materials", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_webp_texture", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "loglevel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "merge_vertices", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "IMPORT_SCENE_OT_gltf" + }, + { + "operator": "info.report_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "INFO_OT_report_copy" + }, + { + "operator": "info.report_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "INFO_OT_report_delete" + }, + { + "operator": "info.report_replay", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "INFO_OT_report_replay" + }, + { + "operator": "info.reports_display_update", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "INFO_OT_reports_display_update" + }, + { + "operator": "info.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "INFO_OT_select_all" + }, + { + "operator": "info.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "INFO_OT_select_box" + }, + { + "operator": "info.select_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "report_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "INFO_OT_select_pick" + }, + { + "operator": "lattice.flip", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "LATTICE_OT_flip" + }, + { + "operator": "lattice.make_regular", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "LATTICE_OT_make_regular" + }, + { + "operator": "lattice.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "LATTICE_OT_select_all" + }, + { + "operator": "lattice.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "LATTICE_OT_select_less" + }, + { + "operator": "lattice.select_mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "LATTICE_OT_select_mirror" + }, + { + "operator": "lattice.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "LATTICE_OT_select_more" + }, + { + "operator": "lattice.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "LATTICE_OT_select_random" + }, + { + "operator": "lattice.select_ungrouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "LATTICE_OT_select_ungrouped" + }, + { + "operator": "marker.add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MARKER_OT_add" + }, + { + "operator": "marker.camera_bind", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MARKER_OT_camera_bind" + }, + { + "operator": "marker.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_delete" + }, + { + "operator": "marker.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frames", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_duplicate" + }, + { + "operator": "marker.make_links_scene", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "scene", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_make_links_scene" + }, + { + "operator": "marker.move", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frames", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_move" + }, + { + "operator": "marker.rename", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_rename" + }, + { + "operator": "marker.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "camera", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_select" + }, + { + "operator": "marker.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_select_all" + }, + { + "operator": "marker.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_select_box" + }, + { + "operator": "marker.select_leftright", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MARKER_OT_select_leftright" + }, + { + "operator": "mask.add_feather_vertex", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_add_feather_vertex" + }, + { + "operator": "mask.add_feather_vertex_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MASK_OT_add_feather_vertex", + "type": "POINTER" + }, + { + "identifier": "MASK_OT_slide_point", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_add_feather_vertex_slide" + }, + { + "operator": "mask.add_vertex", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_add_vertex" + }, + { + "operator": "mask.add_vertex_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MASK_OT_add_vertex", + "type": "POINTER" + }, + { + "identifier": "MASK_OT_slide_point", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_add_vertex_slide" + }, + { + "operator": "mask.copy_splines", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_copy_splines" + }, + { + "operator": "mask.cyclic_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_cyclic_toggle" + }, + { + "operator": "mask.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_delete" + }, + { + "operator": "mask.duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_duplicate" + }, + { + "operator": "mask.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MASK_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_duplicate_move" + }, + { + "operator": "mask.feather_weight_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_feather_weight_clear" + }, + { + "operator": "mask.handle_type_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_handle_type_set" + }, + { + "operator": "mask.hide_view_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_hide_view_clear" + }, + { + "operator": "mask.hide_view_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_hide_view_set" + }, + { + "operator": "mask.layer_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_layer_move" + }, + { + "operator": "mask.layer_new", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_layer_new" + }, + { + "operator": "mask.layer_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_layer_remove" + }, + { + "operator": "mask.move_to_layer", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_new_layer", + "type": "BOOLEAN" + }, + { + "identifier": "target_layer_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_move_to_layer" + }, + { + "operator": "mask.new", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_new" + }, + { + "operator": "mask.normals_make_consistent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_normals_make_consistent" + }, + { + "operator": "mask.parent_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_parent_clear" + }, + { + "operator": "mask.parent_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_parent_set" + }, + { + "operator": "mask.paste_splines", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_paste_splines" + }, + { + "operator": "mask.primitive_circle_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_primitive_circle_add" + }, + { + "operator": "mask.primitive_square_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_primitive_square_add" + }, + { + "operator": "mask.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_select" + }, + { + "operator": "mask.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_select_all" + }, + { + "operator": "mask.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_select_box" + }, + { + "operator": "mask.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_select_circle" + }, + { + "operator": "mask.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_select_lasso" + }, + { + "operator": "mask.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_select_less" + }, + { + "operator": "mask.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_select_linked" + }, + { + "operator": "mask.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_select_linked_pick" + }, + { + "operator": "mask.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_select_more" + }, + { + "operator": "mask.shape_key_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_shape_key_clear" + }, + { + "operator": "mask.shape_key_feather_reset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_shape_key_feather_reset" + }, + { + "operator": "mask.shape_key_insert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_shape_key_insert" + }, + { + "operator": "mask.shape_key_rekey", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "feather", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "location", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_shape_key_rekey" + }, + { + "operator": "mask.slide_point", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "is_new_point", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "slide_feather", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MASK_OT_slide_point" + }, + { + "operator": "mask.slide_spline_curvature", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_slide_spline_curvature" + }, + { + "operator": "mask.switch_direction", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MASK_OT_switch_direction" + }, + { + "operator": "material.copy", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MATERIAL_OT_copy" + }, + { + "operator": "material.new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MATERIAL_OT_new" + }, + { + "operator": "material.paste", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MATERIAL_OT_paste" + }, + { + "operator": "mball.delete_metaelems", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_delete_metaelems" + }, + { + "operator": "mball.duplicate_metaelems", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MBALL_OT_duplicate_metaelems" + }, + { + "operator": "mball.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MBALL_OT_duplicate_metaelems", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_duplicate_move" + }, + { + "operator": "mball.hide_metaelems", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_hide_metaelems" + }, + { + "operator": "mball.reveal_metaelems", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_reveal_metaelems" + }, + { + "operator": "mball.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_select_all" + }, + { + "operator": "mball.select_random_metaelems", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_select_random_metaelems" + }, + { + "operator": "mball.select_similar", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MBALL_OT_select_similar" + }, + { + "operator": "mesh.attribute_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "value_bool", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "value_color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value_float", + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "value_float_vector_2d", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "value_float_vector_3d", + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "value_float_vector_4d", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value_int", + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "value_int_vector_2d", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_attribute_set" + }, + { + "operator": "mesh.average_normals", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "average_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "weight", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_average_normals" + }, + { + "operator": "mesh.beautify_fill", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle_limit", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_beautify_fill" + }, + { + "operator": "mesh.bevel", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "affect", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clamp_overlap", + "type": "BOOLEAN" + }, + { + "identifier": "face_strength_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "harden_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "loop_slide", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mark_seam", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mark_sharp", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "material", + "type": "INT" + }, + { + "identifier": "miter_inner", + "type": "ENUM" + }, + { + "identifier": "miter_outer", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset_pct", + "type": "FLOAT" + }, + { + "identifier": "offset_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "profile", + "type": "FLOAT" + }, + { + "identifier": "profile_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "segments", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "spread", + "type": "FLOAT" + }, + { + "identifier": "vmesh_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_bevel" + }, + { + "operator": "mesh.bisect", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear_inner", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clear_outer", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "plane_co", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "plane_no", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_bisect" + }, + { + "operator": "mesh.blend_from_shape", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "blend", + "type": "FLOAT" + }, + { + "identifier": "shape", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_blend_from_shape" + }, + { + "operator": "mesh.bridge_edge_loops", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "interpolation", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "merge_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + }, + { + "identifier": "profile_shape", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "profile_shape_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smoothness", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "twist_offset", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_merge", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_bridge_edge_loops" + }, + { + "operator": "mesh.circularize", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "custom_radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "identifier": "fit_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "flatten", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "lock", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "regular", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_radius", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_circularize" + }, + { + "operator": "mesh.colors_reverse", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_colors_reverse" + }, + { + "operator": "mesh.colors_rotate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_ccw", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_colors_rotate" + }, + { + "operator": "mesh.convex_hull", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delete_unused", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_joined", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "face_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "join_triangles", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "make_holes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "materials", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seam", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "shape_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sharp", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "topology_influence", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_existing_faces", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vcols", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_convex_hull" + }, + { + "operator": "mesh.customdata_custom_splitnormals_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_customdata_custom_splitnormals_add" + }, + { + "operator": "mesh.customdata_custom_splitnormals_clear", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_customdata_custom_splitnormals_clear" + }, + { + "operator": "mesh.customdata_face_sets_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_customdata_face_sets_clear" + }, + { + "operator": "mesh.customdata_mask_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_customdata_mask_clear" + }, + { + "operator": "mesh.customdata_skin_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_customdata_skin_add" + }, + { + "operator": "mesh.customdata_skin_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_customdata_skin_clear" + }, + { + "operator": "mesh.decimate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "invert_vertex_group", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "identifier": "symmetry_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_symmetry", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_vertex_group", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vertex_group_factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_decimate" + }, + { + "operator": "mesh.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_delete" + }, + { + "operator": "mesh.delete_edgeloop", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_face_split", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_delete_edgeloop" + }, + { + "operator": "mesh.delete_loose", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_edges", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_faces", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_verts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_delete_loose" + }, + { + "operator": "mesh.dissolve_degenerate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dissolve_degenerate" + }, + { + "operator": "mesh.dissolve_edges", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_face_split", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_quads", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_verts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dissolve_edges" + }, + { + "operator": "mesh.dissolve_faces", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_verts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dissolve_faces" + }, + { + "operator": "mesh.dissolve_limited", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle_limit", + "type": "FLOAT" + }, + { + "identifier": "delimit", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve_boundaries", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dissolve_limited" + }, + { + "operator": "mesh.dissolve_mode", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_boundary_tear", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_face_split", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_quads", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_verts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dissolve_mode" + }, + { + "operator": "mesh.dissolve_verts", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_boundary_tear", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_face_split", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dissolve_verts" + }, + { + "operator": "mesh.dupli_extrude_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "rotate_source", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_dupli_extrude_cursor" + }, + { + "operator": "mesh.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mode", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_duplicate" + }, + { + "operator": "mesh.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_duplicate_move" + }, + { + "operator": "mesh.edge_collapse", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_edge_collapse" + }, + { + "operator": "mesh.edge_face_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_edge_face_add" + }, + { + "operator": "mesh.edge_rotate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_ccw", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_edge_rotate" + }, + { + "operator": "mesh.edge_split", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_edge_split" + }, + { + "operator": "mesh.edgering_select", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit_edge_ring", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "edge_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "face_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "object_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vert_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_edgering_select" + }, + { + "operator": "mesh.edges_select_sharp", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "sharpness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_edges_select_sharp" + }, + { + "operator": "mesh.extrude_context", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve_ortho_edges", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normal_flip", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_context" + }, + { + "operator": "mesh.extrude_context_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_context", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_context_move" + }, + { + "operator": "mesh.extrude_edges_indiv", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normal_flip", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_edges_indiv" + }, + { + "operator": "mesh.extrude_edges_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_edges_indiv", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_edges_move" + }, + { + "operator": "mesh.extrude_faces_indiv", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_faces_indiv" + }, + { + "operator": "mesh.extrude_faces_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_faces_indiv", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_shrink_fatten", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_faces_move" + }, + { + "operator": "mesh.extrude_manifold", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_region", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_manifold" + }, + { + "operator": "mesh.extrude_region", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve_ortho_edges", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normal_flip", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_region" + }, + { + "operator": "mesh.extrude_region_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_region", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_region_move" + }, + { + "operator": "mesh.extrude_region_shrink_fatten", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_region", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_shrink_fatten", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_region_shrink_fatten" + }, + { + "operator": "mesh.extrude_repeat", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "scale_offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "steps", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_repeat" + }, + { + "operator": "mesh.extrude_vertices_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_verts_indiv", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_vertices_move" + }, + { + "operator": "mesh.extrude_verts_indiv", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_extrude_verts_indiv" + }, + { + "operator": "mesh.face_make_planar", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "repeat", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_face_make_planar" + }, + { + "operator": "mesh.face_split_by_edges", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_face_split_by_edges" + }, + { + "operator": "mesh.faces_select_linked_flat", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "sharpness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_faces_select_linked_flat" + }, + { + "operator": "mesh.faces_shade_flat", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_faces_shade_flat" + }, + { + "operator": "mesh.faces_shade_smooth", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_faces_shade_smooth" + }, + { + "operator": "mesh.fill", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_beauty", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_fill" + }, + { + "operator": "mesh.fill_grid", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "span", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_interp_simple", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_fill_grid" + }, + { + "operator": "mesh.fill_holes", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "sides", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_fill_holes" + }, + { + "operator": "mesh.flatten", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "lock", + "type": "BOOLEAN" + }, + { + "identifier": "method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_flatten" + }, + { + "operator": "mesh.flip_normals", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_clnors", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_flip_normals" + }, + { + "operator": "mesh.flip_quad_tessellation", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_flip_quad_tessellation" + }, + { + "operator": "mesh.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_hide" + }, + { + "operator": "mesh.inset", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "depth", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "thickness", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_boundary", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_edge_rail", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_individual", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_interpolate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_outset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_relative_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_select_inset", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_inset" + }, + { + "operator": "mesh.intersect", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "separate_mode", + "type": "ENUM" + }, + { + "identifier": "solver", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_intersect" + }, + { + "operator": "mesh.intersect_boolean", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "operation", + "type": "ENUM" + }, + { + "identifier": "solver", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_swap", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_intersect_boolean" + }, + { + "operator": "mesh.knife_project", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cut_through", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_knife_project" + }, + { + "operator": "mesh.knife_tool", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "angle_snapping", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "angle_snapping_increment", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_occlude_geometry", + "type": "BOOLEAN" + }, + { + "identifier": "visible_measurements", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xray", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_knife_tool" + }, + { + "operator": "mesh.loop_select", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit_edge_loop", + "type": "ENUM" + }, + { + "identifier": "delimit_face_loop", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "edge_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "face_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "object_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vert_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_loop_select" + }, + { + "operator": "mesh.loop_to_region", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select_bigger", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_loop_to_region" + }, + { + "operator": "mesh.loopcut", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "edge_index", + "type": "INT" + }, + { + "identifier": "falloff", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "mesh_select_mode_init", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "object_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "smoothness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_loopcut" + }, + { + "operator": "mesh.loopcut_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_loopcut", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_edge_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_loopcut_slide" + }, + { + "operator": "mesh.mark_freestyle_edge", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_mark_freestyle_edge" + }, + { + "operator": "mesh.mark_freestyle_face", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_mark_freestyle_face" + }, + { + "operator": "mesh.mark_seam", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_mark_seam" + }, + { + "operator": "mesh.mark_sharp", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_verts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_mark_sharp" + }, + { + "operator": "mesh.merge", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "uvs", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_merge" + }, + { + "operator": "mesh.merge_normals", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_merge_normals" + }, + { + "operator": "mesh.mod_weighted_strength", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "face_strength", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "set", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_mod_weighted_strength" + }, + { + "operator": "mesh.normals_make_consistent", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "inside", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_normals_make_consistent" + }, + { + "operator": "mesh.normals_tools", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "absolute", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_normals_tools" + }, + { + "operator": "mesh.offset_edge_loops", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_cap_endpoint", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_offset_edge_loops" + }, + { + "operator": "mesh.offset_edge_loops_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_offset_edge_loops", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_edge_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_offset_edge_loops_slide" + }, + { + "operator": "mesh.point_normals", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "align", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "spherize", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "spherize_strength", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "target_location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_point_normals" + }, + { + "operator": "mesh.poke", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "center_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_relative_offset", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_poke" + }, + { + "operator": "mesh.polybuild_delete_at_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_delete_at_cursor" + }, + { + "operator": "mesh.polybuild_dissolve_at_cursor", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_dissolve_at_cursor" + }, + { + "operator": "mesh.polybuild_extrude_at_cursor_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_extrude_edges_indiv", + "type": "POINTER" + }, + { + "identifier": "MESH_OT_polybuild_transform_at_cursor", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_extrude_at_cursor_move" + }, + { + "operator": "mesh.polybuild_face_at_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "create_quads", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_face_at_cursor" + }, + { + "operator": "mesh.polybuild_face_at_cursor_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_polybuild_face_at_cursor", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_face_at_cursor_move" + }, + { + "operator": "mesh.polybuild_split_at_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_split_at_cursor" + }, + { + "operator": "mesh.polybuild_split_at_cursor_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_polybuild_split_at_cursor", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_split_at_cursor_move" + }, + { + "operator": "mesh.polybuild_transform_at_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_transform_at_cursor" + }, + { + "operator": "mesh.polybuild_transform_at_cursor_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_polybuild_transform_at_cursor", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_polybuild_transform_at_cursor_move" + }, + { + "operator": "mesh.primitive_circle_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "identifier": "fill_type", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vertices", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_circle_add" + }, + { + "operator": "mesh.primitive_cone_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "depth", + "type": "FLOAT" + }, + { + "identifier": "end_fill_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius1", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius2", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vertices", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_cone_add" + }, + { + "operator": "mesh.primitive_cube_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_cube_add" + }, + { + "operator": "mesh.primitive_cube_add_gizmo", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 16, + "identifier": "matrix", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_cube_add_gizmo" + }, + { + "operator": "mesh.primitive_cylinder_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "depth", + "type": "FLOAT" + }, + { + "identifier": "end_fill_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vertices", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_cylinder_add" + }, + { + "operator": "mesh.primitive_grid_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "x_subdivisions", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y_subdivisions", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_grid_add" + }, + { + "operator": "mesh.primitive_ico_sphere_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "subdivisions", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_ico_sphere_add" + }, + { + "operator": "mesh.primitive_monkey_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_monkey_add" + }, + { + "operator": "mesh.primitive_plane_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_plane_add" + }, + { + "operator": "mesh.primitive_torus_add", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "abso_major_rad", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "abso_minor_rad", + "type": "FLOAT" + }, + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "generate_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "major_radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "major_segments", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "minor_radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "minor_segments", + "type": "INT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_torus_add" + }, + { + "operator": "mesh.primitive_uv_sphere_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "calc_uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ring_count", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "segments", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_primitive_uv_sphere_add" + }, + { + "operator": "mesh.quads_convert_to_tris", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "ngon_method", + "type": "ENUM" + }, + { + "identifier": "quad_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_quads_convert_to_tris" + }, + { + "operator": "mesh.region_to_loop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_region_to_loop" + }, + { + "operator": "mesh.remove_doubles", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_centroid", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sharp_edge_from_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_remove_doubles" + }, + { + "operator": "mesh.reorder_vertices_spatial", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_reorder_vertices_spatial" + }, + { + "operator": "mesh.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_reveal" + }, + { + "operator": "mesh.rip", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_rip" + }, + { + "operator": "mesh.rip_edge", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "direction", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_rip_edge" + }, + { + "operator": "mesh.rip_edge_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_rip_edge", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_rip_edge_move" + }, + { + "operator": "mesh.rip_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "MESH_OT_rip", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_rip_move" + }, + { + "operator": "mesh.screw", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "axis", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "center", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "steps", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "turns", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_screw" + }, + { + "operator": "mesh.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_all" + }, + { + "operator": "mesh.select_axis", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + }, + { + "identifier": "orientation", + "type": "ENUM" + }, + { + "identifier": "sign", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_axis" + }, + { + "operator": "mesh.select_boundary_loop_multi", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit_edge_loop", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_boundary_loop_multi" + }, + { + "operator": "mesh.select_by_attribute", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_select_by_attribute" + }, + { + "operator": "mesh.select_by_pole_count", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "exclude_nonmanifold", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "pole_count", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_by_pole_count" + }, + { + "operator": "mesh.select_edge_loop_multi", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit_edge_loop", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_edge_loop_multi" + }, + { + "operator": "mesh.select_edge_ring_multi", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit_edge_ring", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_edge_ring_multi" + }, + { + "operator": "mesh.select_face_by_sides", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "number", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_face_by_sides" + }, + { + "operator": "mesh.select_interior_faces", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_select_interior_faces" + }, + { + "operator": "mesh.select_less", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_face_step", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_less" + }, + { + "operator": "mesh.select_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_linked" + }, + { + "operator": "mesh.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "object_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_linked_pick" + }, + { + "operator": "mesh.select_loose", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_loose" + }, + { + "operator": "mesh.select_mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_mirror" + }, + { + "operator": "mesh.select_mode", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_expand", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_mode" + }, + { + "operator": "mesh.select_more", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_face_step", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_more" + }, + { + "operator": "mesh.select_next_item", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_select_next_item" + }, + { + "operator": "mesh.select_non_manifold", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_boundary", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multi_face", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_non_contiguous", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_verts", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_wire", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_non_manifold" + }, + { + "operator": "mesh.select_nth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "nth", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "skip", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_nth" + }, + { + "operator": "mesh.select_prev_item", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_select_prev_item" + }, + { + "operator": "mesh.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_random" + }, + { + "operator": "mesh.select_similar", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "compare", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_similar" + }, + { + "operator": "mesh.select_similar_region", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_select_similar_region" + }, + { + "operator": "mesh.select_ungrouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_select_ungrouped" + }, + { + "operator": "mesh.separate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_separate" + }, + { + "operator": "mesh.set_normals_from_faces", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_sharp", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_set_normals_from_faces" + }, + { + "operator": "mesh.set_sharpness_by_angle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_set_sharpness_by_angle" + }, + { + "operator": "mesh.shape_propagate_to_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_shape_propagate_to_all" + }, + { + "operator": "mesh.shortest_path_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "edge_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "nth", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "skip", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_face_step", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_topology_distance", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_shortest_path_pick" + }, + { + "operator": "mesh.shortest_path_select", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "edge_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "nth", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "skip", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_face_step", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_topology_distance", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_shortest_path_select" + }, + { + "operator": "mesh.smooth_normals", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_smooth_normals" + }, + { + "operator": "mesh.solidify", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "thickness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_solidify" + }, + { + "operator": "mesh.sort_elements", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "elements", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_sort_elements" + }, + { + "operator": "mesh.space_edge_loops_evenly", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "identifier": "interpolation", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "lock", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_space_edge_loops_evenly" + }, + { + "operator": "mesh.spin", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "axis", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "center", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "dupli", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "steps", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_auto_merge", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normal_flip", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_spin" + }, + { + "operator": "mesh.split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_split" + }, + { + "operator": "mesh.split_normals", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_split_normals" + }, + { + "operator": "mesh.subdivide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "fractal", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fractal_along_normal", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ngon", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + }, + { + "identifier": "quadcorner", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "smoothness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_subdivide" + }, + { + "operator": "mesh.subdivide_edgering", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "interpolation", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "number_cuts", + "type": "INT" + }, + { + "identifier": "profile_shape", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "profile_shape_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smoothness", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_subdivide_edgering" + }, + { + "operator": "mesh.symmetrize", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_symmetrize" + }, + { + "operator": "mesh.symmetry_snap", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_center", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_topology", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_symmetry_snap" + }, + { + "operator": "mesh.tris_convert_to_quads", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect_joined", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "face_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "materials", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seam", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "shape_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sharp", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "topology_influence", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "uvs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vcols", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_tris_convert_to_quads" + }, + { + "operator": "mesh.unsubdivide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_unsubdivide" + }, + { + "operator": "mesh.uv_texture_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_uv_texture_add" + }, + { + "operator": "mesh.uv_texture_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_uv_texture_remove" + }, + { + "operator": "mesh.uvs_reverse", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_uvs_reverse" + }, + { + "operator": "mesh.uvs_rotate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_ccw", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_uvs_rotate" + }, + { + "operator": "mesh.vert_connect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_vert_connect" + }, + { + "operator": "mesh.vert_connect_concave", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_vert_connect_concave" + }, + { + "operator": "mesh.vert_connect_nonplanar", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle_limit", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_vert_connect_nonplanar" + }, + { + "operator": "mesh.vert_connect_path", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "MESH_OT_vert_connect_path" + }, + { + "operator": "mesh.vertices_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "repeat", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xaxis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "yaxis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "zaxis", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_vertices_smooth" + }, + { + "operator": "mesh.vertices_smooth_laplacian", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "lambda_border", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lambda_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "preserve_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "repeat", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_x", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_y", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_z", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_vertices_smooth_laplacian" + }, + { + "operator": "mesh.wireframe", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "crease_weight", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "thickness", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_boundary", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_crease", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_relative_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_replace", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "MESH_OT_wireframe" + }, + { + "operator": "nla.action_pushdown", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "track_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_action_pushdown" + }, + { + "operator": "nla.action_sync_length", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_action_sync_length" + }, + { + "operator": "nla.action_unlink", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "force_delete", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_action_unlink" + }, + { + "operator": "nla.actionclip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_actionclip_add" + }, + { + "operator": "nla.apply_scale", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_apply_scale" + }, + { + "operator": "nla.bake", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "bake_types", + "type": "ENUM" + }, + { + "identifier": "channel_types", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clean_curves", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clear_constraints", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clear_parents", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "step", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_current_action", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visual_keying", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_bake" + }, + { + "operator": "nla.channels_click", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_channels_click" + }, + { + "operator": "nla.clear_scale", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_clear_scale" + }, + { + "operator": "nla.click_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_click_select" + }, + { + "operator": "nla.delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_delete" + }, + { + "operator": "nla.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "linked", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_duplicate" + }, + { + "operator": "nla.duplicate_linked_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NLA_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_duplicate_linked_move" + }, + { + "operator": "nla.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NLA_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_duplicate_move" + }, + { + "operator": "nla.fmodifier_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_fmodifier_add" + }, + { + "operator": "nla.fmodifier_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_fmodifier_copy" + }, + { + "operator": "nla.fmodifier_paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_fmodifier_paste" + }, + { + "operator": "nla.make_single_user", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_make_single_user" + }, + { + "operator": "nla.meta_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_meta_add" + }, + { + "operator": "nla.meta_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_meta_remove" + }, + { + "operator": "nla.move_down", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_move_down" + }, + { + "operator": "nla.move_up", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_move_up" + }, + { + "operator": "nla.mute_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_mute_toggle" + }, + { + "operator": "nla.previewrange_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_previewrange_set" + }, + { + "operator": "nla.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_select_all" + }, + { + "operator": "nla.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "axis_range", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_select_box" + }, + { + "operator": "nla.select_leftright", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_select_leftright" + }, + { + "operator": "nla.selected_objects_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_selected_objects_add" + }, + { + "operator": "nla.snap", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_snap" + }, + { + "operator": "nla.soundclip_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_soundclip_add" + }, + { + "operator": "nla.split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_split" + }, + { + "operator": "nla.swap", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_swap" + }, + { + "operator": "nla.tracks_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "above_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_tracks_add" + }, + { + "operator": "nla.tracks_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_tracks_delete" + }, + { + "operator": "nla.transition_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_transition_add" + }, + { + "operator": "nla.tweakmode_enter", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "isolate_action", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_upper_stack_evaluation", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_tweakmode_enter" + }, + { + "operator": "nla.tweakmode_exit", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "isolate_action", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NLA_OT_tweakmode_exit" + }, + { + "operator": "nla.view_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_view_all" + }, + { + "operator": "nla.view_frame", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_view_frame" + }, + { + "operator": "nla.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NLA_OT_view_selected" + }, + { + "operator": "node.activate_viewer", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_activate_viewer" + }, + { + "operator": "node.add_closure_zone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_closure_zone" + }, + { + "operator": "node.add_collection", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_collection" + }, + { + "operator": "node.add_color", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gamma", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_alpha", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_color" + }, + { + "operator": "node.add_empty_group", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_empty_group" + }, + { + "operator": "node.add_foreach_geometry_element_zone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_foreach_geometry_element_zone" + }, + { + "operator": "node.add_group", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_datablock_in_node", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_group" + }, + { + "operator": "node.add_group_asset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_group_asset" + }, + { + "operator": "node.add_group_input_node", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_panel_contents", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "only_selected_sockets", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_group_input_node" + }, + { + "operator": "node.add_image", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_image" + }, + { + "operator": "node.add_import_node", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_import_node" + }, + { + "operator": "node.add_mask", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_mask" + }, + { + "operator": "node.add_material", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_material" + }, + { + "operator": "node.add_node", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "identifier": "type", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + }, + { + "identifier": "visible_output", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_node" + }, + { + "operator": "node.add_object", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_object" + }, + { + "operator": "node.add_repeat_zone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_repeat_zone" + }, + { + "operator": "node.add_reroute", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "identifier": "path", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_reroute" + }, + { + "operator": "node.add_simulation_zone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_simulation_zone" + }, + { + "operator": "node.add_typed_bundle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_typed_bundle" + }, + { + "operator": "node.add_zone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_default_geometry_link", + "type": "BOOLEAN" + }, + { + "identifier": "input_node_type", + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "output_node_type", + "type": "STRING" + }, + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_add_zone" + }, + { + "operator": "node.attach", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_attach" + }, + { + "operator": "node.backimage_fit", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_backimage_fit" + }, + { + "operator": "node.backimage_move", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_backimage_move" + }, + { + "operator": "node.backimage_sample", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_backimage_sample" + }, + { + "operator": "node.backimage_zoom", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_mouse_pos", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_backimage_zoom" + }, + { + "operator": "node.bake_node_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_bake_node_item_add" + }, + { + "operator": "node.bake_node_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_bake_node_item_move" + }, + { + "operator": "node.bake_node_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_bake_node_item_remove" + }, + { + "operator": "node.capture_attribute_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_capture_attribute_item_add" + }, + { + "operator": "node.capture_attribute_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_capture_attribute_item_move" + }, + { + "operator": "node.capture_attribute_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_capture_attribute_item_remove" + }, + { + "operator": "node.clear_viewer_border", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_clear_viewer_border" + }, + { + "operator": "node.clipboard_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_clipboard_copy" + }, + { + "operator": "node.clipboard_paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_clipboard_paste" + }, + { + "operator": "node.closure_input_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_input_item_add" + }, + { + "operator": "node.closure_input_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_input_item_move" + }, + { + "operator": "node.closure_input_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_input_item_remove" + }, + { + "operator": "node.closure_output_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_output_item_add" + }, + { + "operator": "node.closure_output_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_output_item_move" + }, + { + "operator": "node.closure_output_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_output_item_remove" + }, + { + "operator": "node.closure_to_list_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_to_list_item_add" + }, + { + "operator": "node.closure_to_list_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_to_list_item_move" + }, + { + "operator": "node.closure_to_list_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_closure_to_list_item_remove" + }, + { + "operator": "node.collapse_hide_unused_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_collapse_hide_unused_toggle" + }, + { + "operator": "node.combine_bundle_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_combine_bundle_item_add" + }, + { + "operator": "node.combine_bundle_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_combine_bundle_item_move" + }, + { + "operator": "node.combine_bundle_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_combine_bundle_item_remove" + }, + { + "operator": "node.connect_to_output", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "run_in_geometry_nodes", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_connect_to_output" + }, + { + "operator": "node.cryptomatte_layer_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_cryptomatte_layer_add" + }, + { + "operator": "node.cryptomatte_layer_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_cryptomatte_layer_remove" + }, + { + "operator": "node.deactivate_viewer", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_deactivate_viewer" + }, + { + "operator": "node.default_group_width_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_default_group_width_set" + }, + { + "operator": "node.delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_delete" + }, + { + "operator": "node.delete_copy_reconnect", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_clipboard_copy", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_delete_reconnect", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_delete_copy_reconnect" + }, + { + "operator": "node.delete_reconnect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_delete_reconnect" + }, + { + "operator": "node.detach", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_detach" + }, + { + "operator": "node.detach_translate_attach", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_attach", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_detach", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_detach_translate_attach" + }, + { + "operator": "node.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_inputs", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "linked", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_duplicate" + }, + { + "operator": "node.duplicate_compositing_modifier_node_group", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_duplicate_compositing_modifier_node_group" + }, + { + "operator": "node.duplicate_compositing_node_group", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_duplicate_compositing_node_group" + }, + { + "operator": "node.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_translate_attach", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_duplicate_move" + }, + { + "operator": "node.duplicate_move_keep_inputs", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_translate_attach", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_duplicate_move_keep_inputs" + }, + { + "operator": "node.duplicate_move_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_translate_attach", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_duplicate_move_linked" + }, + { + "operator": "node.enum_definition_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_enum_definition_item_add" + }, + { + "operator": "node.enum_definition_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_enum_definition_item_move" + }, + { + "operator": "node.enum_definition_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_enum_definition_item_remove" + }, + { + "operator": "node.evaluate_closure_input_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_evaluate_closure_input_item_add" + }, + { + "operator": "node.evaluate_closure_input_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_evaluate_closure_input_item_move" + }, + { + "operator": "node.evaluate_closure_input_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_evaluate_closure_input_item_remove" + }, + { + "operator": "node.evaluate_closure_output_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_evaluate_closure_output_item_add" + }, + { + "operator": "node.evaluate_closure_output_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_evaluate_closure_output_item_move" + }, + { + "operator": "node.evaluate_closure_output_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_evaluate_closure_output_item_remove" + }, + { + "operator": "node.field_to_grid_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_field_to_grid_item_add" + }, + { + "operator": "node.field_to_grid_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_field_to_grid_item_move" + }, + { + "operator": "node.field_to_grid_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_field_to_grid_item_remove" + }, + { + "operator": "node.field_to_list_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_field_to_list_item_add" + }, + { + "operator": "node.field_to_list_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_field_to_list_item_move" + }, + { + "operator": "node.field_to_list_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_field_to_list_item_remove" + }, + { + "operator": "node.file_output_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_file_output_item_add" + }, + { + "operator": "node.file_output_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_file_output_item_move" + }, + { + "operator": "node.file_output_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_file_output_item_remove" + }, + { + "operator": "node.find_node", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_find_node" + }, + { + "operator": "node.foreach_geometry_element_zone_generation_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_generation_item_add" + }, + { + "operator": "node.foreach_geometry_element_zone_generation_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_generation_item_move" + }, + { + "operator": "node.foreach_geometry_element_zone_generation_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_generation_item_remove" + }, + { + "operator": "node.foreach_geometry_element_zone_input_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_input_item_add" + }, + { + "operator": "node.foreach_geometry_element_zone_input_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_input_item_move" + }, + { + "operator": "node.foreach_geometry_element_zone_input_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_input_item_remove" + }, + { + "operator": "node.foreach_geometry_element_zone_main_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_main_item_add" + }, + { + "operator": "node.foreach_geometry_element_zone_main_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_main_item_move" + }, + { + "operator": "node.foreach_geometry_element_zone_main_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_foreach_geometry_element_zone_main_item_remove" + }, + { + "operator": "node.format_string_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_format_string_item_add" + }, + { + "operator": "node.format_string_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_format_string_item_move" + }, + { + "operator": "node.format_string_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_format_string_item_remove" + }, + { + "operator": "node.geometry_nodes_viewer_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_geometry_nodes_viewer_item_add" + }, + { + "operator": "node.geometry_nodes_viewer_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_geometry_nodes_viewer_item_move" + }, + { + "operator": "node.geometry_nodes_viewer_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_geometry_nodes_viewer_item_remove" + }, + { + "operator": "node.gltf_settings_node_operator", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_gltf_settings_node_operator" + }, + { + "operator": "node.group_edit", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "exit", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_group_edit" + }, + { + "operator": "node.group_enter_exit", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_group_enter_exit" + }, + { + "operator": "node.group_insert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_group_insert" + }, + { + "operator": "node.group_make", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_group_make" + }, + { + "operator": "node.group_separate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_group_separate" + }, + { + "operator": "node.group_ungroup", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_group_ungroup" + }, + { + "operator": "node.hide_socket_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_hide_socket_toggle" + }, + { + "operator": "node.hide_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_hide_toggle" + }, + { + "operator": "node.index_switch_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_index_switch_item_add" + }, + { + "operator": "node.index_switch_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_index_switch_item_move" + }, + { + "operator": "node.index_switch_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_index_switch_item_remove" + }, + { + "operator": "node.insert_offset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_insert_offset" + }, + { + "operator": "node.interface_item_duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_interface_item_duplicate" + }, + { + "operator": "node.interface_item_make_panel_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_interface_item_make_panel_toggle" + }, + { + "operator": "node.interface_item_new", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "item_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_interface_item_new" + }, + { + "operator": "node.interface_item_new_panel_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_interface_item_new_panel_toggle" + }, + { + "operator": "node.interface_item_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_interface_item_remove" + }, + { + "operator": "node.interface_item_unlink_panel_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_interface_item_unlink_panel_toggle" + }, + { + "operator": "node.join", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_join" + }, + { + "operator": "node.join_named", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_join", + "type": "POINTER" + }, + { + "identifier": "WM_OT_call_panel", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_join_named" + }, + { + "operator": "node.join_nodes", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_join_nodes" + }, + { + "operator": "node.link", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delay", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "detach", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "drag_start", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "inside_padding", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "max_speed", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "outside_padding", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "speed_ramp", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "zoom_influence", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_link" + }, + { + "operator": "node.link_drag_operation_test", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "find_link_operations", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "link_operation_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_link_drag_operation_test" + }, + { + "operator": "node.link_make", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "replace", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_link_make" + }, + { + "operator": "node.link_viewer", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_link_viewer" + }, + { + "operator": "node.links_cut", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "identifier": "path", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_links_cut" + }, + { + "operator": "node.links_detach", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_links_detach" + }, + { + "operator": "node.links_mute", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "identifier": "path", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_links_mute" + }, + { + "operator": "node.move_detach_links", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_links_detach", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_move_detach_links" + }, + { + "operator": "node.move_detach_links_release", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_links_detach", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_translate_attach", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_move_detach_links_release" + }, + { + "operator": "node.mute_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_mute_toggle" + }, + { + "operator": "node.new_compositing_node_group", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_new_compositing_node_group" + }, + { + "operator": "node.new_compositor_sequencer_node_group", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_new_compositor_sequencer_node_group" + }, + { + "operator": "node.new_geometry_node_group_assign", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_new_geometry_node_group_assign" + }, + { + "operator": "node.new_geometry_node_group_tool", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_new_geometry_node_group_tool" + }, + { + "operator": "node.new_geometry_nodes_modifier", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_new_geometry_nodes_modifier" + }, + { + "operator": "node.new_node_tree", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_new_node_tree" + }, + { + "operator": "node.node_color_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_node_color_preset_add" + }, + { + "operator": "node.node_copy_color", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_node_copy_color" + }, + { + "operator": "node.options_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_options_toggle" + }, + { + "operator": "node.parent_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_parent_set" + }, + { + "operator": "node.preview_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_preview_toggle" + }, + { + "operator": "node.read_viewlayers", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_read_viewlayers" + }, + { + "operator": "node.render_changed", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_render_changed" + }, + { + "operator": "node.repeat_zone_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_repeat_zone_item_add" + }, + { + "operator": "node.repeat_zone_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_repeat_zone_item_move" + }, + { + "operator": "node.repeat_zone_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_repeat_zone_item_remove" + }, + { + "operator": "node.resize", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_resize" + }, + { + "operator": "node.sample_attribute_items_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_sample_attribute_items_item_add" + }, + { + "operator": "node.sample_attribute_items_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_sample_attribute_items_item_move" + }, + { + "operator": "node.sample_attribute_items_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_sample_attribute_items_item_remove" + }, + { + "operator": "node.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear_viewer", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "socket_select", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select" + }, + { + "operator": "node.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_all" + }, + { + "operator": "node.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_box" + }, + { + "operator": "node.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_circle" + }, + { + "operator": "node.select_grouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_grouped" + }, + { + "operator": "node.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_lasso" + }, + { + "operator": "node.select_link_viewer", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_link_viewer", + "type": "POINTER" + }, + { + "identifier": "NODE_OT_select", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_link_viewer" + }, + { + "operator": "node.select_linked_from", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_select_linked_from" + }, + { + "operator": "node.select_linked_to", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_select_linked_to" + }, + { + "operator": "node.select_same_type_step", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "prev", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_select_same_type_step" + }, + { + "operator": "node.separate_bundle_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_separate_bundle_item_add" + }, + { + "operator": "node.separate_bundle_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_separate_bundle_item_move" + }, + { + "operator": "node.separate_bundle_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_separate_bundle_item_remove" + }, + { + "operator": "node.shader_script_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_shader_script_update" + }, + { + "operator": "node.simulation_zone_item_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "init_from_active", + "type": "BOOLEAN" + }, + { + "identifier": "item_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_simulation_zone_item_add" + }, + { + "operator": "node.simulation_zone_item_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_simulation_zone_item_move" + }, + { + "operator": "node.simulation_zone_item_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "node_identifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_simulation_zone_item_remove" + }, + { + "operator": "node.sockets_sync", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "node_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_sockets_sync" + }, + { + "operator": "node.swap_empty_group", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "settings", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_swap_empty_group" + }, + { + "operator": "node.swap_group_asset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_swap_group_asset" + }, + { + "operator": "node.swap_node", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "settings", + "type": "COLLECTION" + }, + { + "identifier": "type", + "type": "STRING" + }, + { + "identifier": "visible_output", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_swap_node" + }, + { + "operator": "node.swap_typed_bundle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "settings", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_swap_typed_bundle" + }, + { + "operator": "node.swap_zone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_default_geometry_link", + "type": "BOOLEAN" + }, + { + "identifier": "input_node_type", + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "output_node_type", + "type": "STRING" + }, + { + "identifier": "settings", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_swap_zone" + }, + { + "operator": "node.test_inlining_shader_nodes", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_test_inlining_shader_nodes" + }, + { + "operator": "node.toggle_viewer", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_toggle_viewer" + }, + { + "operator": "node.translate_attach", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_attach", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_translate_attach" + }, + { + "operator": "node.translate_attach_remove_on_cancel", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "NODE_OT_attach", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_translate_attach_remove_on_cancel" + }, + { + "operator": "node.tree_path_parent", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "parent_tree_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_tree_path_parent" + }, + { + "operator": "node.view_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_view_all" + }, + { + "operator": "node.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "NODE_OT_view_selected" + }, + { + "operator": "node.viewer_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_viewer_border" + }, + { + "operator": "node.viewer_shortcut_get", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "viewer_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_viewer_shortcut_get" + }, + { + "operator": "node.viewer_shortcut_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "viewer_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "NODE_OT_viewer_shortcut_set" + }, + { + "operator": "object.add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_add" + }, + { + "operator": "object.add_modifier_menu", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_add_modifier_menu" + }, + { + "operator": "object.add_named", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "drop_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "drop_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "linked", + "type": "BOOLEAN" + }, + { + "arrayLength": 16, + "identifier": "matrix", + "type": "FLOAT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_add_named" + }, + { + "operator": "object.align", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align_axis", + "type": "ENUM" + }, + { + "identifier": "align_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bb_quality", + "type": "BOOLEAN" + }, + { + "identifier": "relative_to", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_align" + }, + { + "operator": "object.anim_transforms_to_deltas", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_anim_transforms_to_deltas" + }, + { + "operator": "object.armature_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_armature_add" + }, + { + "operator": "object.assign_property_defaults", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "process_bones", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "process_data", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_assign_property_defaults" + }, + { + "operator": "object.bake", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cage_extrusion", + "type": "FLOAT" + }, + { + "identifier": "cage_object", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "margin", + "type": "INT" + }, + { + "identifier": "margin_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "max_ray_distance", + "type": "FLOAT" + }, + { + "identifier": "normal_b", + "type": "ENUM" + }, + { + "identifier": "normal_g", + "type": "ENUM" + }, + { + "identifier": "normal_r", + "type": "ENUM" + }, + { + "identifier": "normal_space", + "type": "ENUM" + }, + { + "identifier": "pass_filter", + "type": "ENUM" + }, + { + "identifier": "save_mode", + "type": "ENUM" + }, + { + "identifier": "target", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_automatic_name", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cage", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clear", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selected_to_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_split_materials", + "type": "BOOLEAN" + }, + { + "identifier": "uv_layer", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "width", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_bake" + }, + { + "operator": "object.bake_image", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_bake_image" + }, + { + "operator": "object.camera_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_camera_add" + }, + { + "operator": "object.camera_custom_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_camera_custom_update" + }, + { + "operator": "object.clear_override_library", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_clear_override_library" + }, + { + "operator": "object.collection_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_add" + }, + { + "operator": "object.collection_external_asset_drop", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "identifier": "collection", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "drop_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "drop_y", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_instance", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_external_asset_drop" + }, + { + "operator": "object.collection_instance_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "identifier": "collection", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "drop_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "drop_y", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_instance_add" + }, + { + "operator": "object.collection_link", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "collection", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_link" + }, + { + "operator": "object.collection_objects_select", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_objects_select" + }, + { + "operator": "object.collection_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_remove" + }, + { + "operator": "object.collection_unlink", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_collection_unlink" + }, + { + "operator": "object.constraint_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_constraint_add" + }, + { + "operator": "object.constraint_add_with_targets", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_constraint_add_with_targets" + }, + { + "operator": "object.constraints_clear", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_constraints_clear" + }, + { + "operator": "object.constraints_copy", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_constraints_copy" + }, + { + "operator": "object.convert", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "faces", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "keep_original", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "merge_customdata", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "identifier": "target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "thickness", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_convert" + }, + { + "operator": "object.copy_global_transform", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_copy_global_transform" + }, + { + "operator": "object.copy_relative_transform", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_copy_relative_transform" + }, + { + "operator": "object.correctivesmooth_bind", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_correctivesmooth_bind" + }, + { + "operator": "object.curves_empty_hair_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_curves_empty_hair_add" + }, + { + "operator": "object.curves_random_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_curves_random_add" + }, + { + "operator": "object.data_instance_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "drop_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "drop_y", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_data_instance_add" + }, + { + "operator": "object.data_transfer", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "edge_mapping", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "islands_precision", + "type": "FLOAT" + }, + { + "identifier": "layers_select_dst", + "type": "ENUM" + }, + { + "identifier": "layers_select_src", + "type": "ENUM" + }, + { + "identifier": "loop_mapping", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "max_distance", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mix_factor", + "type": "FLOAT" + }, + { + "identifier": "mix_mode", + "type": "ENUM" + }, + { + "identifier": "poly_mapping", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ray_radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_auto_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_create", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_freeze", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_max_distance", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_object_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_reverse_transfer", + "type": "BOOLEAN" + }, + { + "identifier": "vert_mapping", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_data_transfer" + }, + { + "operator": "object.datalayout_transfer", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "layers_select_dst", + "type": "ENUM" + }, + { + "identifier": "layers_select_src", + "type": "ENUM" + }, + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_delete", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_datalayout_transfer" + }, + { + "operator": "object.delete", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_global", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_delete" + }, + { + "operator": "object.delete_fix_to_camera_keys", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_delete_fix_to_camera_keys" + }, + { + "operator": "object.drop_geometry_nodes", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_datablock_in_modifier", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_drop_geometry_nodes" + }, + { + "operator": "object.drop_named_material", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_drop_named_material" + }, + { + "operator": "object.duplicate", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "linked", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_duplicate" + }, + { + "operator": "object.duplicate_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "OBJECT_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_duplicate_move" + }, + { + "operator": "object.duplicate_move_linked", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "OBJECT_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_duplicate_move_linked" + }, + { + "operator": "object.duplicates_make_real", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_base_parent", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_hierarchy", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_duplicates_make_real" + }, + { + "operator": "object.editmode_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_editmode_toggle" + }, + { + "operator": "object.effector_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_effector_add" + }, + { + "operator": "object.empty_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_empty_add" + }, + { + "operator": "object.empty_image_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "background", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_empty_image_add" + }, + { + "operator": "object.explode_refresh", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_explode_refresh" + }, + { + "operator": "object.fix_to_camera", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_location", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_fix_to_camera" + }, + { + "operator": "object.forcefield_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_forcefield_toggle" + }, + { + "operator": "object.geometry_node_bake_delete_single", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_id", + "type": "INT" + }, + { + "identifier": "modifier_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_node_bake_delete_single" + }, + { + "operator": "object.geometry_node_bake_pack_single", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_id", + "type": "INT" + }, + { + "identifier": "modifier_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_node_bake_pack_single" + }, + { + "operator": "object.geometry_node_bake_single", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_id", + "type": "INT" + }, + { + "identifier": "modifier_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_node_bake_single" + }, + { + "operator": "object.geometry_node_bake_unpack_single", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_id", + "type": "INT" + }, + { + "identifier": "method", + "type": "ENUM" + }, + { + "identifier": "modifier_name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_node_bake_unpack_single" + }, + { + "operator": "object.geometry_node_tree_copy_assign", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_node_tree_copy_assign" + }, + { + "operator": "object.geometry_nodes_input_attribute_toggle", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "input_name", + "type": "STRING" + }, + { + "identifier": "modifier_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_nodes_input_attribute_toggle" + }, + { + "operator": "object.geometry_nodes_move_to_nodes", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_geometry_nodes_move_to_nodes" + }, + { + "operator": "object.grease_pencil_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "stroke_depth_offset", + "type": "FLOAT" + }, + { + "identifier": "stroke_depth_order", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_front", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_lights", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_add" + }, + { + "operator": "object.grease_pencil_dash_modifier_segment_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_dash_modifier_segment_add" + }, + { + "operator": "object.grease_pencil_dash_modifier_segment_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_dash_modifier_segment_move" + }, + { + "operator": "object.grease_pencil_dash_modifier_segment_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_dash_modifier_segment_remove" + }, + { + "operator": "object.grease_pencil_time_modifier_segment_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_time_modifier_segment_add" + }, + { + "operator": "object.grease_pencil_time_modifier_segment_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_time_modifier_segment_move" + }, + { + "operator": "object.grease_pencil_time_modifier_segment_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_grease_pencil_time_modifier_segment_remove" + }, + { + "operator": "object.hide_collection", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "collection_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hide_collection" + }, + { + "operator": "object.hide_render_clear_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hide_render_clear_all" + }, + { + "operator": "object.hide_view_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hide_view_clear" + }, + { + "operator": "object.hide_view_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hide_view_set" + }, + { + "operator": "object.hook_add_newob", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_add_newob" + }, + { + "operator": "object.hook_add_selob", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_bone", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_add_selob" + }, + { + "operator": "object.hook_assign", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_assign" + }, + { + "operator": "object.hook_recenter", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_recenter" + }, + { + "operator": "object.hook_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_remove" + }, + { + "operator": "object.hook_reset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_reset" + }, + { + "operator": "object.hook_select", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_hook_select" + }, + { + "operator": "object.instance_offset_from_cursor", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_instance_offset_from_cursor" + }, + { + "operator": "object.instance_offset_from_object", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_instance_offset_from_object" + }, + { + "operator": "object.instance_offset_to_cursor", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_instance_offset_to_cursor" + }, + { + "operator": "object.isolate_type_render", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_isolate_type_render" + }, + { + "operator": "object.join", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_join" + }, + { + "operator": "object.join_shapes", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_mirror", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_join_shapes" + }, + { + "operator": "object.join_uvs", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_join_uvs" + }, + { + "operator": "object.laplaciandeform_bind", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_laplaciandeform_bind" + }, + { + "operator": "object.lattice_add_to_selected", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_modifiers", + "type": "BOOLEAN" + }, + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "fit_to_selected", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "margin", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "resolution_u", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_v", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_w", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_lattice_add_to_selected" + }, + { + "operator": "object.light_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_add" + }, + { + "operator": "object.light_linking_blocker_collection_new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_blocker_collection_new" + }, + { + "operator": "object.light_linking_blockers_link", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "link_state", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_blockers_link" + }, + { + "operator": "object.light_linking_blockers_select", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_blockers_select" + }, + { + "operator": "object.light_linking_receiver_collection_new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_receiver_collection_new" + }, + { + "operator": "object.light_linking_receivers_link", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "link_state", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_receivers_link" + }, + { + "operator": "object.light_linking_receivers_select", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_receivers_select" + }, + { + "operator": "object.light_linking_unlink_from_collection", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_light_linking_unlink_from_collection" + }, + { + "operator": "object.lightprobe_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_lightprobe_add" + }, + { + "operator": "object.lightprobe_cache_bake", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "subset", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_lightprobe_cache_bake" + }, + { + "operator": "object.lightprobe_cache_free", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "subset", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_lightprobe_cache_free" + }, + { + "operator": "object.lineart_bake_strokes", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_lineart_bake_strokes" + }, + { + "operator": "object.lineart_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear_all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_lineart_clear" + }, + { + "operator": "object.link_to_collection", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "collection_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "is_new", + "type": "BOOLEAN" + }, + { + "identifier": "new_collection_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_link_to_collection" + }, + { + "operator": "object.location_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear_delta", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_location_clear" + }, + { + "operator": "object.make_dupli_face", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_make_dupli_face" + }, + { + "operator": "object.make_links_data", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_make_links_data" + }, + { + "operator": "object.make_links_scene", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "scene", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_make_links_scene" + }, + { + "operator": "object.make_local", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_make_local" + }, + { + "operator": "object.make_override_library", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "collection", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_make_override_library" + }, + { + "operator": "object.make_single_user", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "material", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "obdata", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "obdata_animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "object", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_make_single_user" + }, + { + "operator": "object.material_slot_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_add" + }, + { + "operator": "object.material_slot_assign", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_assign" + }, + { + "operator": "object.material_slot_copy", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_copy" + }, + { + "operator": "object.material_slot_deselect", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_deselect" + }, + { + "operator": "object.material_slot_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_move" + }, + { + "operator": "object.material_slot_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_remove" + }, + { + "operator": "object.material_slot_remove_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_remove_all" + }, + { + "operator": "object.material_slot_remove_unused", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_remove_unused" + }, + { + "operator": "object.material_slot_select", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_material_slot_select" + }, + { + "operator": "object.meshdeform_bind", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_meshdeform_bind" + }, + { + "operator": "object.metaball_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_metaball_add" + }, + { + "operator": "object.mode_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_mode_set" + }, + { + "operator": "object.mode_set_with_submode", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "mesh_select_mode", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_mode_set_with_submode" + }, + { + "operator": "object.modifier_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_add" + }, + { + "operator": "object.modifier_add_node_group", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_add_node_group" + }, + { + "operator": "object.modifier_apply", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_keyframes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "merge_customdata", + "type": "BOOLEAN" + }, + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "single_user", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_apply" + }, + { + "operator": "object.modifier_apply_as_shapekey", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_modifier", + "type": "BOOLEAN" + }, + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_apply_as_shapekey" + }, + { + "operator": "object.modifier_convert", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_convert" + }, + { + "operator": "object.modifier_copy", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_copy" + }, + { + "operator": "object.modifier_copy_to_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_copy_to_selected" + }, + { + "operator": "object.modifier_move_down", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_move_down" + }, + { + "operator": "object.modifier_move_to_index", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_move_to_index" + }, + { + "operator": "object.modifier_move_up", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_move_up" + }, + { + "operator": "object.modifier_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selected_objects", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_remove" + }, + { + "operator": "object.modifier_set_active", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifier_set_active" + }, + { + "operator": "object.modifiers_clear", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifiers_clear" + }, + { + "operator": "object.modifiers_copy_to_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_modifiers_copy_to_selected" + }, + { + "operator": "object.move_to_collection", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "collection_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "is_new", + "type": "BOOLEAN" + }, + { + "identifier": "new_collection_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_move_to_collection" + }, + { + "operator": "object.multires_base_apply", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_heuristic", + "type": "BOOLEAN" + }, + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_base_apply" + }, + { + "operator": "object.multires_external_pack", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_external_pack" + }, + { + "operator": "object.multires_external_save", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "modifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_external_save" + }, + { + "operator": "object.multires_higher_levels_delete", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_higher_levels_delete" + }, + { + "operator": "object.multires_rebuild_subdiv", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_rebuild_subdiv" + }, + { + "operator": "object.multires_reshape", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_reshape" + }, + { + "operator": "object.multires_subdivide", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_subdivide" + }, + { + "operator": "object.multires_unsubdivide", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_multires_unsubdivide" + }, + { + "operator": "object.ocean_bake", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "free", + "type": "BOOLEAN" + }, + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_ocean_bake" + }, + { + "operator": "object.origin_clear", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_origin_clear" + }, + { + "operator": "object.origin_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "center", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_origin_set" + }, + { + "operator": "object.parent_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_parent_clear" + }, + { + "operator": "object.parent_inverse_apply", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_parent_inverse_apply" + }, + { + "operator": "object.parent_no_inverse_set", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_transform", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_parent_no_inverse_set" + }, + { + "operator": "object.parent_set", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_transform", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "xmirror", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_parent_set" + }, + { + "operator": "object.particle_system_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_particle_system_add" + }, + { + "operator": "object.particle_system_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_particle_system_remove" + }, + { + "operator": "object.paste_transform", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake_step", + "type": "INT" + }, + { + "identifier": "method", + "type": "ENUM" + }, + { + "identifier": "mirror_axis_loc", + "type": "ENUM" + }, + { + "identifier": "mirror_axis_rot", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_relative", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_paste_transform" + }, + { + "operator": "object.paths_calculate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "identifier": "range", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_paths_calculate" + }, + { + "operator": "object.paths_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_paths_clear" + }, + { + "operator": "object.paths_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_paths_update" + }, + { + "operator": "object.paths_update_visible", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_paths_update_visible" + }, + { + "operator": "object.pointcloud_random_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_pointcloud_random_add" + }, + { + "operator": "object.posemode_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_posemode_toggle" + }, + { + "operator": "object.quadriflow_remesh", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mesh_area", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "preserve_attributes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "smooth_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "target_edge_length", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "target_faces", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "target_ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_symmetry", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_boundary", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_sharp", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_quadriflow_remesh" + }, + { + "operator": "object.quick_explode", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "amount", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "fade", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "frame_duration", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "identifier": "style", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "velocity", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_quick_explode" + }, + { + "operator": "object.quick_fur", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_hair_guides", + "type": "BOOLEAN" + }, + { + "identifier": "density", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "length", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_frizz", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_noise", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "view_percentage", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_quick_fur" + }, + { + "operator": "object.quick_liquid", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "show_flows", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_quick_liquid" + }, + { + "operator": "object.quick_smoke", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "show_flows", + "type": "BOOLEAN" + }, + { + "identifier": "style", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_quick_smoke" + }, + { + "operator": "object.randomize_transform", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "loc", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "random_seed", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "rot", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "scale_even", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_delta", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_loc", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rot", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_randomize_transform" + }, + { + "operator": "object.reset_override_library", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_reset_override_library" + }, + { + "operator": "object.rotation_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear_delta", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_rotation_clear" + }, + { + "operator": "object.scale_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear_delta", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_scale_clear" + }, + { + "operator": "object.select_all", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_all" + }, + { + "operator": "object.select_by_type", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_by_type" + }, + { + "operator": "object.select_camera", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_camera" + }, + { + "operator": "object.select_grouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_grouped" + }, + { + "operator": "object.select_hierarchy", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_hierarchy" + }, + { + "operator": "object.select_less", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_less" + }, + { + "operator": "object.select_linked", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_linked" + }, + { + "operator": "object.select_mirror", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_mirror" + }, + { + "operator": "object.select_more", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_more" + }, + { + "operator": "object.select_pattern", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "case_sensitive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "pattern", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_pattern" + }, + { + "operator": "object.select_random", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_random" + }, + { + "operator": "object.select_same_collection", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "collection", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_select_same_collection" + }, + { + "operator": "object.shade_auto_smooth", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_auto_smooth", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shade_auto_smooth" + }, + { + "operator": "object.shade_flat", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_sharp_edges", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shade_flat" + }, + { + "operator": "object.shade_smooth", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_sharp_edges", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shade_smooth" + }, + { + "operator": "object.shade_smooth_by_angle", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "keep_sharp_edges", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shade_smooth_by_angle" + }, + { + "operator": "object.shaderfx_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shaderfx_add" + }, + { + "operator": "object.shaderfx_copy", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "shaderfx", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shaderfx_copy" + }, + { + "operator": "object.shaderfx_move_down", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "shaderfx", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shaderfx_move_down" + }, + { + "operator": "object.shaderfx_move_to_index", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "shaderfx", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shaderfx_move_to_index" + }, + { + "operator": "object.shaderfx_move_up", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "shaderfx", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shaderfx_move_up" + }, + { + "operator": "object.shaderfx_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "report", + "type": "BOOLEAN" + }, + { + "identifier": "shaderfx", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shaderfx_remove" + }, + { + "operator": "object.shape_key_add", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "from_mix", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_add" + }, + { + "operator": "object.shape_key_apply_to_basis", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_apply_to_basis" + }, + { + "operator": "object.shape_key_clear", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_clear" + }, + { + "operator": "object.shape_key_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_copy" + }, + { + "operator": "object.shape_key_lock", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_lock" + }, + { + "operator": "object.shape_key_make_basis", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_make_basis" + }, + { + "operator": "object.shape_key_mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_topology", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_mirror" + }, + { + "operator": "object.shape_key_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_move" + }, + { + "operator": "object.shape_key_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_mix", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_remove" + }, + { + "operator": "object.shape_key_retime", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_retime" + }, + { + "operator": "object.shape_key_transfer", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_clamp", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_shape_key_transfer" + }, + { + "operator": "object.simulation_nodes_cache_bake", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_simulation_nodes_cache_bake" + }, + { + "operator": "object.simulation_nodes_cache_calculate_to_frame", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_simulation_nodes_cache_calculate_to_frame" + }, + { + "operator": "object.simulation_nodes_cache_delete", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_simulation_nodes_cache_delete" + }, + { + "operator": "object.skin_armature_create", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_skin_armature_create" + }, + { + "operator": "object.skin_loose_mark_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_skin_loose_mark_clear" + }, + { + "operator": "object.skin_radii_equalize", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_skin_radii_equalize" + }, + { + "operator": "object.skin_root_mark", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_skin_root_mark" + }, + { + "operator": "object.speaker_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_speaker_add" + }, + { + "operator": "object.subdivision_set", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ensure_modifier", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "level", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "relative", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_subdivision_set" + }, + { + "operator": "object.surfacedeform_bind", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_surfacedeform_bind" + }, + { + "operator": "object.text_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_text_add" + }, + { + "operator": "object.track_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_track_clear" + }, + { + "operator": "object.track_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_track_set" + }, + { + "operator": "object.transfer_mode", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_flash_on_transfer", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_transfer_mode" + }, + { + "operator": "object.transform_apply", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "corrective_flip_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "isolate_users", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "location", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "properties", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "rotation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "scale", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_transform_apply" + }, + { + "operator": "object.transform_axis_target", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_transform_axis_target" + }, + { + "operator": "object.transform_to_mouse", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "drop_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "drop_y", + "type": "INT" + }, + { + "arrayLength": 16, + "identifier": "matrix", + "type": "FLOAT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_transform_to_mouse" + }, + { + "operator": "object.transforms_to_deltas", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "reset_values", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_transforms_to_deltas" + }, + { + "operator": "object.unlink_data", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_unlink_data" + }, + { + "operator": "object.update_shapes", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_mirror", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_update_shapes" + }, + { + "operator": "object.vertex_group_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_add" + }, + { + "operator": "object.vertex_group_assign", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_assign" + }, + { + "operator": "object.vertex_group_assign_new", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_assign_new" + }, + { + "operator": "object.vertex_group_clean", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "group_select_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "keep_single", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "limit", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_clean" + }, + { + "operator": "object.vertex_group_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_copy" + }, + { + "operator": "object.vertex_group_copy_to_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_copy_to_selected" + }, + { + "operator": "object.vertex_group_deselect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_deselect" + }, + { + "operator": "object.vertex_group_invert", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "auto_assign", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "auto_remove", + "type": "BOOLEAN" + }, + { + "identifier": "group_select_mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_invert" + }, + { + "operator": "object.vertex_group_levels", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "gain", + "type": "FLOAT" + }, + { + "identifier": "group_select_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_levels" + }, + { + "operator": "object.vertex_group_limit_total", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "group_select_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "limit", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_limit_total" + }, + { + "operator": "object.vertex_group_lock", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "identifier": "mask", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_lock" + }, + { + "operator": "object.vertex_group_mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "flip_group_names", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror_weights", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_topology", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_mirror" + }, + { + "operator": "object.vertex_group_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_move" + }, + { + "operator": "object.vertex_group_normalize", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_normalize" + }, + { + "operator": "object.vertex_group_normalize_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "group_select_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "lock_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_normalize_all" + }, + { + "operator": "object.vertex_group_quantize", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "group_select_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "steps", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_quantize" + }, + { + "operator": "object.vertex_group_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "all_unlocked", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_remove" + }, + { + "operator": "object.vertex_group_remove_from", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_all_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_all_verts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_remove_from" + }, + { + "operator": "object.vertex_group_select", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_select" + }, + { + "operator": "object.vertex_group_set_active", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "group", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_set_active" + }, + { + "operator": "object.vertex_group_smooth", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "expand", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "identifier": "group_select_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "repeat", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_smooth" + }, + { + "operator": "object.vertex_group_sort", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "sort_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_group_sort" + }, + { + "operator": "object.vertex_parent_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_parent_set" + }, + { + "operator": "object.vertex_weight_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_weight_copy" + }, + { + "operator": "object.vertex_weight_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "weight_group", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_weight_delete" + }, + { + "operator": "object.vertex_weight_normalize_active_vertex", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_weight_normalize_active_vertex" + }, + { + "operator": "object.vertex_weight_paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "weight_group", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_weight_paste" + }, + { + "operator": "object.vertex_weight_set_active", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "weight_group", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_vertex_weight_set_active" + }, + { + "operator": "object.visual_geometry_to_objects", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_visual_geometry_to_objects" + }, + { + "operator": "object.visual_transform_apply", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_visual_transform_apply" + }, + { + "operator": "object.volume_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_volume_add" + }, + { + "operator": "object.volume_import", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_sequence_detection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OBJECT_OT_volume_import" + }, + { + "operator": "object.voxel_remesh", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_voxel_remesh" + }, + { + "operator": "object.voxel_size_edit", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OBJECT_OT_voxel_size_edit" + }, + { + "operator": "outliner.action_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_action_set" + }, + { + "operator": "outliner.animdata_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_animdata_operation" + }, + { + "operator": "outliner.clear_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_clear_filter" + }, + { + "operator": "outliner.collection_color_tag_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "color", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_color_tag_set" + }, + { + "operator": "outliner.collection_disable", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_disable" + }, + { + "operator": "outliner.collection_disable_render", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_disable_render" + }, + { + "operator": "outliner.collection_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_drop" + }, + { + "operator": "outliner.collection_duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_duplicate" + }, + { + "operator": "outliner.collection_duplicate_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_duplicate_linked" + }, + { + "operator": "outliner.collection_enable", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_enable" + }, + { + "operator": "outliner.collection_enable_render", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_enable_render" + }, + { + "operator": "outliner.collection_exclude_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_exclude_clear" + }, + { + "operator": "outliner.collection_exclude_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_exclude_set" + }, + { + "operator": "outliner.collection_hide", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_hide" + }, + { + "operator": "outliner.collection_hide_inside", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_hide_inside" + }, + { + "operator": "outliner.collection_hierarchy_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_hierarchy_delete" + }, + { + "operator": "outliner.collection_holdout_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_holdout_clear" + }, + { + "operator": "outliner.collection_holdout_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_holdout_set" + }, + { + "operator": "outliner.collection_indirect_only_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_indirect_only_clear" + }, + { + "operator": "outliner.collection_indirect_only_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_indirect_only_set" + }, + { + "operator": "outliner.collection_instance", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_instance" + }, + { + "operator": "outliner.collection_isolate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_isolate" + }, + { + "operator": "outliner.collection_link", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_link" + }, + { + "operator": "outliner.collection_new", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "nested", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_new" + }, + { + "operator": "outliner.collection_objects_deselect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_objects_deselect" + }, + { + "operator": "outliner.collection_objects_select", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_objects_select" + }, + { + "operator": "outliner.collection_show", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_show" + }, + { + "operator": "outliner.collection_show_inside", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_collection_show_inside" + }, + { + "operator": "outliner.constraint_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_constraint_operation" + }, + { + "operator": "outliner.data_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_data_operation" + }, + { + "operator": "outliner.datastack_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_datastack_drop" + }, + { + "operator": "outliner.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "hierarchy", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_delete" + }, + { + "operator": "outliner.drivers_add_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_drivers_add_selected" + }, + { + "operator": "outliner.drivers_delete_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_drivers_delete_selected" + }, + { + "operator": "outliner.expanded_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_expanded_toggle" + }, + { + "operator": "outliner.hide", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_hide" + }, + { + "operator": "outliner.highlight_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_highlight_update" + }, + { + "operator": "outliner.id_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_id_copy" + }, + { + "operator": "outliner.id_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_id_delete" + }, + { + "operator": "outliner.id_linked_relocate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_id_linked_relocate" + }, + { + "operator": "outliner.id_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_id_operation" + }, + { + "operator": "outliner.id_paste", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_id_paste" + }, + { + "operator": "outliner.id_remap", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "id_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "new_id", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "old_id", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_id_remap" + }, + { + "operator": "outliner.item_activate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend_range", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "recurse", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_item_activate" + }, + { + "operator": "outliner.item_drag_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_item_drag_drop" + }, + { + "operator": "outliner.item_openclose", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_item_openclose" + }, + { + "operator": "outliner.item_rename", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_item_rename" + }, + { + "operator": "outliner.keyingset_add_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_keyingset_add_selected" + }, + { + "operator": "outliner.keyingset_remove_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_keyingset_remove_selected" + }, + { + "operator": "outliner.lib_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_lib_operation" + }, + { + "operator": "outliner.lib_relocate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_lib_relocate" + }, + { + "operator": "outliner.liboverride_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "selection_set", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_liboverride_operation" + }, + { + "operator": "outliner.liboverride_property_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_liboverride_property_remove" + }, + { + "operator": "outliner.liboverride_troubleshoot_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "selection_set", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_liboverride_troubleshoot_operation" + }, + { + "operator": "outliner.material_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_material_drop" + }, + { + "operator": "outliner.modifier_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_modifier_operation" + }, + { + "operator": "outliner.object_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_object_operation" + }, + { + "operator": "outliner.operation", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_operation" + }, + { + "operator": "outliner.orphans_manage", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_orphans_manage" + }, + { + "operator": "outliner.orphans_purge", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "do_linked_ids", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "do_local_ids", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "do_recursive", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_orphans_purge" + }, + { + "operator": "outliner.parent_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_parent_clear" + }, + { + "operator": "outliner.parent_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_parent_drop" + }, + { + "operator": "outliner.scene_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_scene_drop" + }, + { + "operator": "outliner.scene_operation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_scene_operation" + }, + { + "operator": "outliner.scroll_page", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "up", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_scroll_page" + }, + { + "operator": "outliner.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_select_all" + }, + { + "operator": "outliner.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_select_box" + }, + { + "operator": "outliner.select_walk", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle_all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_select_walk" + }, + { + "operator": "outliner.show_active", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_show_active" + }, + { + "operator": "outliner.show_hierarchy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_show_hierarchy" + }, + { + "operator": "outliner.show_one_level", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "open", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_show_one_level" + }, + { + "operator": "outliner.start_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_start_filter" + }, + { + "operator": "outliner.unhide_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "OUTLINER_OT_unhide_all" + }, + { + "operator": "paint.add_simple_uvs", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_add_simple_uvs" + }, + { + "operator": "paint.add_texture_paint_slot", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "alpha", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "identifier": "data_type", + "type": "ENUM" + }, + { + "identifier": "domain", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "float", + "type": "BOOLEAN" + }, + { + "identifier": "generated_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "INT" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "slot_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tiled", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_add_texture_paint_slot" + }, + { + "operator": "paint.brush_colors_flip", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_brush_colors_flip" + }, + { + "operator": "paint.face_select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_all" + }, + { + "operator": "paint.face_select_hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_hide" + }, + { + "operator": "paint.face_select_less", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "face_step", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_less" + }, + { + "operator": "paint.face_select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_linked" + }, + { + "operator": "paint.face_select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_linked_pick" + }, + { + "operator": "paint.face_select_loop", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_loop" + }, + { + "operator": "paint.face_select_more", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "face_step", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_select_more" + }, + { + "operator": "paint.face_vert_reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_face_vert_reveal" + }, + { + "operator": "paint.grab_clone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "delta", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_grab_clone" + }, + { + "operator": "paint.hide_show", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "identifier": "area", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_hide_show" + }, + { + "operator": "paint.hide_show_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_hide_show_all" + }, + { + "operator": "paint.hide_show_lasso_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "identifier": "area", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_hide_show_lasso_gesture" + }, + { + "operator": "paint.hide_show_line_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "identifier": "area", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_to_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_hide_show_line_gesture" + }, + { + "operator": "paint.hide_show_masked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_hide_show_masked" + }, + { + "operator": "paint.hide_show_polyline_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "identifier": "area", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_hide_show_polyline_gesture" + }, + { + "operator": "paint.image_from_view", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_image_from_view" + }, + { + "operator": "paint.image_paint", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_image_paint" + }, + { + "operator": "paint.mask_box_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_mask_box_gesture" + }, + { + "operator": "paint.mask_flood_fill", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_mask_flood_fill" + }, + { + "operator": "paint.mask_lasso_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_mask_lasso_gesture" + }, + { + "operator": "paint.mask_line_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_to_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_mask_line_gesture" + }, + { + "operator": "paint.mask_polyline_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_mask_polyline_gesture" + }, + { + "operator": "paint.project_image", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "image", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_project_image" + }, + { + "operator": "paint.sample_color", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "merged", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "palette", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_sample_color" + }, + { + "operator": "paint.texture_paint_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_texture_paint_toggle" + }, + { + "operator": "paint.vert_select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_all" + }, + { + "operator": "paint.vert_select_hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_hide" + }, + { + "operator": "paint.vert_select_less", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "face_step", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_less" + }, + { + "operator": "paint.vert_select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_linked" + }, + { + "operator": "paint.vert_select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_linked_pick" + }, + { + "operator": "paint.vert_select_loop", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_loop" + }, + { + "operator": "paint.vert_select_more", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "face_step", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_more" + }, + { + "operator": "paint.vert_select_ungrouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vert_select_ungrouped" + }, + { + "operator": "paint.vertex_color_brightness_contrast", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "brightness", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "contrast", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_brightness_contrast" + }, + { + "operator": "paint.vertex_color_dirt", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "blur_iterations", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "blur_strength", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clean_angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "dirt_angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "dirt_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "normalize", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_dirt" + }, + { + "operator": "paint.vertex_color_from_weight", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_from_weight" + }, + { + "operator": "paint.vertex_color_hsv", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "h", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "s", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "v", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_hsv" + }, + { + "operator": "paint.vertex_color_invert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_invert" + }, + { + "operator": "paint.vertex_color_levels", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "gain", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_levels" + }, + { + "operator": "paint.vertex_color_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_alpha", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_set" + }, + { + "operator": "paint.vertex_color_smooth", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_color_smooth" + }, + { + "operator": "paint.vertex_paint", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "override_location", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_paint" + }, + { + "operator": "paint.vertex_paint_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_vertex_paint_toggle" + }, + { + "operator": "paint.visibility_filter", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "auto_iteration_count", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_visibility_filter" + }, + { + "operator": "paint.visibility_invert", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_visibility_invert" + }, + { + "operator": "paint.weight_from_bones", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_from_bones" + }, + { + "operator": "paint.weight_gradient", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_gradient" + }, + { + "operator": "paint.weight_paint", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "override_location", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_paint" + }, + { + "operator": "paint.weight_paint_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_paint_toggle" + }, + { + "operator": "paint.weight_sample", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_sample" + }, + { + "operator": "paint.weight_sample_group", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_sample_group" + }, + { + "operator": "paint.weight_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINT_OT_weight_set" + }, + { + "operator": "paintcurve.add_point", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_add_point" + }, + { + "operator": "paintcurve.add_point_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "PAINTCURVE_OT_add_point", + "type": "POINTER" + }, + { + "identifier": "PAINTCURVE_OT_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_add_point_slide" + }, + { + "operator": "paintcurve.cursor", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_cursor" + }, + { + "operator": "paintcurve.delete_point", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_delete_point" + }, + { + "operator": "paintcurve.draw", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_draw" + }, + { + "operator": "paintcurve.new", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_new" + }, + { + "operator": "paintcurve.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_select" + }, + { + "operator": "paintcurve.slide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "align", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PAINTCURVE_OT_slide" + }, + { + "operator": "palette.color_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PALETTE_OT_color_add" + }, + { + "operator": "palette.color_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PALETTE_OT_color_delete" + }, + { + "operator": "palette.color_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PALETTE_OT_color_move" + }, + { + "operator": "palette.extract_from_image", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PALETTE_OT_extract_from_image" + }, + { + "operator": "palette.join", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "palette", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PALETTE_OT_join" + }, + { + "operator": "palette.new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PALETTE_OT_new" + }, + { + "operator": "palette.sort", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PALETTE_OT_sort" + }, + { + "operator": "particle.brush_edit", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_brush_edit" + }, + { + "operator": "particle.connect_hair", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_connect_hair" + }, + { + "operator": "particle.copy_particle_systems", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "remove_target_particles", + "type": "BOOLEAN" + }, + { + "identifier": "space", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_copy_particle_systems" + }, + { + "operator": "particle.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_delete" + }, + { + "operator": "particle.disconnect_hair", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_disconnect_hair" + }, + { + "operator": "particle.duplicate_particle_system", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_duplicate_settings", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_duplicate_particle_system" + }, + { + "operator": "particle.dupliob_copy", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_dupliob_copy" + }, + { + "operator": "particle.dupliob_move_down", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_dupliob_move_down" + }, + { + "operator": "particle.dupliob_move_up", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_dupliob_move_up" + }, + { + "operator": "particle.dupliob_refresh", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_dupliob_refresh" + }, + { + "operator": "particle.dupliob_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_dupliob_remove" + }, + { + "operator": "particle.edited_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_edited_clear" + }, + { + "operator": "particle.hair_dynamics_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_hair_dynamics_preset_add" + }, + { + "operator": "particle.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_hide" + }, + { + "operator": "particle.mirror", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_mirror" + }, + { + "operator": "particle.new", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_new" + }, + { + "operator": "particle.new_target", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_new_target" + }, + { + "operator": "particle.particle_edit_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_particle_edit_toggle" + }, + { + "operator": "particle.particle_system_remove_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_particle_system_remove_all" + }, + { + "operator": "particle.rekey", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keys_number", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_rekey" + }, + { + "operator": "particle.remove_doubles", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_remove_doubles" + }, + { + "operator": "particle.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_reveal" + }, + { + "operator": "particle.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_all" + }, + { + "operator": "particle.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_less" + }, + { + "operator": "particle.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_linked" + }, + { + "operator": "particle.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_linked_pick" + }, + { + "operator": "particle.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_more" + }, + { + "operator": "particle.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_random" + }, + { + "operator": "particle.select_roots", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_roots" + }, + { + "operator": "particle.select_tips", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_select_tips" + }, + { + "operator": "particle.shape_cut", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_shape_cut" + }, + { + "operator": "particle.subdivide", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_subdivide" + }, + { + "operator": "particle.target_move_down", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_target_move_down" + }, + { + "operator": "particle.target_move_up", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_target_move_up" + }, + { + "operator": "particle.target_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_target_remove" + }, + { + "operator": "particle.unify_length", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_unify_length" + }, + { + "operator": "particle.weight_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "PARTICLE_OT_weight_set" + }, + { + "operator": "pointcloud.attribute_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "value_bool", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "value_color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value_float", + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "value_float_vector_2d", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "value_float_vector_3d", + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "value_float_vector_4d", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "value_int", + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "value_int_vector_2d", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_attribute_set" + }, + { + "operator": "pointcloud.delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_delete" + }, + { + "operator": "pointcloud.duplicate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_duplicate" + }, + { + "operator": "pointcloud.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "POINTCLOUD_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_duplicate_move" + }, + { + "operator": "pointcloud.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_select_all" + }, + { + "operator": "pointcloud.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "probability", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_select_random" + }, + { + "operator": "pointcloud.separate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POINTCLOUD_OT_separate" + }, + { + "operator": "pose.armature_apply", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_armature_apply" + }, + { + "operator": "pose.autoside_names", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_autoside_names" + }, + { + "operator": "pose.blend_to_neighbor", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_lock", + "type": "ENUM" + }, + { + "identifier": "channels", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "next_frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "prev_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_blend_to_neighbor" + }, + { + "operator": "pose.blend_with_rest", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_lock", + "type": "ENUM" + }, + { + "identifier": "channels", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "next_frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "prev_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_blend_with_rest" + }, + { + "operator": "pose.breakdown", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_lock", + "type": "ENUM" + }, + { + "identifier": "channels", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "next_frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "prev_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_breakdown" + }, + { + "operator": "pose.constraint_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_constraint_add" + }, + { + "operator": "pose.constraint_add_with_targets", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_constraint_add_with_targets" + }, + { + "operator": "pose.constraints_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_constraints_clear" + }, + { + "operator": "pose.constraints_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_constraints_copy" + }, + { + "operator": "pose.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_copy" + }, + { + "operator": "pose.flip_names", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "do_strip_numbers", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_flip_names" + }, + { + "operator": "pose.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_hide" + }, + { + "operator": "pose.ik_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "with_targets", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_ik_add" + }, + { + "operator": "pose.ik_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_ik_clear" + }, + { + "operator": "pose.loc_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_loc_clear" + }, + { + "operator": "pose.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "selected_mask", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_paste" + }, + { + "operator": "pose.paths_calculate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "bake_location", + "type": "ENUM" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "identifier": "range", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_paths_calculate" + }, + { + "operator": "pose.paths_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_paths_clear" + }, + { + "operator": "pose.paths_range_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_paths_range_update" + }, + { + "operator": "pose.paths_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_paths_update" + }, + { + "operator": "pose.propagate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "end_frame", + "type": "FLOAT" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_propagate" + }, + { + "operator": "pose.push", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_lock", + "type": "ENUM" + }, + { + "identifier": "channels", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "next_frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "prev_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_push" + }, + { + "operator": "pose.quaternions_flip", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_quaternions_flip" + }, + { + "operator": "pose.relax", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_lock", + "type": "ENUM" + }, + { + "identifier": "channels", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "next_frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "prev_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_relax" + }, + { + "operator": "pose.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_reveal" + }, + { + "operator": "pose.rot_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_rot_clear" + }, + { + "operator": "pose.rotation_mode_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_rotation_mode_set" + }, + { + "operator": "pose.scale_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_scale_clear" + }, + { + "operator": "pose.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_select_all" + }, + { + "operator": "pose.select_constraint_target", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_select_constraint_target" + }, + { + "operator": "pose.select_grouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_select_grouped" + }, + { + "operator": "pose.select_hierarchy", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_select_hierarchy" + }, + { + "operator": "pose.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_select_linked" + }, + { + "operator": "pose.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_select_linked_pick" + }, + { + "operator": "pose.select_mirror", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "only_active", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_select_mirror" + }, + { + "operator": "pose.select_parent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_select_parent" + }, + { + "operator": "pose.selection_set_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_add" + }, + { + "operator": "pose.selection_set_add_and_assign", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_add_and_assign" + }, + { + "operator": "pose.selection_set_assign", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_assign" + }, + { + "operator": "pose.selection_set_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_copy" + }, + { + "operator": "pose.selection_set_delete_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_delete_all" + }, + { + "operator": "pose.selection_set_deselect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_deselect" + }, + { + "operator": "pose.selection_set_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_move" + }, + { + "operator": "pose.selection_set_paste", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_paste" + }, + { + "operator": "pose.selection_set_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_remove" + }, + { + "operator": "pose.selection_set_remove_bones", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_remove_bones" + }, + { + "operator": "pose.selection_set_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selection_set_index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_select" + }, + { + "operator": "pose.selection_set_unassign", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_selection_set_unassign" + }, + { + "operator": "pose.transforms_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_transforms_clear" + }, + { + "operator": "pose.user_transforms_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "only_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSE_OT_user_transforms_clear" + }, + { + "operator": "pose.visual_transform_apply", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSE_OT_visual_transform_apply" + }, + { + "operator": "poselib.apply_pose_asset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "blend_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "POSELIB_OT_apply_pose_asset" + }, + { + "operator": "poselib.asset_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSELIB_OT_asset_delete" + }, + { + "operator": "poselib.asset_modify", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "POSELIB_OT_asset_modify" + }, + { + "operator": "poselib.blend_pose_asset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "blend_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSELIB_OT_blend_pose_asset" + }, + { + "operator": "poselib.copy_as_asset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSELIB_OT_copy_as_asset" + }, + { + "operator": "poselib.create_pose_asset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_reference", + "type": "ENUM" + }, + { + "identifier": "catalog_path", + "type": "STRING" + }, + { + "identifier": "pose_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "POSELIB_OT_create_pose_asset" + }, + { + "operator": "poselib.paste_asset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSELIB_OT_paste_asset" + }, + { + "operator": "poselib.pose_asset_select_bones", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "POSELIB_OT_pose_asset_select_bones" + }, + { + "operator": "poselib.restore_previous_action", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "POSELIB_OT_restore_previous_action" + }, + { + "operator": "preferences.addon_disable", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "module", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_disable" + }, + { + "operator": "preferences.addon_enable", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "module", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_enable" + }, + { + "operator": "preferences.addon_expand", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "module", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_expand" + }, + { + "operator": "preferences.addon_install", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "enable_on_install", + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overwrite", + "type": "BOOLEAN" + }, + { + "identifier": "target", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_install" + }, + { + "operator": "preferences.addon_refresh", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_refresh" + }, + { + "operator": "preferences.addon_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "module", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_remove" + }, + { + "operator": "preferences.addon_show", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "module", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_addon_show" + }, + { + "operator": "preferences.app_template_install", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "overwrite", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_app_template_install" + }, + { + "operator": "preferences.asset_library_add", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "remote_url", + "type": "STRING" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_asset_library_add" + }, + { + "operator": "preferences.asset_library_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_asset_library_remove" + }, + { + "operator": "preferences.associate_blend", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_associate_blend" + }, + { + "operator": "preferences.autoexec_path_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_autoexec_path_add" + }, + { + "operator": "preferences.autoexec_path_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_autoexec_path_remove" + }, + { + "operator": "preferences.clear_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_clear_filter" + }, + { + "operator": "preferences.copy_prev", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_copy_prev" + }, + { + "operator": "preferences.extension_repo_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "access_token", + "type": "STRING" + }, + { + "identifier": "custom_directory", + "type": "STRING" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "remote_url", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_access_token", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_directory", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sync_on_startup", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_extension_repo_add" + }, + { + "operator": "preferences.extension_repo_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "remove_files", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_extension_repo_remove" + }, + { + "operator": "preferences.extension_url_drop", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "url", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_extension_url_drop" + }, + { + "operator": "preferences.keyconfig_activate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyconfig_activate" + }, + { + "operator": "preferences.keyconfig_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyconfig_export" + }, + { + "operator": "preferences.keyconfig_import", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "keep_original", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyconfig_import" + }, + { + "operator": "preferences.keyconfig_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyconfig_remove" + }, + { + "operator": "preferences.keyconfig_test", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyconfig_test" + }, + { + "operator": "preferences.keyitem_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyitem_add" + }, + { + "operator": "preferences.keyitem_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "item_id", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyitem_remove" + }, + { + "operator": "preferences.keyitem_restore", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "item_id", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keyitem_restore" + }, + { + "operator": "preferences.keymap_restore", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_keymap_restore" + }, + { + "operator": "preferences.reset_default_theme", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_reset_default_theme" + }, + { + "operator": "preferences.script_directory_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_script_directory_add" + }, + { + "operator": "preferences.script_directory_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_script_directory_remove" + }, + { + "operator": "preferences.start_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_start_filter" + }, + { + "operator": "preferences.studiolight_copy_settings", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_studiolight_copy_settings" + }, + { + "operator": "preferences.studiolight_install", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_studiolight_install" + }, + { + "operator": "preferences.studiolight_new", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filename", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_studiolight_new" + }, + { + "operator": "preferences.studiolight_uninstall", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_studiolight_uninstall" + }, + { + "operator": "preferences.theme_install", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "overwrite", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_theme_install" + }, + { + "operator": "preferences.unassociate_blend", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PREFERENCES_OT_unassociate_blend" + }, + { + "operator": "ptcache.add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_add" + }, + { + "operator": "ptcache.bake", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_bake" + }, + { + "operator": "ptcache.bake_all", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "bake", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_bake_all" + }, + { + "operator": "ptcache.bake_from_cache", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_bake_from_cache" + }, + { + "operator": "ptcache.free_bake", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_free_bake" + }, + { + "operator": "ptcache.free_bake_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_free_bake_all" + }, + { + "operator": "ptcache.remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "PTCACHE_OT_remove" + }, + { + "operator": "render.clear_texture_cache", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RENDER_OT_clear_texture_cache" + }, + { + "operator": "render.color_management_white_balance_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_color_management_white_balance_preset_add" + }, + { + "operator": "render.cycles_integrator_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_cycles_integrator_preset_add" + }, + { + "operator": "render.cycles_performance_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_cycles_performance_preset_add" + }, + { + "operator": "render.cycles_sampling_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_cycles_sampling_preset_add" + }, + { + "operator": "render.cycles_viewport_sampling_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_cycles_viewport_sampling_preset_add" + }, + { + "operator": "render.eevee_raytracing_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_eevee_raytracing_preset_add" + }, + { + "operator": "render.generate_texture_cache", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "generate_sequences", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_generate_texture_cache" + }, + { + "operator": "render.opengl", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "render_keyed_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "sequencer", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "view_context", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "write_still", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_opengl" + }, + { + "operator": "render.play_rendered_anim", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RENDER_OT_play_rendered_anim" + }, + { + "operator": "render.preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_preset_add" + }, + { + "operator": "render.render", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "identifier": "layer", + "type": "STRING" + }, + { + "identifier": "scene", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_sequencer_scene", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_viewport", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "write_still", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_render" + }, + { + "operator": "render.shutter_curve_preset", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "shape", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RENDER_OT_shutter_curve_preset" + }, + { + "operator": "render.swap_dimensions", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RENDER_OT_swap_dimensions" + }, + { + "operator": "render.view_cancel", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RENDER_OT_view_cancel" + }, + { + "operator": "render.view_show", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RENDER_OT_view_show" + }, + { + "operator": "rigidbody.bake_to_keyframes", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame_end", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "step", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_bake_to_keyframes" + }, + { + "operator": "rigidbody.connect", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "con_type", + "type": "ENUM" + }, + { + "identifier": "connection_pattern", + "type": "ENUM" + }, + { + "identifier": "pivot_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_connect" + }, + { + "operator": "rigidbody.constraint_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_constraint_add" + }, + { + "operator": "rigidbody.constraint_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_constraint_remove" + }, + { + "operator": "rigidbody.mass_calculate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "density", + "type": "FLOAT" + }, + { + "identifier": "material", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_mass_calculate" + }, + { + "operator": "rigidbody.object_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_object_add" + }, + { + "operator": "rigidbody.object_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_object_remove" + }, + { + "operator": "rigidbody.object_settings_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_object_settings_copy" + }, + { + "operator": "rigidbody.objects_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_objects_add" + }, + { + "operator": "rigidbody.objects_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_objects_remove" + }, + { + "operator": "rigidbody.shape_change", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_shape_change" + }, + { + "operator": "rigidbody.world_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_world_add" + }, + { + "operator": "rigidbody.world_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "RIGIDBODY_OT_world_remove" + }, + { + "operator": "scene.delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_delete" + }, + { + "operator": "scene.drop_scene_asset", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_drop_scene_asset" + }, + { + "operator": "scene.freestyle_add_edge_marks_to_keying_set", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_add_edge_marks_to_keying_set" + }, + { + "operator": "scene.freestyle_add_face_marks_to_keying_set", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_add_face_marks_to_keying_set" + }, + { + "operator": "scene.freestyle_alpha_modifier_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_alpha_modifier_add" + }, + { + "operator": "scene.freestyle_color_modifier_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_color_modifier_add" + }, + { + "operator": "scene.freestyle_fill_range_by_selection", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_fill_range_by_selection" + }, + { + "operator": "scene.freestyle_geometry_modifier_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_geometry_modifier_add" + }, + { + "operator": "scene.freestyle_lineset_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_lineset_add" + }, + { + "operator": "scene.freestyle_lineset_copy", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_lineset_copy" + }, + { + "operator": "scene.freestyle_lineset_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_lineset_move" + }, + { + "operator": "scene.freestyle_lineset_paste", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_lineset_paste" + }, + { + "operator": "scene.freestyle_lineset_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_lineset_remove" + }, + { + "operator": "scene.freestyle_linestyle_new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_linestyle_new" + }, + { + "operator": "scene.freestyle_modifier_copy", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_modifier_copy" + }, + { + "operator": "scene.freestyle_modifier_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_modifier_move" + }, + { + "operator": "scene.freestyle_modifier_remove", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_modifier_remove" + }, + { + "operator": "scene.freestyle_module_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_module_add" + }, + { + "operator": "scene.freestyle_module_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_module_move" + }, + { + "operator": "scene.freestyle_module_open", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "make_internal", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_module_open" + }, + { + "operator": "scene.freestyle_module_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_module_remove" + }, + { + "operator": "scene.freestyle_stroke_material_create", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_stroke_material_create" + }, + { + "operator": "scene.freestyle_thickness_modifier_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_freestyle_thickness_modifier_add" + }, + { + "operator": "scene.gltf2_action_filter_refresh", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_gltf2_action_filter_refresh" + }, + { + "operator": "scene.gpencil_brush_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_gpencil_brush_preset_add" + }, + { + "operator": "scene.gpencil_material_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_gpencil_material_preset_add" + }, + { + "operator": "scene.new", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_new" + }, + { + "operator": "scene.new_sequencer", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_new_sequencer" + }, + { + "operator": "scene.new_sequencer_scene", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_new_sequencer_scene" + }, + { + "operator": "scene.render_view_add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_render_view_add" + }, + { + "operator": "scene.render_view_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_render_view_remove" + }, + { + "operator": "scene.view_layer_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_add" + }, + { + "operator": "scene.view_layer_add_aov", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_add_aov" + }, + { + "operator": "scene.view_layer_add_lightgroup", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_add_lightgroup" + }, + { + "operator": "scene.view_layer_add_used_lightgroups", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_add_used_lightgroups" + }, + { + "operator": "scene.view_layer_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_remove" + }, + { + "operator": "scene.view_layer_remove_aov", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_remove_aov" + }, + { + "operator": "scene.view_layer_remove_lightgroup", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_remove_lightgroup" + }, + { + "operator": "scene.view_layer_remove_unused_lightgroups", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCENE_OT_view_layer_remove_unused_lightgroups" + }, + { + "operator": "screen.actionzone", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "modifier", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_actionzone" + }, + { + "operator": "screen.animation_cancel", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "restore_frame", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_animation_cancel" + }, + { + "operator": "screen.animation_pause", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_animation_pause" + }, + { + "operator": "screen.animation_play", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "sync", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_animation_play" + }, + { + "operator": "screen.animation_step", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_animation_step" + }, + { + "operator": "screen.area_close", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_close" + }, + { + "operator": "screen.area_dupli", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_dupli" + }, + { + "operator": "screen.area_join", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "source_xy", + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "target_xy", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_join" + }, + { + "operator": "screen.area_move", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_move" + }, + { + "operator": "screen.area_options", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_options" + }, + { + "operator": "screen.area_split", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "cursor", + "type": "INT" + }, + { + "identifier": "direction", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_split" + }, + { + "operator": "screen.area_swap", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "cursor", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_area_swap" + }, + { + "operator": "screen.back_to_previous", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_back_to_previous" + }, + { + "operator": "screen.delete", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_delete" + }, + { + "operator": "screen.drivers_editor_show", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_drivers_editor_show" + }, + { + "operator": "screen.edge_merge", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "cursor", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_edge_merge" + }, + { + "operator": "screen.frame_jump", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "end", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_frame_jump" + }, + { + "operator": "screen.frame_offset", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_frame_offset" + }, + { + "operator": "screen.header_toggle_menus", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_header_toggle_menus" + }, + { + "operator": "screen.info_log_show", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_info_log_show" + }, + { + "operator": "screen.keyframe_jump", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "next", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_keyframe_jump" + }, + { + "operator": "screen.marker_jump", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "next", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_marker_jump" + }, + { + "operator": "screen.new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_new" + }, + { + "operator": "screen.quadview_size", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_quadview_size" + }, + { + "operator": "screen.redo_last", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_redo_last" + }, + { + "operator": "screen.region_blend", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_region_blend" + }, + { + "operator": "screen.region_context_menu", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_region_context_menu" + }, + { + "operator": "screen.region_flip", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_region_flip" + }, + { + "operator": "screen.region_quadview", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_region_quadview" + }, + { + "operator": "screen.region_scale", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_region_scale" + }, + { + "operator": "screen.region_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "region_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_region_toggle" + }, + { + "operator": "screen.repeat_history", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_repeat_history" + }, + { + "operator": "screen.repeat_last", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_repeat_last" + }, + { + "operator": "screen.screen_full_area", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_hide_panels", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_screen_full_area" + }, + { + "operator": "screen.screen_set", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_screen_set" + }, + { + "operator": "screen.screenshot", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_screenshot" + }, + { + "operator": "screen.screenshot_area", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_screenshot_area" + }, + { + "operator": "screen.space_context_cycle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_space_context_cycle" + }, + { + "operator": "screen.space_type_set_or_cycle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "space_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_space_type_set_or_cycle" + }, + { + "operator": "screen.spacedata_cleanup", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCREEN_OT_spacedata_cleanup" + }, + { + "operator": "screen.time_jump", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "backward", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_time_jump" + }, + { + "operator": "screen.userpref_show", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "section", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_userpref_show" + }, + { + "operator": "screen.workspace_cycle", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCREEN_OT_workspace_cycle" + }, + { + "operator": "script.execute_preset", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "menu_idname", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SCRIPT_OT_execute_preset" + }, + { + "operator": "script.python_file_run", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SCRIPT_OT_python_file_run" + }, + { + "operator": "script.reload", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCRIPT_OT_reload" + }, + { + "operator": "sculpt.brush_stroke", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ignore_background_click", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "override_location", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_brush_stroke" + }, + { + "operator": "sculpt.cloth_filter", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "area_normal_radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cloth_damping", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cloth_mass", + "type": "FLOAT" + }, + { + "identifier": "event_history", + "type": "COLLECTION" + }, + { + "identifier": "force_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "iteration_count", + "type": "INT" + }, + { + "identifier": "orientation", + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "start_mouse", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "strength", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_collisions", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_face_sets", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_cloth_filter" + }, + { + "operator": "sculpt.color_filter", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "area_normal_radius", + "type": "FLOAT" + }, + { + "identifier": "event_history", + "type": "COLLECTION" + }, + { + "arrayLength": 3, + "identifier": "fill_color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "iteration_count", + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "start_mouse", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "strength", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_immediate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_secondary_color", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_color_filter" + }, + { + "operator": "sculpt.detail_flood_fill", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_detail_flood_fill" + }, + { + "operator": "sculpt.dynamic_topology_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_dynamic_topology_toggle" + }, + { + "operator": "sculpt.dyntopo_detail_size_edit", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_dyntopo_detail_size_edit" + }, + { + "operator": "sculpt.expand", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "falloff_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "max_geodesic_move_preview", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "normal_falloff_smooth", + "type": "INT" + }, + { + "identifier": "target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_mask", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_falloff_gradient", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mask_preserve", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_modify_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_reposition_pivot", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_expand" + }, + { + "operator": "sculpt.face_set_box_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_box_gesture" + }, + { + "operator": "sculpt.face_set_change_visibility", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_face_set", + "type": "INT" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_change_visibility" + }, + { + "operator": "sculpt.face_set_edit", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_face_set", + "type": "INT" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "modify_hidden", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "strength", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_edit" + }, + { + "operator": "sculpt.face_set_extract", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_boundary_loop", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "add_solidify", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_shrinkwrap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "smooth_iterations", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_extract" + }, + { + "operator": "sculpt.face_set_lasso_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_lasso_gesture" + }, + { + "operator": "sculpt.face_set_line_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_to_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_line_gesture" + }, + { + "operator": "sculpt.face_set_polyline_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_set_polyline_gesture" + }, + { + "operator": "sculpt.face_sets_create", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_sets_create" + }, + { + "operator": "sculpt.face_sets_init", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_sets_init" + }, + { + "operator": "sculpt.face_sets_randomize_colors", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_face_sets_randomize_colors" + }, + { + "operator": "sculpt.mask_by_color", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "contiguous", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "preserve_previous_mask", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_mask_by_color" + }, + { + "operator": "sculpt.mask_filter", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "auto_iteration_count", + "type": "BOOLEAN" + }, + { + "identifier": "filter_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_mask_filter" + }, + { + "operator": "sculpt.mask_from_boundary", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "boundary_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mix_factor", + "type": "FLOAT" + }, + { + "identifier": "mix_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "propagation_steps", + "type": "INT" + }, + { + "identifier": "settings_source", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_mask_from_boundary" + }, + { + "operator": "sculpt.mask_from_cavity", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "blur_steps", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mix_factor", + "type": "FLOAT" + }, + { + "identifier": "mix_mode", + "type": "ENUM" + }, + { + "identifier": "settings_source", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_curve", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_mask_from_cavity" + }, + { + "operator": "sculpt.mask_init", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_mask_init" + }, + { + "operator": "sculpt.mesh_filter", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "area_normal_radius", + "type": "FLOAT" + }, + { + "identifier": "deform_axis", + "type": "ENUM" + }, + { + "identifier": "event_history", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "iteration_count", + "type": "INT" + }, + { + "identifier": "orientation", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sharpen_curvature_smooth_iterations", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sharpen_intensify_detail_strength", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sharpen_smooth_ratio", + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "start_mouse", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "strength", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "surface_smooth_current_vertex", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "surface_smooth_shape_preservation", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_mesh_filter" + }, + { + "operator": "sculpt.optimize", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_optimize" + }, + { + "operator": "sculpt.paint_mask_extract", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_boundary_loop", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "add_solidify", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_shrinkwrap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mask_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_iterations", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_paint_mask_extract" + }, + { + "operator": "sculpt.paint_mask_slice", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "fill_holes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mask_threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "new_object", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_paint_mask_slice" + }, + { + "operator": "sculpt.project_line_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_to_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_project_line_gesture" + }, + { + "operator": "sculpt.sample_detail_size", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_sample_detail_size" + }, + { + "operator": "sculpt.sculptmode_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_sculptmode_toggle" + }, + { + "operator": "sculpt.set_persistent_base", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_OT_set_persistent_base" + }, + { + "operator": "sculpt.set_pivot_position", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_set_pivot_position" + }, + { + "operator": "sculpt.symmetrize", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "merge_tolerance", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_symmetrize" + }, + { + "operator": "sculpt.trim_box_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "identifier": "trim_extrude_mode", + "type": "ENUM" + }, + { + "identifier": "trim_mode", + "type": "ENUM" + }, + { + "identifier": "trim_orientation", + "type": "ENUM" + }, + { + "identifier": "trim_solver", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_depth", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_trim_box_gesture" + }, + { + "operator": "sculpt.trim_lasso_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "identifier": "trim_extrude_mode", + "type": "ENUM" + }, + { + "identifier": "trim_mode", + "type": "ENUM" + }, + { + "identifier": "trim_orientation", + "type": "ENUM" + }, + { + "identifier": "trim_solver", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_depth", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_trim_lasso_gesture" + }, + { + "operator": "sculpt.trim_line_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "identifier": "trim_extrude_mode", + "type": "ENUM" + }, + { + "identifier": "trim_mode", + "type": "ENUM" + }, + { + "identifier": "trim_orientation", + "type": "ENUM" + }, + { + "identifier": "trim_solver", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_depth", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_to_segment", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xstart", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "yend", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ystart", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_trim_line_gesture" + }, + { + "operator": "sculpt.trim_polyline_gesture", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "identifier": "trim_extrude_mode", + "type": "ENUM" + }, + { + "identifier": "trim_mode", + "type": "ENUM" + }, + { + "identifier": "trim_orientation", + "type": "ENUM" + }, + { + "identifier": "trim_solver", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_depth", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_front_faces_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_trim_polyline_gesture" + }, + { + "operator": "sculpt.uv_sculpt_grab", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_invert", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_uv_sculpt_grab" + }, + { + "operator": "sculpt.uv_sculpt_pinch", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_invert", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_uv_sculpt_pinch" + }, + { + "operator": "sculpt.uv_sculpt_relax", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "relax_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_invert", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_OT_uv_sculpt_relax" + }, + { + "operator": "sculpt_curves.brush_stroke", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "brush_toggle", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pen_flip", + "type": "BOOLEAN" + }, + { + "identifier": "stroke", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_CURVES_OT_brush_stroke" + }, + { + "operator": "sculpt_curves.min_distance_edit", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SCULPT_CURVES_OT_min_distance_edit" + }, + { + "operator": "sculpt_curves.select_grow", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_CURVES_OT_select_grow" + }, + { + "operator": "sculpt_curves.select_random", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "constant_per_curve", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "min", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "partial", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "probability", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SCULPT_CURVES_OT_select_random" + }, + { + "operator": "sequencer.add_scene_strip_from_scene_asset", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_add_scene_strip_from_scene_asset" + }, + { + "operator": "sequencer.box_blade", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ignore_selection", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "remove_gaps", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_box_blade" + }, + { + "operator": "sequencer.change_effect_type", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_change_effect_type" + }, + { + "operator": "sequencer.change_path", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_placeholders", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_change_path" + }, + { + "operator": "sequencer.change_scene", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "scene", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_change_scene" + }, + { + "operator": "sequencer.connect", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_connect" + }, + { + "operator": "sequencer.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_copy" + }, + { + "operator": "sequencer.crossfade_sounds", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_crossfade_sounds" + }, + { + "operator": "sequencer.cursor_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_cursor_set" + }, + { + "operator": "sequencer.deinterlace_selected_movies", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_deinterlace_selected_movies" + }, + { + "operator": "sequencer.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delete_data", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_delete" + }, + { + "operator": "sequencer.disconnect", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_disconnect" + }, + { + "operator": "sequencer.duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "linked", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_duplicate" + }, + { + "operator": "sequencer.duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "SEQUENCER_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_seq_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_duplicate_move" + }, + { + "operator": "sequencer.duplicate_move_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "SEQUENCER_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_seq_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_duplicate_move_linked" + }, + { + "operator": "sequencer.effect_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "height", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "length", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_effect_strip_add" + }, + { + "operator": "sequencer.enable_proxies", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "overwrite", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "proxy_100", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "proxy_25", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "proxy_50", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "proxy_75", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_enable_proxies" + }, + { + "operator": "sequencer.export_subtitles", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_export_subtitles" + }, + { + "operator": "sequencer.fades_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "duration_seconds", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_fades_add" + }, + { + "operator": "sequencer.fades_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_fades_clear" + }, + { + "operator": "sequencer.gap_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frames", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_gap_insert" + }, + { + "operator": "sequencer.gap_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_gap_remove" + }, + { + "operator": "sequencer.image_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "fit_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "identifier": "image_import_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "length", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "set_view_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_placeholders", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sequence_detection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_image_strip_add" + }, + { + "operator": "sequencer.images_separate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "length", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_images_separate" + }, + { + "operator": "sequencer.lock", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_lock" + }, + { + "operator": "sequencer.mask_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "identifier": "mask", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_mask_strip_add" + }, + { + "operator": "sequencer.meta_make", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_meta_make" + }, + { + "operator": "sequencer.meta_separate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_meta_separate" + }, + { + "operator": "sequencer.meta_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_meta_toggle" + }, + { + "operator": "sequencer.movie_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "adjust_playback_rate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "fit_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "set_view_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_framerate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_movie_strip_add" + }, + { + "operator": "sequencer.movieclip_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "identifier": "clip", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_movieclip_strip_add" + }, + { + "operator": "sequencer.mute", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_mute" + }, + { + "operator": "sequencer.offset_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_offset_clear" + }, + { + "operator": "sequencer.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_paste" + }, + { + "operator": "sequencer.preview_duplicate_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "SEQUENCER_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_preview_duplicate_move" + }, + { + "operator": "sequencer.preview_duplicate_move_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "SEQUENCER_OT_duplicate", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_preview_duplicate_move_linked" + }, + { + "operator": "sequencer.reassign_inputs", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_reassign_inputs" + }, + { + "operator": "sequencer.rebuild_proxy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_rebuild_proxy" + }, + { + "operator": "sequencer.refresh_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_refresh_all" + }, + { + "operator": "sequencer.reload", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "adjust_length", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_reload" + }, + { + "operator": "sequencer.rename_channel", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_rename_channel" + }, + { + "operator": "sequencer.rendersize", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_rendersize" + }, + { + "operator": "sequencer.retiming_add_freeze_frame_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "SEQUENCER_OT_retiming_freeze_frame_add", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_seq_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_add_freeze_frame_slide" + }, + { + "operator": "sequencer.retiming_add_transition_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "SEQUENCER_OT_retiming_transition_add", + "type": "POINTER" + }, + { + "identifier": "TRANSFORM_OT_seq_slide", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_add_transition_slide" + }, + { + "operator": "sequencer.retiming_freeze_frame_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "duration", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_freeze_frame_add" + }, + { + "operator": "sequencer.retiming_key_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "timeline_frame", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_key_add" + }, + { + "operator": "sequencer.retiming_key_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_key_delete" + }, + { + "operator": "sequencer.retiming_reset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_reset" + }, + { + "operator": "sequencer.retiming_segment_speed_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "speed", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_segment_speed_set" + }, + { + "operator": "sequencer.retiming_show", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_show" + }, + { + "operator": "sequencer.retiming_transition_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "duration", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_retiming_transition_add" + }, + { + "operator": "sequencer.sample", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "size", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_sample" + }, + { + "operator": "sequencer.scene_frame_range_update", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_scene_frame_range_update" + }, + { + "operator": "sequencer.scene_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "identifier": "scene", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_scene_strip_add" + }, + { + "operator": "sequencer.scene_strip_add_new", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_scene_strip_add_new" + }, + { + "operator": "sequencer.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "center", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "linked_handle", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "linked_time", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "side_of_frame", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select" + }, + { + "operator": "sequencer.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_all" + }, + { + "operator": "sequencer.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "include_handles", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tweak", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_box" + }, + { + "operator": "sequencer.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_circle" + }, + { + "operator": "sequencer.select_grouped", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_active_channel", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_grouped" + }, + { + "operator": "sequencer.select_handle", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_handle" + }, + { + "operator": "sequencer.select_handles", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "side", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_handles" + }, + { + "operator": "sequencer.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_lasso" + }, + { + "operator": "sequencer.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_less" + }, + { + "operator": "sequencer.select_linked", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_linked" + }, + { + "operator": "sequencer.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_linked_pick" + }, + { + "operator": "sequencer.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_more" + }, + { + "operator": "sequencer.select_side", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "side", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_side" + }, + { + "operator": "sequencer.select_side_of_frame", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "side", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_select_side_of_frame" + }, + { + "operator": "sequencer.set_range_to_strips", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "preview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_set_range_to_strips" + }, + { + "operator": "sequencer.slip", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "slip_keyframes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_position", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_slip" + }, + { + "operator": "sequencer.snap", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "keep_offset", + "type": "BOOLEAN" + }, + { + "identifier": "side", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_snap" + }, + { + "operator": "sequencer.sound_strip_add", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cache", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mono", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "move_strips", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "overlap_shuffle_override", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "replace_sel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "skip_locked_or_muted_channels", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_sound_strip_add" + }, + { + "operator": "sequencer.split", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "channel", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ignore_connections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ignore_selection", + "type": "BOOLEAN" + }, + { + "identifier": "side", + "type": "ENUM" + }, + { + "identifier": "type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_position", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_split" + }, + { + "operator": "sequencer.split_multicam", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "camera", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_split_multicam" + }, + { + "operator": "sequencer.strip_color_tag_set", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "color", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_color_tag_set" + }, + { + "operator": "sequencer.strip_jump", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "center", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "next", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_jump" + }, + { + "operator": "sequencer.strip_modifier_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_add" + }, + { + "operator": "sequencer.strip_modifier_add_node_group", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "asset_library_identifier", + "type": "STRING" + }, + { + "identifier": "asset_library_type", + "type": "ENUM" + }, + { + "identifier": "relative_asset_identifier", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_add_node_group" + }, + { + "operator": "sequencer.strip_modifier_copy", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_copy" + }, + { + "operator": "sequencer.strip_modifier_duplicate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_duplicate" + }, + { + "operator": "sequencer.strip_modifier_equalizer_redefine", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "graphs", + "type": "ENUM" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_equalizer_redefine" + }, + { + "operator": "sequencer.strip_modifier_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_move" + }, + { + "operator": "sequencer.strip_modifier_move_to_index", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_move_to_index" + }, + { + "operator": "sequencer.strip_modifier_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_remove" + }, + { + "operator": "sequencer.strip_modifier_set_active", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "modifier", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_modifier_set_active" + }, + { + "operator": "sequencer.strip_transform_clear", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "property", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_transform_clear" + }, + { + "operator": "sequencer.strip_transform_fit", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "fit_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_strip_transform_fit" + }, + { + "operator": "sequencer.swap", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "side", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_swap" + }, + { + "operator": "sequencer.swap_data", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_swap_data" + }, + { + "operator": "sequencer.swap_inputs", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_swap_inputs" + }, + { + "operator": "sequencer.text_cursor_move", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select_text", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_cursor_move" + }, + { + "operator": "sequencer.text_cursor_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select_text", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_cursor_set" + }, + { + "operator": "sequencer.text_delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_delete" + }, + { + "operator": "sequencer.text_deselect_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_deselect_all" + }, + { + "operator": "sequencer.text_edit_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_edit_copy" + }, + { + "operator": "sequencer.text_edit_cut", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_edit_cut" + }, + { + "operator": "sequencer.text_edit_mode_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_edit_mode_toggle" + }, + { + "operator": "sequencer.text_edit_paste", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_edit_paste" + }, + { + "operator": "sequencer.text_insert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "string", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_insert" + }, + { + "operator": "sequencer.text_line_break", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_line_break" + }, + { + "operator": "sequencer.text_select_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_select_all" + }, + { + "operator": "sequencer.text_strip_style_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_text_strip_style_preset_add" + }, + { + "operator": "sequencer.unlock", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_unlock" + }, + { + "operator": "sequencer.unmute", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_unmute" + }, + { + "operator": "sequencer.view_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_view_all" + }, + { + "operator": "sequencer.view_all_preview", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_view_all_preview" + }, + { + "operator": "sequencer.view_frame", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_view_frame" + }, + { + "operator": "sequencer.view_ghost_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_view_ghost_border" + }, + { + "operator": "sequencer.view_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_view_selected" + }, + { + "operator": "sequencer.view_zoom_ratio", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "ratio", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SEQUENCER_OT_view_zoom_ratio" + }, + { + "operator": "sound.bake_animation", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SOUND_OT_bake_animation" + }, + { + "operator": "sound.mixdown", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "accuracy", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "bitrate", + "type": "INT" + }, + { + "identifier": "channels", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "codec", + "type": "ENUM" + }, + { + "identifier": "container", + "type": "ENUM" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "format", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mixrate", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "split_channels", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SOUND_OT_mixdown" + }, + { + "operator": "sound.open", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cache", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mono", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SOUND_OT_open" + }, + { + "operator": "sound.open_mono", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "cache", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mono", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_multiview", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "SOUND_OT_open_mono" + }, + { + "operator": "sound.pack", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SOUND_OT_pack" + }, + { + "operator": "sound.unpack", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "id", + "type": "STRING" + }, + { + "identifier": "method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "SOUND_OT_unpack" + }, + { + "operator": "sound.update_animation_flags", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SOUND_OT_update_animation_flags" + }, + { + "operator": "spreadsheet.add_row_filter_rule", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_add_row_filter_rule" + }, + { + "operator": "spreadsheet.change_spreadsheet_data_source", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "attribute_domain_type", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "component_type", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_change_spreadsheet_data_source" + }, + { + "operator": "spreadsheet.fit_column", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_fit_column" + }, + { + "operator": "spreadsheet.remove_row_filter_rule", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_remove_row_filter_rule" + }, + { + "operator": "spreadsheet.reorder_columns", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_reorder_columns" + }, + { + "operator": "spreadsheet.resize_column", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_resize_column" + }, + { + "operator": "spreadsheet.toggle_pin", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "SPREADSHEET_OT_toggle_pin" + }, + { + "operator": "surface.primitive_nurbs_surface_circle_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SURFACE_OT_primitive_nurbs_surface_circle_add" + }, + { + "operator": "surface.primitive_nurbs_surface_curve_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SURFACE_OT_primitive_nurbs_surface_curve_add" + }, + { + "operator": "surface.primitive_nurbs_surface_cylinder_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SURFACE_OT_primitive_nurbs_surface_cylinder_add" + }, + { + "operator": "surface.primitive_nurbs_surface_sphere_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SURFACE_OT_primitive_nurbs_surface_sphere_add" + }, + { + "operator": "surface.primitive_nurbs_surface_surface_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SURFACE_OT_primitive_nurbs_surface_surface_add" + }, + { + "operator": "surface.primitive_nurbs_surface_torus_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "enter_editmode", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "SURFACE_OT_primitive_nurbs_surface_torus_add" + }, + { + "operator": "text.autocomplete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_autocomplete" + }, + { + "operator": "text.comment_toggle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_comment_toggle" + }, + { + "operator": "text.convert_whitespace", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_convert_whitespace" + }, + { + "operator": "text.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_copy" + }, + { + "operator": "text.cursor_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_cursor_set" + }, + { + "operator": "text.cut", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_cut" + }, + { + "operator": "text.delete", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_delete" + }, + { + "operator": "text.duplicate_line", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_duplicate_line" + }, + { + "operator": "text.find", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_find" + }, + { + "operator": "text.find_set_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_find_set_selected" + }, + { + "operator": "text.indent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_indent" + }, + { + "operator": "text.indent_or_autocomplete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_indent_or_autocomplete" + }, + { + "operator": "text.insert", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "text", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_insert" + }, + { + "operator": "text.jump", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "line", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_jump" + }, + { + "operator": "text.jump_to_file_at_point", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "column", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "line", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_jump_to_file_at_point" + }, + { + "operator": "text.line_break", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_line_break" + }, + { + "operator": "text.line_number", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_line_number" + }, + { + "operator": "text.make_internal", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_make_internal" + }, + { + "operator": "text.move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_move" + }, + { + "operator": "text.move_lines", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_move_lines" + }, + { + "operator": "text.move_select", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_move_select" + }, + { + "operator": "text.new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_new" + }, + { + "operator": "text.open", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "internal", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_open" + }, + { + "operator": "text.overwrite_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_overwrite_toggle" + }, + { + "operator": "text.paste", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "selection", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_paste" + }, + { + "operator": "text.reload", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_reload" + }, + { + "operator": "text.replace", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_replace" + }, + { + "operator": "text.replace_set_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_replace_set_selected" + }, + { + "operator": "text.resolve_conflict", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "resolution", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_resolve_conflict" + }, + { + "operator": "text.run_script", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_run_script" + }, + { + "operator": "text.save", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_save" + }, + { + "operator": "text.save_as", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_save_as" + }, + { + "operator": "text.scroll", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "lines", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_scroll" + }, + { + "operator": "text.scroll_bar", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "lines", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_scroll_bar" + }, + { + "operator": "text.select_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_select_all" + }, + { + "operator": "text.select_line", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_select_line" + }, + { + "operator": "text.select_word", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_select_word" + }, + { + "operator": "text.selection_set", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_selection_set" + }, + { + "operator": "text.start_find", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_start_find" + }, + { + "operator": "text.to_3d_object", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "split_lines", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_OT_to_3d_object" + }, + { + "operator": "text.unindent", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_unindent" + }, + { + "operator": "text.unlink", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_unlink" + }, + { + "operator": "text.update_shader", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXT_OT_update_shader" + }, + { + "operator": "text_editor.preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TEXT_EDITOR_OT_preset_add" + }, + { + "operator": "texture.new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXTURE_OT_new" + }, + { + "operator": "texture.slot_copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXTURE_OT_slot_copy" + }, + { + "operator": "texture.slot_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TEXTURE_OT_slot_move" + }, + { + "operator": "texture.slot_paste", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TEXTURE_OT_slot_paste" + }, + { + "operator": "transform.bbone_resize", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_bbone_resize" + }, + { + "operator": "transform.bend", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 1, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_bend" + }, + { + "operator": "transform.create_orientation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "overwrite", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_view", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_create_orientation" + }, + { + "operator": "transform.delete_orientation", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_delete_orientation" + }, + { + "operator": "transform.edge_bevelweight", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_edge_bevelweight" + }, + { + "operator": "transform.edge_crease", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_edge_crease" + }, + { + "operator": "transform.edge_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "correct_uv", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "single_side", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clamp", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_edge_slide" + }, + { + "operator": "transform.from_gizmo", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_from_gizmo" + }, + { + "operator": "transform.mirror", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_mirror" + }, + { + "operator": "transform.push_pull", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_push_pull" + }, + { + "operator": "transform.resize", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "mouse_dir_constraint", + "type": "FLOAT" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_on_cancel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "texture_space", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_duplicated_keyframes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_resize" + }, + { + "operator": "transform.rotate", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "orient_axis", + "type": "ENUM" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_rotate" + }, + { + "operator": "transform.rotate_normal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "orient_axis", + "type": "ENUM" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_rotate_normal" + }, + { + "operator": "transform.select_orientation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "orientation", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_select_orientation" + }, + { + "operator": "transform.seq_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_on_cancel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "texture_space", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_duplicated_keyframes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_restore_handle_selection", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "value", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "view2d_edge_pan", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_seq_slide" + }, + { + "operator": "transform.shear", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "orient_axis", + "type": "ENUM" + }, + { + "identifier": "orient_axis_ortho", + "type": "ENUM" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_shear" + }, + { + "operator": "transform.shrink_fatten", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_shrink_fatten" + }, + { + "operator": "transform.skin_resize", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_skin_resize" + }, + { + "operator": "transform.tilt", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_tilt" + }, + { + "operator": "transform.tosphere", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_tosphere" + }, + { + "operator": "transform.trackball", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_trackball" + }, + { + "operator": "transform.transform", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center_override", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "orient_axis", + "type": "ENUM" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_on_cancel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap_align", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_normal", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "texture_space", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automerge_and_split", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_duplicated_keyframes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 4, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_transform" + }, + { + "operator": "transform.translate", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "constraint_axis", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cursor_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "gpencil_strokes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 9, + "identifier": "orient_matrix", + "type": "FLOAT" + }, + { + "identifier": "orient_matrix_type", + "type": "ENUM" + }, + { + "identifier": "orient_type", + "type": "ENUM" + }, + { + "identifier": "proportional_edit_falloff", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "proportional_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_on_cancel", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap_align", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_normal", + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "texture_space", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "translate_origin", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automerge_and_split", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_duplicated_keyframes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_connected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proportional_projected", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "value", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "view2d_edge_pan", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_translate" + }, + { + "operator": "transform.vert_crease", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_vert_crease" + }, + { + "operator": "transform.vert_slide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "correct_uv", + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "direction", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flipped", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "snap", + "type": "BOOLEAN" + }, + { + "identifier": "snap_elements", + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "snap_point", + "type": "FLOAT" + }, + { + "identifier": "snap_target", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clamp", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_edit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_nonedit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_project", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_selectable", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_snap_self", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_vert_slide" + }, + { + "operator": "transform.vertex_random", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "normal", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "uniform", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_vertex_random" + }, + { + "operator": "transform.vertex_warp", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 3, + "identifier": "center", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "max", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "min", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset_angle", + "type": "FLOAT" + }, + { + "arrayLength": 16, + "identifier": "viewmat", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "warp_angle", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "TRANSFORM_OT_vertex_warp" + }, + { + "operator": "ui.assign_default_button", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_assign_default_button" + }, + { + "operator": "ui.button_execute", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "skip_depressed", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_button_execute" + }, + { + "operator": "ui.button_string_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_button_string_clear" + }, + { + "operator": "ui.copy_as_driver_button", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_copy_as_driver_button" + }, + { + "operator": "ui.copy_data_path_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "full_path", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_copy_data_path_button" + }, + { + "operator": "ui.copy_driver_to_selected_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_copy_driver_to_selected_button" + }, + { + "operator": "ui.copy_python_command_button", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_copy_python_command_button" + }, + { + "operator": "ui.copy_to_selected_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_copy_to_selected_button" + }, + { + "operator": "ui.drop_color", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 4, + "identifier": "color", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gamma", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_alpha", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_drop_color" + }, + { + "operator": "ui.drop_material", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_drop_material" + }, + { + "operator": "ui.drop_name", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "string", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_drop_name" + }, + { + "operator": "ui.editsource", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_editsource" + }, + { + "operator": "ui.eyedropper_bone", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_bone" + }, + { + "operator": "ui.eyedropper_color", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "prop_data_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_color" + }, + { + "operator": "ui.eyedropper_colorramp", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_colorramp" + }, + { + "operator": "ui.eyedropper_colorramp_point", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_colorramp_point" + }, + { + "operator": "ui.eyedropper_depth", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "prop_data_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_depth" + }, + { + "operator": "ui.eyedropper_driver", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "mapping_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_driver" + }, + { + "operator": "ui.eyedropper_grease_pencil_color", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "material_mode", + "type": "ENUM" + }, + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_grease_pencil_color" + }, + { + "operator": "ui.eyedropper_id", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_eyedropper_id" + }, + { + "operator": "ui.jump_to_target_button", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_jump_to_target_button" + }, + { + "operator": "ui.list_start_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_list_start_filter" + }, + { + "operator": "ui.override_add_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_override_add_button" + }, + { + "operator": "ui.override_idtemplate_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_override_idtemplate_clear" + }, + { + "operator": "ui.override_idtemplate_make", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_override_idtemplate_make" + }, + { + "operator": "ui.override_idtemplate_reset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_override_idtemplate_reset" + }, + { + "operator": "ui.override_remove_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_override_remove_button" + }, + { + "operator": "ui.reloadtranslation", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_reloadtranslation" + }, + { + "operator": "ui.reset_default_button", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_reset_default_button" + }, + { + "operator": "ui.unset_property_button", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_unset_property_button" + }, + { + "operator": "ui.view_drop", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_view_drop" + }, + { + "operator": "ui.view_item_delete", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_view_item_delete" + }, + { + "operator": "ui.view_item_focus", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_view_item_focus" + }, + { + "operator": "ui.view_item_navigate", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_view_item_navigate" + }, + { + "operator": "ui.view_item_rename", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_view_item_rename" + }, + { + "operator": "ui.view_item_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mouse_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mouse_y", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "range_select", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_select_on_click", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_to_deselect_others", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UI_OT_view_item_select" + }, + { + "operator": "ui.view_scroll", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_view_scroll" + }, + { + "operator": "ui.view_start_filter", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UI_OT_view_start_filter" + }, + { + "operator": "uilist.entry_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "active_index_path", + "type": "STRING" + }, + { + "identifier": "list_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UILIST_OT_entry_add" + }, + { + "operator": "uilist.entry_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "active_index_path", + "type": "STRING" + }, + { + "identifier": "direction", + "type": "ENUM" + }, + { + "identifier": "list_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UILIST_OT_entry_move" + }, + { + "operator": "uilist.entry_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "active_index_path", + "type": "STRING" + }, + { + "identifier": "list_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UILIST_OT_entry_remove" + }, + { + "operator": "uv.align", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + }, + { + "identifier": "position_mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_align" + }, + { + "operator": "uv.align_rotation", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "identifier": "method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_align_rotation" + }, + { + "operator": "uv.arrange_islands", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "identifier": "axis", + "type": "ENUM" + }, + { + "identifier": "initial_position", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "margin", + "type": "FLOAT" + }, + { + "identifier": "order", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_arrange_islands" + }, + { + "operator": "uv.average_islands_scale", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "scale_uv", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "shear", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_average_islands_scale" + }, + { + "operator": "uv.copy", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_copy" + }, + { + "operator": "uv.copy_mirrored_faces", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mesh_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "precision", + "type": "INT" + }, + { + "identifier": "uv_axis", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_copy_mirrored_faces" + }, + { + "operator": "uv.cube_project", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clip_to_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cube_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "scale_to_bounds", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_cube_project" + }, + { + "operator": "uv.cursor_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_cursor_set" + }, + { + "operator": "uv.custom_region_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_custom_region_set" + }, + { + "operator": "uv.cylinder_project", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clip_to_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "identifier": "direction", + "type": "ENUM" + }, + { + "identifier": "pole", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "scale_to_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seam", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_cylinder_project" + }, + { + "operator": "uv.export_layout", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_all", + "type": "BOOLEAN" + }, + { + "identifier": "export_tiles", + "type": "ENUM" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "modified", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "opacity", + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "size", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_export_layout" + }, + { + "operator": "uv.follow_active_quads", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_follow_active_quads" + }, + { + "operator": "uv.hide", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_hide" + }, + { + "operator": "uv.lightmap_pack", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "PREF_BOX_DIV", + "type": "INT" + }, + { + "identifier": "PREF_CONTEXT", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "PREF_MARGIN_DIV", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "PREF_NEW_UVLAYER", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "PREF_PACK_IN_ONE", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_lightmap_pack" + }, + { + "operator": "uv.mark_seam", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_mark_seam" + }, + { + "operator": "uv.minimize_stretch", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "blend", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fill_holes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_minimize_stretch" + }, + { + "operator": "uv.move_on_axis", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "distance", + "type": "INT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_move_on_axis" + }, + { + "operator": "uv.pack_islands", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "margin", + "type": "FLOAT" + }, + { + "identifier": "margin_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "merge_overlap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "pin", + "type": "BOOLEAN" + }, + { + "identifier": "pin_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "rotate", + "type": "BOOLEAN" + }, + { + "identifier": "rotate_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "scale", + "type": "BOOLEAN" + }, + { + "identifier": "shape_method", + "type": "ENUM" + }, + { + "identifier": "udim_source", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_pack_islands" + }, + { + "operator": "uv.paste", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_paste" + }, + { + "operator": "uv.pin", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "clear", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_pin" + }, + { + "operator": "uv.project_from_view", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "camera_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clip_to_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "orthographic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "scale_to_bounds", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_project_from_view" + }, + { + "operator": "uv.randomize_uv_transform", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "loc", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "random_seed", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "rot", + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "scale_even", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_loc", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rot", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_randomize_uv_transform" + }, + { + "operator": "uv.remove_doubles", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_shared_vertex", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_unselected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_remove_doubles" + }, + { + "operator": "uv.reset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_reset" + }, + { + "operator": "uv.reveal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "select", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_reveal" + }, + { + "operator": "uv.rip", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mirror", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_accurate", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_rip" + }, + { + "operator": "uv.rip_move", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "TRANSFORM_OT_translate", + "type": "POINTER" + }, + { + "identifier": "UV_OT_rip", + "type": "POINTER" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_rip_move" + }, + { + "operator": "uv.seams_from_islands", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "mark_seams", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mark_sharp", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_seams_from_islands" + }, + { + "operator": "uv.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select" + }, + { + "operator": "uv.select_all", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "action", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_all" + }, + { + "operator": "uv.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pinned", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_box" + }, + { + "operator": "uv.select_by_winding", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "winding", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_by_winding" + }, + { + "operator": "uv.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_circle" + }, + { + "operator": "uv.select_edge_ring", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_edge_ring" + }, + { + "operator": "uv.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_lasso" + }, + { + "operator": "uv.select_less", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_select_less" + }, + { + "operator": "uv.select_linked", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_linked" + }, + { + "operator": "uv.select_linked_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "delimit", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_linked_pick" + }, + { + "operator": "uv.select_loop", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_loop" + }, + { + "operator": "uv.select_mode", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_mode" + }, + { + "operator": "uv.select_more", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_select_more" + }, + { + "operator": "uv.select_overlap", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_overlap" + }, + { + "operator": "uv.select_pinned", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_select_pinned" + }, + { + "operator": "uv.select_similar", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "compare", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_similar" + }, + { + "operator": "uv.select_split", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_select_split" + }, + { + "operator": "uv.select_tile", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "tile", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_select_tile" + }, + { + "operator": "uv.shortest_path_pick", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "nth", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "object_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "skip", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_face_step", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_topology_distance", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_shortest_path_pick" + }, + { + "operator": "uv.shortest_path_select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "nth", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "skip", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_face_step", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_topology_distance", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_shortest_path_select" + }, + { + "operator": "uv.smart_project", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle_limit", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "area_weight", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "island_margin", + "type": "FLOAT" + }, + { + "identifier": "margin_method", + "type": "ENUM" + }, + { + "identifier": "rotate_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "scale_to_bounds", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_smart_project" + }, + { + "operator": "uv.snap_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "target", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_snap_cursor" + }, + { + "operator": "uv.snap_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "target", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_snap_selected" + }, + { + "operator": "uv.sphere_project", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "align", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clip_to_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "identifier": "direction", + "type": "ENUM" + }, + { + "identifier": "pole", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "scale_to_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "seam", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_sphere_project" + }, + { + "operator": "uv.stitch", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_object_index", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "clear_seams", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "limit", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "midpoint_snap", + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 6, + "identifier": "objects_selection_count", + "type": "INT" + }, + { + "identifier": "selection", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "snap_islands", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "static_island", + "type": "INT" + }, + { + "identifier": "stored_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_limit", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_stitch" + }, + { + "operator": "uv.unwrap", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "correct_aspect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "fill_holes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "margin", + "type": "FLOAT" + }, + { + "identifier": "margin_method", + "type": "ENUM" + }, + { + "identifier": "method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "no_flip", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_original_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_subsurf_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_weights", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "weight_factor", + "type": "FLOAT" + }, + { + "identifier": "weight_group", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "UV_OT_unwrap" + }, + { + "operator": "uv.weld", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "UV_OT_weld" + }, + { + "operator": "view2d.edge_pan", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delay", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "inside_padding", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "max_speed", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "outside_padding", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "speed_ramp", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "zoom_influence", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_edge_pan" + }, + { + "operator": "view2d.ndof", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_ndof" + }, + { + "operator": "view2d.pan", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deltax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "deltay", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_pan" + }, + { + "operator": "view2d.reset", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_reset" + }, + { + "operator": "view2d.scroll_down", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deltax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "deltay", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "page", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_scroll_down" + }, + { + "operator": "view2d.scroll_left", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deltax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "deltay", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_scroll_left" + }, + { + "operator": "view2d.scroll_right", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deltax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "deltay", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_scroll_right" + }, + { + "operator": "view2d.scroll_up", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deltax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "deltay", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "page", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_scroll_up" + }, + { + "operator": "view2d.scroller_activate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_scroller_activate" + }, + { + "operator": "view2d.smoothview", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_smoothview" + }, + { + "operator": "view2d.zoom", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deltax", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "deltay", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_zoom" + }, + { + "operator": "view2d.zoom_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "zoom_out", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_zoom_border" + }, + { + "operator": "view2d.zoom_in", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "zoomfacx", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "zoomfacy", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_zoom_in" + }, + { + "operator": "view2d.zoom_out", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "zoomfacx", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "zoomfacy", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW2D_OT_zoom_out" + }, + { + "operator": "view3d.bone_select_menu", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "name", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_bone_select_menu" + }, + { + "operator": "view3d.camera_background_image_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_camera_background_image_add" + }, + { + "operator": "view3d.camera_background_image_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_camera_background_image_remove" + }, + { + "operator": "view3d.camera_to_view", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_camera_to_view" + }, + { + "operator": "view3d.camera_to_view_selected", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_camera_to_view_selected" + }, + { + "operator": "view3d.clear_render_border", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_clear_render_border" + }, + { + "operator": "view3d.clip_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_clip_border" + }, + { + "operator": "view3d.copybuffer", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_copybuffer" + }, + { + "operator": "view3d.cursor3d", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "orientation", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_depth", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_cursor3d" + }, + { + "operator": "view3d.dolly", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mx", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "my", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_dolly" + }, + { + "operator": "view3d.drop_world", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_drop_world" + }, + { + "operator": "view3d.edit_mesh_extrude_individual_move", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_edit_mesh_extrude_individual_move" + }, + { + "operator": "view3d.edit_mesh_extrude_manifold_normal", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_edit_mesh_extrude_manifold_normal" + }, + { + "operator": "view3d.edit_mesh_extrude_move_normal", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "dissolve_and_intersect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_edit_mesh_extrude_move_normal" + }, + { + "operator": "view3d.edit_mesh_extrude_move_shrink_fatten", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_edit_mesh_extrude_move_shrink_fatten" + }, + { + "operator": "view3d.fly", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_fly" + }, + { + "operator": "view3d.interactive_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "plane_aspect_base", + "type": "ENUM" + }, + { + "identifier": "plane_aspect_depth", + "type": "ENUM" + }, + { + "identifier": "plane_origin_base", + "type": "ENUM" + }, + { + "identifier": "plane_origin_depth", + "type": "ENUM" + }, + { + "identifier": "primitive_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_interactive_add" + }, + { + "operator": "view3d.localview", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "frame_selected", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_localview" + }, + { + "operator": "view3d.localview_remove_from", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_localview_remove_from" + }, + { + "operator": "view3d.move", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_move" + }, + { + "operator": "view3d.navigate", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_navigate" + }, + { + "operator": "view3d.ndof_all", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_ndof_all" + }, + { + "operator": "view3d.ndof_orbit", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_ndof_orbit" + }, + { + "operator": "view3d.ndof_orbit_zoom", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_ndof_orbit_zoom" + }, + { + "operator": "view3d.ndof_pan", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_ndof_pan" + }, + { + "operator": "view3d.object_as_camera", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_object_as_camera" + }, + { + "operator": "view3d.object_mode_pie_or_toggle", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_object_mode_pie_or_toggle" + }, + { + "operator": "view3d.pastebuffer", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "autoselect", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_pastebuffer" + }, + { + "operator": "view3d.render_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_render_border" + }, + { + "operator": "view3d.rotate", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_rotate" + }, + { + "operator": "view3d.ruler_add", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_ruler_add" + }, + { + "operator": "view3d.ruler_remove", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_ruler_remove" + }, + { + "operator": "view3d.select", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "center", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "deselect_all", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enumerate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "object", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select_passthrough", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_select" + }, + { + "operator": "view3d.select_box", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_select_box" + }, + { + "operator": "view3d.select_circle", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_select_circle" + }, + { + "operator": "view3d.select_lasso", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "mode", + "type": "ENUM" + }, + { + "identifier": "path", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_select_lasso" + }, + { + "operator": "view3d.select_menu", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "deselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "name", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "toggle", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_select_menu" + }, + { + "operator": "view3d.smoothview", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_smoothview" + }, + { + "operator": "view3d.snap_cursor_to_active", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_cursor_to_active" + }, + { + "operator": "view3d.snap_cursor_to_center", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_cursor_to_center" + }, + { + "operator": "view3d.snap_cursor_to_grid", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_cursor_to_grid" + }, + { + "operator": "view3d.snap_cursor_to_selected", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_cursor_to_selected" + }, + { + "operator": "view3d.snap_selected_to_active", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_selected_to_active" + }, + { + "operator": "view3d.snap_selected_to_cursor", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_offset", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_selected_to_cursor" + }, + { + "operator": "view3d.snap_selected_to_grid", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_snap_selected_to_grid" + }, + { + "operator": "view3d.toggle_matcap_flip", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_toggle_matcap_flip" + }, + { + "operator": "view3d.toggle_shading", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_toggle_shading" + }, + { + "operator": "view3d.toggle_xray", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_toggle_xray" + }, + { + "operator": "view3d.transform_gizmo_set", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "extend", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_transform_gizmo_set" + }, + { + "operator": "view3d.view_all", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "center", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_all_regions", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_all" + }, + { + "operator": "view3d.view_axis", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "align_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative", + "type": "BOOLEAN" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_axis" + }, + { + "operator": "view3d.view_camera", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_camera" + }, + { + "operator": "view3d.view_center_camera", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_center_camera" + }, + { + "operator": "view3d.view_center_cursor", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_center_cursor" + }, + { + "operator": "view3d.view_center_lock", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_center_lock" + }, + { + "operator": "view3d.view_center_pick", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_center_pick" + }, + { + "operator": "view3d.view_lock_clear", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_lock_clear" + }, + { + "operator": "view3d.view_lock_to_active", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_lock_to_active" + }, + { + "operator": "view3d.view_orbit", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_orbit" + }, + { + "operator": "view3d.view_pan", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_pan" + }, + { + "operator": "view3d.view_persportho", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_persportho" + }, + { + "operator": "view3d.view_roll", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_roll" + }, + { + "operator": "view3d.view_selected", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_all_regions", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_view_selected" + }, + { + "operator": "view3d.walk", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_walk" + }, + { + "operator": "view3d.zoom", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "delta", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mx", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "my", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_init", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_zoom" + }, + { + "operator": "view3d.zoom_border", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "wait_for_input", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "xmax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "xmin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymax", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ymin", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "zoom_out", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_zoom_border" + }, + { + "operator": "view3d.zoom_camera_1_to_1", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "VIEW3D_OT_zoom_camera_1_to_1" + }, + { + "operator": "wm.append", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "autoselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clear_asset_data", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "do_reuse_local_id", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filename", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "instance_collections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "instance_object_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "link", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "set_fake", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_recursive", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_append" + }, + { + "operator": "wm.batch_rename", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "actions", + "type": "COLLECTION" + }, + { + "identifier": "data_source", + "type": "ENUM" + }, + { + "identifier": "data_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_batch_rename" + }, + { + "operator": "wm.blend_strings_utf8_validate", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_blend_strings_utf8_validate" + }, + { + "operator": "wm.call_asset_shelf_popover", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_call_asset_shelf_popover" + }, + { + "operator": "wm.call_menu", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_call_menu" + }, + { + "operator": "wm.call_menu_pie", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_call_menu_pie" + }, + { + "operator": "wm.call_panel", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "keep_open", + "type": "BOOLEAN" + }, + { + "identifier": "name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_call_panel" + }, + { + "operator": "wm.clear_recent_files", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "remove", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_clear_recent_files" + }, + { + "operator": "wm.collection_export_all", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_collection_export_all" + }, + { + "operator": "wm.context_collection_boolean_set", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path_item", + "type": "STRING" + }, + { + "identifier": "data_path_iter", + "type": "STRING" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_collection_boolean_set" + }, + { + "operator": "wm.context_cycle_array", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_cycle_array" + }, + { + "operator": "wm.context_cycle_enum", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wrap", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_cycle_enum" + }, + { + "operator": "wm.context_cycle_int", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "reverse", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wrap", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_cycle_int" + }, + { + "operator": "wm.context_menu_enum", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_menu_enum" + }, + { + "operator": "wm.context_modal_mouse", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path_item", + "type": "STRING" + }, + { + "identifier": "data_path_iter", + "type": "STRING" + }, + { + "identifier": "header_text", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "initial_x", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "input_scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "invert", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_modal_mouse" + }, + { + "operator": "wm.context_pie_enum", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_pie_enum" + }, + { + "operator": "wm.context_scale_float", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_scale_float" + }, + { + "operator": "wm.context_scale_int", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "always_step", + "type": "BOOLEAN" + }, + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_scale_int" + }, + { + "operator": "wm.context_set_boolean", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_boolean" + }, + { + "operator": "wm.context_set_enum", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "value", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_enum" + }, + { + "operator": "wm.context_set_float", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "FLOAT" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_float" + }, + { + "operator": "wm.context_set_id", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "value", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_id" + }, + { + "operator": "wm.context_set_int", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "value", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_int" + }, + { + "operator": "wm.context_set_string", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "value", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_string" + }, + { + "operator": "wm.context_set_value", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "value", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_set_value" + }, + { + "operator": "wm.context_toggle", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "module", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_toggle" + }, + { + "operator": "wm.context_toggle_enum", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "value_1", + "type": "STRING" + }, + { + "identifier": "value_2", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_context_toggle_enum" + }, + { + "operator": "wm.debug_menu", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "debug_value", + "type": "INT" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_debug_menu" + }, + { + "operator": "wm.doc_view", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "doc_id", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_doc_view" + }, + { + "operator": "wm.doc_view_manual", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "doc_id", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_doc_view_manual" + }, + { + "operator": "wm.doc_view_manual_ui_context", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_doc_view_manual_ui_context" + }, + { + "operator": "wm.drop_blend_file", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_drop_blend_file" + }, + { + "operator": "wm.drop_import_file", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_drop_import_file" + }, + { + "operator": "wm.fbx_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "anim_offset", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ignore_leaf_bones", + "type": "BOOLEAN" + }, + { + "identifier": "import_colors", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "import_subdivision", + "type": "BOOLEAN" + }, + { + "identifier": "mtl_name_collision_mode", + "type": "ENUM" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_anim", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props_enum_as_string", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "validate_meshes", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_fbx_import" + }, + { + "operator": "wm.grease_pencil_export_svg", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "frame_mode", + "type": "ENUM" + }, + { + "identifier": "selected_object_type", + "type": "ENUM" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "stroke_sample", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_clip_camera", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_uniform_width", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_grease_pencil_export_svg" + }, + { + "operator": "wm.grease_pencil_import_svg", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "recenter_bounds", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "resolution", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "scale", + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_grease_pencil_import_svg" + }, + { + "operator": "wm.id_linked_relocate", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "autoselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clear_asset_data", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "do_reuse_local_id", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filename", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "id_session_uid", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "instance_collections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "instance_object_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "link", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_id_linked_relocate" + }, + { + "operator": "wm.interface_theme_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_interface_theme_preset_add" + }, + { + "operator": "wm.interface_theme_preset_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_interface_theme_preset_remove" + }, + { + "operator": "wm.interface_theme_preset_save", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_interface_theme_preset_save" + }, + { + "operator": "wm.keyconfig_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_keyconfig_preset_add" + }, + { + "operator": "wm.keyconfig_preset_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_keyconfig_preset_remove" + }, + { + "operator": "wm.lib_reload", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filename", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "library", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_lib_reload" + }, + { + "operator": "wm.lib_relocate", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filename", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "library", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_lib_relocate" + }, + { + "operator": "wm.link", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "active_collection", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "autoselect", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clear_asset_data", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "do_reuse_local_id", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filename", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "instance_collections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "instance_object_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "link", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_link" + }, + { + "operator": "wm.memory_statistics", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_memory_statistics" + }, + { + "operator": "wm.obj_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_modifiers", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_transform", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "end_frame", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_animation", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_colors", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_curves_as_nurbs", + "type": "BOOLEAN" + }, + { + "identifier": "export_eval_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_material_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_materials", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_object_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_pbr_extensions", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_selected_objects", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_smooth_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_triangulated_mesh", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_uv", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_vertex_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "identifier": "path_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "smooth_group_bitflags", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "start_frame", + "type": "INT" + }, + { + "identifier": "up_axis", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_obj_export" + }, + { + "operator": "wm.obj_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clamp_size", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "close_spline_loops", + "type": "BOOLEAN" + }, + { + "identifier": "collection_separator", + "type": "STRING" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "import_vertex_groups", + "type": "BOOLEAN" + }, + { + "identifier": "mtl_name_collision_mode", + "type": "ENUM" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "identifier": "up_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_split_groups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_split_objects", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "validate_meshes", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_obj_import" + }, + { + "operator": "wm.open_mainfile", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "display_file_selector", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "load_ui", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "state", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_scripts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_open_mainfile" + }, + { + "operator": "wm.operator_cheat_sheet", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_operator_cheat_sheet" + }, + { + "operator": "wm.operator_defaults", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_operator_defaults" + }, + { + "operator": "wm.operator_pie_enum", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "prop_string", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_operator_pie_enum" + }, + { + "operator": "wm.operator_preset_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "operator", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "remove_active", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "remove_name", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_operator_preset_add" + }, + { + "operator": "wm.operator_presets_cleanup", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "operator", + "type": "STRING" + }, + { + "identifier": "properties", + "type": "COLLECTION" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_operator_presets_cleanup" + }, + { + "operator": "wm.owner_disable", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "owner_id", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_owner_disable" + }, + { + "operator": "wm.owner_enable", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "owner_id", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_owner_enable" + }, + { + "operator": "wm.path_open", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_path_open" + }, + { + "operator": "wm.ply_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_modifiers", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ascii_format", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_attributes", + "type": "BOOLEAN" + }, + { + "identifier": "export_colors", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_normals", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_selected_objects", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_triangulated_mesh", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_uv", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "identifier": "up_axis", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_ply_export" + }, + { + "operator": "wm.ply_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "import_attributes", + "type": "BOOLEAN" + }, + { + "identifier": "import_colors", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "merge_verts", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "identifier": "up_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_ply_import" + }, + { + "operator": "wm.previews_batch_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_intern_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_objects", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scenes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_trusted", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_previews_batch_clear" + }, + { + "operator": "wm.previews_batch_generate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backups", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collections", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_intern_data", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_objects", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scenes", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_trusted", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_previews_batch_generate" + }, + { + "operator": "wm.previews_clear", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "id_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_previews_clear" + }, + { + "operator": "wm.previews_ensure", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_previews_ensure" + }, + { + "operator": "wm.properties_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_properties_add" + }, + { + "operator": "wm.properties_context_change", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "context", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_properties_context_change" + }, + { + "operator": "wm.properties_edit", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "array_length", + "type": "INT" + }, + { + "identifier": "data_path", + "type": "STRING" + }, + { + "arrayLength": 32, + "identifier": "default_bool", + "type": "BOOLEAN" + }, + { + "arrayLength": 32, + "identifier": "default_float", + "type": "FLOAT" + }, + { + "arrayLength": 32, + "identifier": "default_int", + "type": "INT" + }, + { + "identifier": "default_string", + "type": "STRING" + }, + { + "identifier": "description", + "type": "STRING" + }, + { + "identifier": "eval_string", + "type": "STRING" + }, + { + "identifier": "id_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_overridable_library", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "max_float", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "max_int", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "min_float", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "min_int", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "precision", + "type": "INT" + }, + { + "identifier": "property_name", + "type": "STRING" + }, + { + "identifier": "property_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "soft_max_float", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "soft_max_int", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "soft_min_float", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "soft_min_int", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "step_float", + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "step_int", + "type": "INT" + }, + { + "identifier": "subtype", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_soft_limits", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_properties_edit" + }, + { + "operator": "wm.properties_edit_value", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "eval_string", + "type": "STRING" + }, + { + "identifier": "property_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_properties_edit_value" + }, + { + "operator": "wm.properties_remove", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "data_path", + "type": "STRING" + }, + { + "identifier": "property_name", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_properties_remove" + }, + { + "operator": "wm.quit_blender", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_quit_blender" + }, + { + "operator": "wm.radial_control", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "color_path", + "type": "STRING" + }, + { + "identifier": "data_path_primary", + "type": "STRING" + }, + { + "identifier": "data_path_secondary", + "type": "STRING" + }, + { + "identifier": "fill_color_override_path", + "type": "STRING" + }, + { + "identifier": "fill_color_override_test_path", + "type": "STRING" + }, + { + "identifier": "fill_color_path", + "type": "STRING" + }, + { + "identifier": "image_id", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "release_confirm", + "type": "BOOLEAN" + }, + { + "identifier": "rotation_path", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "secondary_tex", + "type": "BOOLEAN" + }, + { + "identifier": "use_secondary", + "type": "STRING" + }, + { + "identifier": "zoom_path", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_radial_control" + }, + { + "operator": "wm.read_factory_settings", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "app_template", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_empty", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factory_startup_app_template_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_read_factory_settings" + }, + { + "operator": "wm.read_factory_userpref", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_factory_startup_app_template_only", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_read_factory_userpref" + }, + { + "operator": "wm.read_history", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_read_history" + }, + { + "operator": "wm.read_homefile", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "app_template", + "type": "STRING" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "load_ui", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_empty", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factory_startup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factory_startup_app_template_only", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_splash", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_read_homefile" + }, + { + "operator": "wm.read_userpref", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_read_userpref" + }, + { + "operator": "wm.recover_auto_save", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_scripts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_recover_auto_save" + }, + { + "operator": "wm.recover_last_session", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_scripts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_recover_last_session" + }, + { + "operator": "wm.redraw_timer", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "iterations", + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "time_limit", + "type": "FLOAT" + }, + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_redraw_timer" + }, + { + "operator": "wm.revert_mainfile", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "use_scripts", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_revert_mainfile" + }, + { + "operator": "wm.save_as_mainfile", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "compress", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "copy", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_remap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_save_modified_images_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_save_as_mainfile" + }, + { + "operator": "wm.save_auto_save", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_save_auto_save" + }, + { + "operator": "wm.save_homefile", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_save_homefile" + }, + { + "operator": "wm.save_mainfile", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "compress", + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "exit", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "incremental", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_remap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_save_modified_images_dialog", + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_save_mainfile" + }, + { + "operator": "wm.save_userpref", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_save_userpref" + }, + { + "operator": "wm.search_menu", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_search_menu" + }, + { + "operator": "wm.search_operator", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_search_operator" + }, + { + "operator": "wm.search_single_menu", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "initial_query", + "type": "STRING" + }, + { + "identifier": "menu_idname", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_search_single_menu" + }, + { + "operator": "wm.set_stereo_3d", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "anaglyph_type", + "type": "ENUM" + }, + { + "identifier": "display_mode", + "type": "ENUM" + }, + { + "identifier": "interlace_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_interlace_swap", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sidebyside_crosseyed", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_set_stereo_3d" + }, + { + "operator": "wm.set_working_color_space", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "convert_colors", + "type": "BOOLEAN" + }, + { + "identifier": "working_space", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_set_working_color_space" + }, + { + "operator": "wm.splash", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_splash" + }, + { + "operator": "wm.splash_about", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_splash_about" + }, + { + "operator": "wm.stl_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_modifiers", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ascii_format", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "identifier": "evaluation_mode", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_selected_objects", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "identifier": "up_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_batch", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_stl_export" + }, + { + "operator": "wm.stl_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "type": "STRING" + }, + { + "identifier": "display_type", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "type": "INT" + }, + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "files", + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "type": "ENUM" + }, + { + "identifier": "up_axis", + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_facet_normal", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_validate", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "type": "BOOLEAN" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_stl_import" + }, + { + "operator": "wm.sysinfo", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_sysinfo" + }, + { + "operator": "wm.tool_set_by_brush_type", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "brush_type", + "type": "STRING" + }, + { + "identifier": "space_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_tool_set_by_brush_type" + }, + { + "operator": "wm.tool_set_by_id", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "as_fallback", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cycle", + "type": "BOOLEAN" + }, + { + "identifier": "name", + "type": "STRING" + }, + { + "identifier": "space_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_tool_set_by_id" + }, + { + "operator": "wm.tool_set_by_index", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "as_fallback", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cycle", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "expand", + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "index", + "type": "INT" + }, + { + "identifier": "space_type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_tool_set_by_index" + }, + { + "operator": "wm.toolbar", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_toolbar" + }, + { + "operator": "wm.toolbar_fallback_pie", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_toolbar_fallback_pie" + }, + { + "operator": "wm.toolbar_prompt", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_toolbar_prompt" + }, + { + "operator": "wm.url_open", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "url", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_url_open" + }, + { + "operator": "wm.url_open_preset", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "type", + "type": "ENUM" + } + ], + "registered": true, + "rnaIdentifier": "WM_OT_url_open_preset" + }, + { + "operator": "wm.window_close", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_window_close" + }, + { + "operator": "wm.window_fullscreen_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_window_fullscreen_toggle" + }, + { + "operator": "wm.window_new", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_window_new" + }, + { + "operator": "wm.window_new_main", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WM_OT_window_new_main" + }, + { + "operator": "workspace.add", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_add" + }, + { + "operator": "workspace.append_activate", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "type": "STRING" + }, + { + "identifier": "idname", + "type": "STRING" + } + ], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_append_activate" + }, + { + "operator": "workspace.delete", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_delete" + }, + { + "operator": "workspace.delete_all_others", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_delete_all_others" + }, + { + "operator": "workspace.duplicate", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_duplicate" + }, + { + "operator": "workspace.reorder_to_back", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_reorder_to_back" + }, + { + "operator": "workspace.reorder_to_front", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_reorder_to_front" + }, + { + "operator": "workspace.scene_pin_toggle", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORKSPACE_OT_scene_pin_toggle" + }, + { + "operator": "world.convert_volume_to_mesh", + "poll": false, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORLD_OT_convert_volume_to_mesh" + }, + { + "operator": "world.new", + "poll": true, + "pollError": null, + "properties": [], + "registered": true, + "rnaIdentifier": "WORLD_OT_new" + } + ], + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "schemaVersion": 1, + "sourceAnchor": "blender-5.2.0/source/blender/editors", + "summary": { + "count": 2486, + "pollFalse": 1820, + "pollTrue": 666, + "pollUnknown": 0, + "registered": 2486 + }, + "task": "M15-01B" +} diff --git a/tests/golden/M15-01B/manifest.json b/tests/golden/M15-01B/manifest.json new file mode 100644 index 00000000..d21e85e8 --- /dev/null +++ b/tests/golden/M15-01B/manifest.json @@ -0,0 +1,40 @@ +{ + "schemaVersion": 1, + "task": "M15-01B", + "parentTask": "M15-01A", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_OPERATOR", + "operation": "BLENDER_OPERATOR_INVENTORY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-01A/manifest.json", + "sha256": "3d1e0ca2344299276e3ef1a3d79141efc3fc5d79257edbf2ce6d679f012986cc" + }, + "generator": { + "path": "tools/web/generate-blender-operator-inventory.py", + "sha256": "5928c2df2074d7b530c173baffc4da2bb0bbb50817ab8b2cdb5f6d43e07b1727" + }, + "checker": { + "path": "tools/web/check-blender-operator-inventory.mjs", + "sha256": "dbf4b64c77750809060e6b3a8eaf87cfd67a904f33949ac631b661153b1f6cde" + }, + "inventory": { + "path": "tests/golden/M15-01B/blender-operator-inventory.json", + "sha256": "dabb774ea808f417a0085528ecc4538bc78f71d06f912a881a9453804597e49a" + }, + "report": { + "path": "tests/golden/M15-01B/operator-inventory-check-report.json", + "sha256": "800102c010be59ec519d2e204aec4a97350fe7ba0f6729f52a8788f4a9bcde31" + }, + "runtime": { + "path": "build_blender_5.2.0/bin/blender", + "sha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-01C" +} diff --git a/tests/golden/M15-01B/operator-inventory-check-report.json b/tests/golden/M15-01B/operator-inventory-check-report.json new file mode 100644 index 00000000..3b095344 --- /dev/null +++ b/tests/golden/M15-01B/operator-inventory-check-report.json @@ -0,0 +1,31 @@ +{ + "schemaVersion": 1, + "task": "M15-01B", + "operation": "BLENDER_OPERATOR_INVENTORY_CHECK", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "count": 2486, + "registered": 2486, + "poll": { + "true": 666, + "false": 1820, + "unknown": 0 + }, + "first": "action.bake_keys", + "last": "world.new", + "inventorySha256": "dabb774ea808f417a0085528ecc4538bc78f71d06f912a881a9453804597e49a", + "nextTask": "M15-01C" +} diff --git a/tests/golden/M15-01C/blender-family-inventory.json b/tests/golden/M15-01C/blender-family-inventory.json new file mode 100644 index 00000000..fc63540c --- /dev/null +++ b/tests/golden/M15-01C/blender-family-inventory.json @@ -0,0 +1,91206 @@ +{ + "constraints": [ + { + "description": "Use transform property of target to look up pose for owner from an Action", + "identifier": "ACTION", + "name": "Action", + "value": 12 + }, + { + "description": "Apply weight-blended transformation from multiple bones like the Armature modifier", + "identifier": "ARMATURE", + "name": "Armature", + "value": 30 + }, + { + "description": "", + "identifier": "CAMERA_SOLVER", + "name": "Camera Solver", + "value": 27 + }, + { + "description": "Make target the 'detachable' parent of owner", + "identifier": "CHILD_OF", + "name": "Child Of", + "value": 1 + }, + { + "description": "Restrict movements to lie along a curve by remapping location along curve's longest axis", + "identifier": "CLAMP_TO", + "name": "Clamp To", + "value": 18 + }, + { + "description": "Copy the location of a target (with an optional offset), so that they move together", + "identifier": "COPY_LOCATION", + "name": "Copy Location", + "value": 9 + }, + { + "description": "Copy the rotation of a target (with an optional offset), so that they rotate together", + "identifier": "COPY_ROTATION", + "name": "Copy Rotation", + "value": 8 + }, + { + "description": "Copy the scale factors of a target (with an optional offset), so that they are scaled by the same amount", + "identifier": "COPY_SCALE", + "name": "Copy Scale", + "value": 10 + }, + { + "description": "Copy all the transformations of a target, so that they move together", + "identifier": "COPY_TRANSFORMS", + "name": "Copy Transforms", + "value": 23 + }, + { + "description": "Point towards a target by performing the smallest rotation necessary", + "identifier": "DAMPED_TRACK", + "name": "Damped Track", + "value": 21 + }, + { + "description": "Use position (and optionally rotation) of target to define a 'wall' or 'floor' that the owner cannot cross", + "identifier": "FLOOR", + "name": "Floor", + "value": 16 + }, + { + "description": "Use to animate an object/bone following a path", + "identifier": "FOLLOW_PATH", + "name": "Follow Path", + "value": 4 + }, + { + "description": "", + "identifier": "FOLLOW_TRACK", + "name": "Follow Track", + "value": 26 + }, + { + "description": "Retrieve transform from target geometry attribute data", + "identifier": "GEOMETRY_ATTRIBUTE", + "name": "Geometry Attribute", + "value": 31 + }, + { + "description": "Control a chain of bones by specifying the endpoint target (Bones only)", + "identifier": "IK", + "name": "Inverse Kinematics", + "value": 3 + }, + { + "description": "Restrict movements to within a certain distance of a target (at the time of constraint evaluation only)", + "identifier": "LIMIT_DISTANCE", + "name": "Limit Distance", + "value": 14 + }, + { + "description": "Restrict movement along each axis within given ranges", + "identifier": "LIMIT_LOCATION", + "name": "Limit Location", + "value": 6 + }, + { + "description": "Restrict rotation along each axis within given ranges", + "identifier": "LIMIT_ROTATION", + "name": "Limit Rotation", + "value": 5 + }, + { + "description": "Restrict scaling along each axis with given ranges", + "identifier": "LIMIT_SCALE", + "name": "Limit Scale", + "value": 7 + }, + { + "description": "Rotate around the specified ('locked') axis to point towards a target", + "identifier": "LOCKED_TRACK", + "name": "Locked Track", + "value": 13 + }, + { + "description": "Compensate for scaling one axis by applying suitable scaling to the other two axes", + "identifier": "MAINTAIN_VOLUME", + "name": "Maintain Volume", + "value": 24 + }, + { + "description": "", + "identifier": "OBJECT_SOLVER", + "name": "Object Solver", + "value": 28 + }, + { + "description": "Change pivot point for transforms (buggy)", + "identifier": "PIVOT", + "name": "Pivot", + "value": 25 + }, + { + "description": "Restrict movements to surface of target mesh", + "identifier": "SHRINKWRAP", + "name": "Shrinkwrap", + "value": 20 + }, + { + "description": "Align chain of bones along a curve (Bones only)", + "identifier": "SPLINE_IK", + "name": "Spline IK", + "value": 22 + }, + { + "description": "Stretch along Y-Axis to point towards a target", + "identifier": "STRETCH_TO", + "name": "Stretch To", + "value": 15 + }, + { + "description": "Legacy tracking constraint prone to twisting artifacts", + "identifier": "TRACK_TO", + "name": "Track To", + "value": 2 + }, + { + "description": "Use one transform property from target to control another (or same) property on owner", + "identifier": "TRANSFORM", + "name": "Transformation", + "value": 19 + }, + { + "description": "Look up the transformation matrix from an external file", + "identifier": "TRANSFORM_CACHE", + "name": "Transform Cache", + "value": 29 + } + ], + "modifiers": [ + { + "description": "Deform the shape using an armature object", + "identifier": "ARMATURE", + "name": "Armature", + "value": 8 + }, + { + "description": "Create copies of the shape with offsets", + "identifier": "ARRAY", + "name": "Array", + "value": 12 + }, + { + "description": "Generate sloped corners by adding geometry to the mesh's edges or vertices", + "identifier": "BEVEL", + "name": "Bevel", + "value": 24 + }, + { + "description": "Use another shape to cut, combine or perform a difference operation", + "identifier": "BOOLEAN", + "name": "Boolean", + "value": 11 + }, + { + "description": "Cause the faces of the mesh object to appear or disappear one after the other over time", + "identifier": "BUILD", + "name": "Build", + "value": 4 + }, + { + "description": "Shift the shape towards a predefined primitive", + "identifier": "CAST", + "name": "Cast", + "value": 17 + }, + { + "description": "Physic simulation for cloth", + "identifier": "CLOTH", + "name": "Cloth", + "value": 22 + }, + { + "description": "For colliders participating in physics simulation, control which level in the modifier stack is used as the collision surface", + "identifier": "COLLISION", + "name": "Collision", + "value": 23 + }, + { + "description": "Smooth the mesh while still preserving the volume", + "identifier": "CORRECTIVE_SMOOTH", + "name": "Smooth Corrective", + "value": 51 + }, + { + "description": "Bend the mesh using a curve object", + "identifier": "CURVE", + "name": "Curve", + "value": 3 + }, + { + "description": "Transfer several types of data (vertex groups, UV maps, vertex colors, custom normals) from one mesh to another", + "identifier": "DATA_TRANSFER", + "name": "Data Transfer", + "value": 49 + }, + { + "description": "Reduce the geometry density", + "identifier": "DECIMATE", + "name": "Decimate", + "value": 6 + }, + { + "description": "Offset vertices based on a texture", + "identifier": "DISPLACE", + "name": "Displace", + "value": 14 + }, + { + "description": "Turn objects into paint canvases and brushes, creating color attributes, image sequences, or displacement", + "identifier": "DYNAMIC_PAINT", + "name": "Dynamic Paint", + "value": 40 + }, + { + "description": "Split away joined faces at the edges", + "identifier": "EDGE_SPLIT", + "name": "Edge Split", + "value": 13 + }, + { + "description": "Break apart the mesh faces and let them follow particles", + "identifier": "EXPLODE", + "name": "Explode", + "value": 21 + }, + { + "description": "Physics simulation for fluids, like water, oil and smoke", + "identifier": "FLUID", + "name": "Fluid", + "value": 56 + }, + { + "description": "Deform stroke points using armature object", + "identifier": "GREASE_PENCIL_ARMATURE", + "name": "Armature", + "value": 79 + }, + { + "description": "Duplicate strokes into an array", + "identifier": "GREASE_PENCIL_ARRAY", + "name": "Array", + "value": 75 + }, + { + "description": "Grease Pencil build modifier", + "identifier": "GREASE_PENCIL_BUILD", + "name": "Build", + "value": 84 + }, + { + "description": "Change hue/saturation/value of the strokes", + "identifier": "GREASE_PENCIL_COLOR", + "name": "Hue/Saturation", + "value": 63 + }, + { + "description": "Generate dot-dash styled strokes", + "identifier": "GREASE_PENCIL_DASH", + "name": "Dot Dash", + "value": 71 + }, + { + "description": "Create an envelope shape", + "identifier": "GREASE_PENCIL_ENVELOPE", + "name": "Envelope", + "value": 81 + }, + { + "description": "Deform stroke points using objects", + "identifier": "GREASE_PENCIL_HOOK", + "name": "Hook", + "value": 77 + }, + { + "description": "Deform strokes using a lattice object", + "identifier": "GREASE_PENCIL_LATTICE", + "name": "Lattice", + "value": 70 + }, + { + "description": "Grease Pencil length modifier", + "identifier": "GREASE_PENCIL_LENGTH", + "name": "Length", + "value": 73 + }, + { + "description": "Duplicate strokes like a mirror", + "identifier": "GREASE_PENCIL_MIRROR", + "name": "Mirror", + "value": 68 + }, + { + "description": "Generate multiple strokes around original strokes", + "identifier": "GREASE_PENCIL_MULTIPLY", + "name": "Multiple Strokes", + "value": 72 + }, + { + "description": "Generate noise wobble in Grease Pencil strokes", + "identifier": "GREASE_PENCIL_NOISE", + "name": "Noise", + "value": 67 + }, + { + "description": "Change stroke location, rotation, or scale", + "identifier": "GREASE_PENCIL_OFFSET", + "name": "Offset", + "value": 66 + }, + { + "description": "Change the opacity of the strokes", + "identifier": "GREASE_PENCIL_OPACITY", + "name": "Opacity", + "value": 61 + }, + { + "description": "Convert stroke to outline", + "identifier": "GREASE_PENCIL_OUTLINE", + "name": "Outline", + "value": 82 + }, + { + "description": "Project the shape onto another object", + "identifier": "GREASE_PENCIL_SHRINKWRAP", + "name": "Shrinkwrap", + "value": 83 + }, + { + "description": "Simplify stroke reducing number of points", + "identifier": "GREASE_PENCIL_SIMPLIFY", + "name": "Simplify", + "value": 85 + }, + { + "description": "Smooth Grease Pencil strokes", + "identifier": "GREASE_PENCIL_SMOOTH", + "name": "Smooth", + "value": 65 + }, + { + "description": "Grease Pencil subdivide modifier", + "identifier": "GREASE_PENCIL_SUBDIV", + "name": "Subdivide", + "value": 62 + }, + { + "description": "Change stroke UV texture values", + "identifier": "GREASE_PENCIL_TEXTURE", + "name": "Texture Mapping", + "value": 86 + }, + { + "description": "Change stroke thickness", + "identifier": "GREASE_PENCIL_THICKNESS", + "name": "Thickness", + "value": 69 + }, + { + "description": "Offset keyframes", + "identifier": "GREASE_PENCIL_TIME", + "name": "Time Offset", + "value": 80 + }, + { + "description": "Tint the color of the strokes", + "identifier": "GREASE_PENCIL_TINT", + "name": "Tint", + "value": 64 + }, + { + "description": "Generate vertex weights based on stroke angle", + "identifier": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", + "name": "Vertex Weight Angle", + "value": 74 + }, + { + "description": "Generate vertex weights based on distance to object", + "identifier": "GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", + "name": "Vertex Weight Proximity", + "value": 76 + }, + { + "description": "Deform specific points using another object", + "identifier": "HOOK", + "name": "Hook", + "value": 9 + }, + { + "description": "Deform based a series of anchor points", + "identifier": "LAPLACIANDEFORM", + "name": "Laplacian Deform", + "value": 47 + }, + { + "description": "Reduce the noise on a mesh surface with minimal changes to its shape", + "identifier": "LAPLACIANSMOOTH", + "name": "Smooth Laplacian", + "value": 43 + }, + { + "description": "Deform using the shape of a lattice object", + "identifier": "LATTICE", + "name": "Lattice", + "value": 2 + }, + { + "description": "Generate Line Art from scene geometries", + "identifier": "LINEART", + "name": "Line Art", + "value": 78 + }, + { + "description": "Dynamically hide vertices based on a vertex group or armature", + "identifier": "MASK", + "name": "Mask", + "value": 27 + }, + { + "description": "Deform the mesh using an external frame-by-frame vertex transform cache", + "identifier": "MESH_CACHE", + "name": "Mesh Cache", + "value": 46 + }, + { + "description": "Deform using a different mesh, which acts as a deformation cage", + "identifier": "MESH_DEFORM", + "name": "Mesh Deform", + "value": 18 + }, + { + "description": "Deform the mesh or curve using an external mesh cache in Alembic format", + "identifier": "MESH_SEQUENCE_CACHE", + "name": "Mesh Sequence Cache", + "value": 52 + }, + { + "description": "", + "identifier": "MESH_TO_VOLUME", + "name": "Mesh to Volume", + "value": 58 + }, + { + "description": "Mirror along the local X, Y and/or Z axes, over the object origin", + "identifier": "MIRROR", + "name": "Mirror", + "value": 5 + }, + { + "description": "Subdivide the mesh in a way that allows editing the higher subdivision levels", + "identifier": "MULTIRES", + "name": "Multiresolution", + "value": 29 + }, + { + "description": "", + "identifier": "NODES", + "name": "Geometry Nodes", + "value": 57 + }, + { + "description": "Modify the direction of the surface normals", + "identifier": "NORMAL_EDIT", + "name": "Normal Edit", + "value": 50 + }, + { + "description": "Generate a moving ocean surface", + "identifier": "OCEAN", + "name": "Ocean", + "value": 39 + }, + { + "description": "Duplicate mesh at the location of particles", + "identifier": "PARTICLE_INSTANCE", + "name": "Particle Instance", + "value": 20 + }, + { + "description": "Spawn particles from the shape", + "identifier": "PARTICLE_SYSTEM", + "name": "Particle System", + "value": 19 + }, + { + "description": "Generate new mesh topology based on the current shape", + "identifier": "REMESH", + "name": "Remesh", + "value": 41 + }, + { + "description": "Lathe around an axis, treating the input mesh as a profile", + "identifier": "SCREW", + "name": "Screw", + "value": 34 + }, + { + "description": "Project the shape onto another object", + "identifier": "SHRINKWRAP", + "name": "Shrinkwrap", + "value": 25 + }, + { + "description": "Deform the shape by twisting, bending, tapering or stretching", + "identifier": "SIMPLE_DEFORM", + "name": "Simple Deform", + "value": 28 + }, + { + "description": "Create a solid shape from vertices and edges, using the vertex radius to define the thickness", + "identifier": "SKIN", + "name": "Skin", + "value": 42 + }, + { + "description": "Smooth the mesh by flattening the angles between adjacent faces", + "identifier": "SMOOTH", + "name": "Smooth", + "value": 16 + }, + { + "description": "Simulate soft deformable objects", + "identifier": "SOFT_BODY", + "name": "Soft Body", + "value": 10 + }, + { + "description": "Make the surface thick", + "identifier": "SOLIDIFY", + "name": "Solidify", + "value": 33 + }, + { + "description": "Split the faces into smaller parts, giving it a smoother appearance", + "identifier": "SUBSURF", + "name": "Subdivision Surface", + "value": 1 + }, + { + "description": "", + "identifier": "SURFACE", + "name": "Surface", + "value": 30 + }, + { + "description": "Transfer motion from another mesh", + "identifier": "SURFACE_DEFORM", + "name": "Surface Deform", + "value": 53 + }, + { + "description": "Convert all polygons to triangles", + "identifier": "TRIANGULATE", + "name": "Triangulate", + "value": 44 + }, + { + "description": "Project the UV map coordinates from the negative Z axis of another object", + "identifier": "UV_PROJECT", + "name": "UV Project", + "value": 15 + }, + { + "description": "Transform the UV map using the difference between two objects", + "identifier": "UV_WARP", + "name": "UV Warp", + "value": 45 + }, + { + "description": "Modify of the weights of a vertex group", + "identifier": "VERTEX_WEIGHT_EDIT", + "name": "Vertex Weight Edit", + "value": 36 + }, + { + "description": "Mix the weights of two vertex groups", + "identifier": "VERTEX_WEIGHT_MIX", + "name": "Vertex Weight Mix", + "value": 37 + }, + { + "description": "Set the vertex group weights based on the distance to another target object", + "identifier": "VERTEX_WEIGHT_PROXIMITY", + "name": "Vertex Weight Proximity", + "value": 38 + }, + { + "description": "Deform volume based on noise or other vector fields", + "identifier": "VOLUME_DISPLACE", + "name": "Volume Displace", + "value": 59 + }, + { + "description": "", + "identifier": "VOLUME_TO_MESH", + "name": "Volume to Mesh", + "value": 60 + }, + { + "description": "Warp parts of a mesh to a new location in a very flexible way thanks to 2 specified objects", + "identifier": "WARP", + "name": "Warp", + "value": 35 + }, + { + "description": "Adds a ripple-like motion to an object's geometry", + "identifier": "WAVE", + "name": "Wave", + "value": 7 + }, + { + "description": "Modify the direction of the surface normals using a weighting method", + "identifier": "WEIGHTED_NORMAL", + "name": "Weighted Normal", + "value": 54 + }, + { + "description": "Find groups of vertices closer than dist and merge them together", + "identifier": "WELD", + "name": "Weld", + "value": 55 + }, + { + "description": "Convert faces into thickened edges", + "identifier": "WIREFRAME", + "name": "Wireframe", + "value": 48 + } + ], + "nextTask": "M15-01D", + "nodes": [ + { + "className": "CompositorNodeAlphaOver", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeAlphaOver" + }, + { + "className": "CompositorNodeAntiAliasing", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeAntiAliasing" + }, + { + "className": "CompositorNodeBilateralblur", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBilateralblur" + }, + { + "className": "CompositorNodeBlankImage", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBlankImage" + }, + { + "className": "CompositorNodeBlur", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBlur" + }, + { + "className": "CompositorNodeBokehBlur", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBokehBlur" + }, + { + "className": "CompositorNodeBokehImage", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBokehImage" + }, + { + "className": "CompositorNodeBoxMask", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBoxMask" + }, + { + "className": "CompositorNodeBrightContrast", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeBrightContrast" + }, + { + "className": "CompositorNodeChannelMatte", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeChannelMatte" + }, + { + "className": "CompositorNodeChromaMatte", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeChromaMatte" + }, + { + "className": "CompositorNodeColorBalance", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "input_whitepoint", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 3, + "identifier": "output_whitepoint", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeColorBalance" + }, + { + "className": "CompositorNodeColorCorrection", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeColorCorrection" + }, + { + "className": "CompositorNodeColorMatte", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeColorMatte" + }, + { + "className": "CompositorNodeColorSpill", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeColorSpill" + }, + { + "className": "CompositorNodeCombineColor", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "ycc_mode", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "CompositorNodeCombineColor" + }, + { + "className": "CompositorNodeConvertColorSpace", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "from_color_space", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "to_color_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeConvertColorSpace" + }, + { + "className": "CompositorNodeConvertToDisplay", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "display_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "view_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeConvertToDisplay" + }, + { + "className": "CompositorNodeConvolve", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeConvolve" + }, + { + "className": "CompositorNodeCornerPin", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeCornerPin" + }, + { + "className": "CompositorNodeCrop", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeCrop" + }, + { + "className": "CompositorNodeCryptomatte", + "family": "Compositor", + "properties": [ + { + "arrayLength": 3, + "identifier": "add", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "matte_id", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "remove", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeCryptomatte" + }, + { + "className": "CompositorNodeCryptomatteV2", + "family": "Compositor", + "properties": [ + { + "arrayLength": 3, + "identifier": "add", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "entries", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "frame_duration", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_offset", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "has_layers", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_views", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "image", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "layer", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "layer_name", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "matte_id", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "remove", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "scene", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "source", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_auto_refresh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "view", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeCryptomatteV2" + }, + { + "className": "CompositorNodeCurveRGB", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeCurveRGB" + }, + { + "className": "CompositorNodeDBlur", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDBlur" + }, + { + "className": "CompositorNodeDefocus", + "family": "Compositor", + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "blur_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bokeh", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "f_stop", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "scene", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_zbuffer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "z_scale", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDefocus" + }, + { + "className": "CompositorNodeDenoise", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDenoise" + }, + { + "className": "CompositorNodeDespeckle", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDespeckle" + }, + { + "className": "CompositorNodeDiffMatte", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDiffMatte" + }, + { + "className": "CompositorNodeDilateErode", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDilateErode" + }, + { + "className": "CompositorNodeDisplace", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDisplace" + }, + { + "className": "CompositorNodeDistanceMatte", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDistanceMatte" + }, + { + "className": "CompositorNodeDoubleEdgeMask", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeDoubleEdgeMask" + }, + { + "className": "CompositorNodeEllipseMask", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeEllipseMask" + }, + { + "className": "CompositorNodeExposure", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeExposure" + }, + { + "className": "CompositorNodeFilter", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeFilter" + }, + { + "className": "CompositorNodeFlip", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeFlip" + }, + { + "className": "CompositorNodeGlare", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeGlare" + }, + { + "className": "CompositorNodeGroup", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "node_tree", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeGroup" + }, + { + "className": "CompositorNodeHueCorrect", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeHueCorrect" + }, + { + "className": "CompositorNodeHueSat", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeHueSat" + }, + { + "className": "CompositorNodeIDMask", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeIDMask" + }, + { + "className": "CompositorNodeImage", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_duration", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_offset", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "has_layers", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_views", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "image", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "layer", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_auto_refresh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "view", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeImage" + }, + { + "className": "CompositorNodeImageCoordinates", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeImageCoordinates" + }, + { + "className": "CompositorNodeImageInfo", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeImageInfo" + }, + { + "className": "CompositorNodeInpaint", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeInpaint" + }, + { + "className": "CompositorNodeInvert", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeInvert" + }, + { + "className": "CompositorNodeKeying", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeKeying" + }, + { + "className": "CompositorNodeKeyingScreen", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "tracking_object", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeKeyingScreen" + }, + { + "className": "CompositorNodeKuwahara", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeKuwahara" + }, + { + "className": "CompositorNodeLensdist", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeLensdist" + }, + { + "className": "CompositorNodeLevels", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeLevels" + }, + { + "className": "CompositorNodeLumaMatte", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeLumaMatte" + }, + { + "className": "CompositorNodeMapUV", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeMapUV" + }, + { + "className": "CompositorNodeMask", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mask", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeMask" + }, + { + "className": "CompositorNodeMaskToSDF", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeMaskToSDF" + }, + { + "className": "CompositorNodeMovieClip", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeMovieClip" + }, + { + "className": "CompositorNodeMovieDistortion", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeMovieDistortion" + }, + { + "className": "CompositorNodeNormal", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeNormal" + }, + { + "className": "CompositorNodeNormalize", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeNormalize" + }, + { + "className": "CompositorNodeOutputFile", + "family": "Compositor", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_item_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "file_name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "file_output_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "format", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "save_as_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_file_extension", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeOutputFile" + }, + { + "className": "CompositorNodePixelate", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodePixelate" + }, + { + "className": "CompositorNodePlaneTrackDeform", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "plane_track_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "tracking_object", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodePlaneTrackDeform" + }, + { + "className": "CompositorNodePosterize", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodePosterize" + }, + { + "className": "CompositorNodePremulKey", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodePremulKey" + }, + { + "className": "CompositorNodeRGB", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeRGB" + }, + { + "className": "CompositorNodeRGBToBW", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeRGBToBW" + }, + { + "className": "CompositorNodeRLayers", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "layer", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "scene", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeRLayers" + }, + { + "className": "CompositorNodeRelativeToPixel", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "reference_dimension", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeRelativeToPixel" + }, + { + "className": "CompositorNodeRotate", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeRotate" + }, + { + "className": "CompositorNodeScale", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeScale" + }, + { + "className": "CompositorNodeSceneTime", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeSceneTime" + }, + { + "className": "CompositorNodeSeparateColor", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "ycc_mode", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "CompositorNodeSeparateColor" + }, + { + "className": "CompositorNodeSequencerStripInfo", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeSequencerStripInfo" + }, + { + "className": "CompositorNodeSetAlpha", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeSetAlpha" + }, + { + "className": "CompositorNodeSplit", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeSplit" + }, + { + "className": "CompositorNodeStabilize", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeStabilize" + }, + { + "className": "CompositorNodeStringToImage", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeStringToImage" + }, + { + "className": "CompositorNodeSwitch", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeSwitch" + }, + { + "className": "CompositorNodeSwitchView", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeSwitchView" + }, + { + "className": "CompositorNodeTime", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "curve", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeTime" + }, + { + "className": "CompositorNodeTonemap", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeTonemap" + }, + { + "className": "CompositorNodeTrackPos", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "track_name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "tracking_object", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeTrackPos" + }, + { + "className": "CompositorNodeTransform", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeTransform" + }, + { + "className": "CompositorNodeTranslate", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeTranslate" + }, + { + "className": "CompositorNodeVecBlur", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeVecBlur" + }, + { + "className": "CompositorNodeViewer", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "ui_shortcut", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeViewer" + }, + { + "className": "CompositorNodeZcombine", + "family": "Compositor", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "CompositorNodeZcombine" + }, + { + "className": "GeometryNodeAccumulateField", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeAccumulateField" + }, + { + "className": "GeometryNodeAttributeDomainSize", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "component", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeAttributeDomainSize" + }, + { + "className": "GeometryNodeAttributeStatistic", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeAttributeStatistic" + }, + { + "className": "GeometryNodeBake", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bake_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeBake" + }, + { + "className": "GeometryNodeBlurAttribute", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeBlurAttribute" + }, + { + "className": "GeometryNodeBoneInfo", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "transform_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeBoneInfo" + }, + { + "className": "GeometryNodeBoundBox", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeBoundBox" + }, + { + "className": "GeometryNodeCameraInfo", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCameraInfo" + }, + { + "className": "GeometryNodeCaptureAttribute", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "capture_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCaptureAttribute" + }, + { + "className": "GeometryNodeClosureToList", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "list_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeClosureToList" + }, + { + "className": "GeometryNodeClusterByConnected", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeClusterByConnected" + }, + { + "className": "GeometryNodeClusterByDistance", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeClusterByDistance" + }, + { + "className": "GeometryNodeCollectionChildren", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCollectionChildren" + }, + { + "className": "GeometryNodeCollectionInfo", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "transform_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCollectionInfo" + }, + { + "className": "GeometryNodeConvexHull", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeConvexHull" + }, + { + "className": "GeometryNodeCornersOfEdge", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCornersOfEdge" + }, + { + "className": "GeometryNodeCornersOfFace", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCornersOfFace" + }, + { + "className": "GeometryNodeCornersOfVertex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCornersOfVertex" + }, + { + "className": "GeometryNodeCubeGridTopology", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCubeGridTopology" + }, + { + "className": "GeometryNodeCurveArc", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveArc" + }, + { + "className": "GeometryNodeCurveEndpointSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveEndpointSelection" + }, + { + "className": "GeometryNodeCurveHandleTypeSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "handle_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveHandleTypeSelection" + }, + { + "className": "GeometryNodeCurveLength", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveLength" + }, + { + "className": "GeometryNodeCurveOfPoint", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveOfPoint" + }, + { + "className": "GeometryNodeCurvePrimitiveBezierSegment", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurvePrimitiveBezierSegment" + }, + { + "className": "GeometryNodeCurvePrimitiveCircle", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurvePrimitiveCircle" + }, + { + "className": "GeometryNodeCurvePrimitiveLine", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurvePrimitiveLine" + }, + { + "className": "GeometryNodeCurvePrimitiveQuadrilateral", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurvePrimitiveQuadrilateral" + }, + { + "className": "GeometryNodeCurveQuadraticBezier", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveQuadraticBezier" + }, + { + "className": "GeometryNodeCurveSetHandles", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "handle_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveSetHandles" + }, + { + "className": "GeometryNodeCurveSpiral", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveSpiral" + }, + { + "className": "GeometryNodeCurveSplineType", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "spline_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveSplineType" + }, + { + "className": "GeometryNodeCurveStar", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveStar" + }, + { + "className": "GeometryNodeCurveToMesh", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveToMesh" + }, + { + "className": "GeometryNodeCurveToPoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurveToPoints" + }, + { + "className": "GeometryNodeCurvesToGreasePencil", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeCurvesToGreasePencil" + }, + { + "className": "GeometryNodeDeformCurvesOnSurface", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDeformCurvesOnSurface" + }, + { + "className": "GeometryNodeDeleteGeometry", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDeleteGeometry" + }, + { + "className": "GeometryNodeDistributePointsInGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDistributePointsInGrid" + }, + { + "className": "GeometryNodeDistributePointsInVolume", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDistributePointsInVolume" + }, + { + "className": "GeometryNodeDistributePointsOnFaces", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribute_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_legacy_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDistributePointsOnFaces" + }, + { + "className": "GeometryNodeDualMesh", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDualMesh" + }, + { + "className": "GeometryNodeDuplicateElements", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeDuplicateElements" + }, + { + "className": "GeometryNodeEdgePathsToCurves", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeEdgePathsToCurves" + }, + { + "className": "GeometryNodeEdgePathsToSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeEdgePathsToSelection" + }, + { + "className": "GeometryNodeEdgesOfCorner", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeEdgesOfCorner" + }, + { + "className": "GeometryNodeEdgesOfVertex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeEdgesOfVertex" + }, + { + "className": "GeometryNodeEdgesToFaceGroups", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeEdgesToFaceGroups" + }, + { + "className": "GeometryNodeExtrudeMesh", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeExtrudeMesh" + }, + { + "className": "GeometryNodeFaceOfCorner", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFaceOfCorner" + }, + { + "className": "GeometryNodeFieldAtIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldAtIndex" + }, + { + "className": "GeometryNodeFieldAverage", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldAverage" + }, + { + "className": "GeometryNodeFieldMinAndMax", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldMinAndMax" + }, + { + "className": "GeometryNodeFieldOnDomain", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldOnDomain" + }, + { + "className": "GeometryNodeFieldToGrid", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "grid_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldToGrid" + }, + { + "className": "GeometryNodeFieldToList", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "list_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldToList" + }, + { + "className": "GeometryNodeFieldVariance", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldVariance" + }, + { + "className": "GeometryNodeFillCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFillCurve" + }, + { + "className": "GeometryNodeFilletCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFilletCurve" + }, + { + "className": "GeometryNodeFilterList", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFilterList" + }, + { + "className": "GeometryNodeFlipFaces", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFlipFaces" + }, + { + "className": "GeometryNodeForeachGeometryElementInput", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "paired_output", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeForeachGeometryElementInput" + }, + { + "className": "GeometryNodeForeachGeometryElementOutput", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_generation_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "active_input_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "active_main_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "generation_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "input_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "inspection_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "main_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeForeachGeometryElementOutput" + }, + { + "className": "GeometryNodeGeometryToInstance", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGeometryToInstance" + }, + { + "className": "GeometryNodeGetAttributeNames", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGetAttributeNames" + }, + { + "className": "GeometryNodeGetGeometryBundle", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGetGeometryBundle" + }, + { + "className": "GeometryNodeGetGeometryComponent", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGetGeometryComponent" + }, + { + "className": "GeometryNodeGetNamedGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGetNamedGrid" + }, + { + "className": "GeometryNodeGizmoDial", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_id", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGizmoDial" + }, + { + "className": "GeometryNodeGizmoLinear", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_id", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "draw_style", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGizmoLinear" + }, + { + "className": "GeometryNodeGizmoTransform", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_translation_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_translation_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_translation_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGizmoTransform" + }, + { + "className": "GeometryNodeGreasePencilToCurves", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGreasePencilToCurves" + }, + { + "className": "GeometryNodeGridAdvect", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridAdvect" + }, + { + "className": "GeometryNodeGridClip", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridClip" + }, + { + "className": "GeometryNodeGridCurl", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridCurl" + }, + { + "className": "GeometryNodeGridDilateAndErode", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridDilateAndErode" + }, + { + "className": "GeometryNodeGridDivergence", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridDivergence" + }, + { + "className": "GeometryNodeGridGradient", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridGradient" + }, + { + "className": "GeometryNodeGridInfo", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridInfo" + }, + { + "className": "GeometryNodeGridLaplacian", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridLaplacian" + }, + { + "className": "GeometryNodeGridMean", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridMean" + }, + { + "className": "GeometryNodeGridMedian", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridMedian" + }, + { + "className": "GeometryNodeGridPrune", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridPrune" + }, + { + "className": "GeometryNodeGridToMesh", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridToMesh" + }, + { + "className": "GeometryNodeGridToPoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridToPoints" + }, + { + "className": "GeometryNodeGridVoxelize", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGridVoxelize" + }, + { + "className": "GeometryNodeGroup", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "node_tree", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeGroup" + }, + { + "className": "GeometryNodeImageInfo", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImageInfo" + }, + { + "className": "GeometryNodeImageTexture", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "extension", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "interpolation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImageTexture" + }, + { + "className": "GeometryNodeImportCSV", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImportCSV" + }, + { + "className": "GeometryNodeImportOBJ", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImportOBJ" + }, + { + "className": "GeometryNodeImportPLY", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImportPLY" + }, + { + "className": "GeometryNodeImportSTL", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImportSTL" + }, + { + "className": "GeometryNodeImportText", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImportText" + }, + { + "className": "GeometryNodeImportVDB", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeImportVDB" + }, + { + "className": "GeometryNodeIndexOfNearest", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeIndexOfNearest" + }, + { + "className": "GeometryNodeIndexSwitch", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "index_switch_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeIndexSwitch" + }, + { + "className": "GeometryNodeInputActiveCamera", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputActiveCamera" + }, + { + "className": "GeometryNodeInputCollection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputCollection" + }, + { + "className": "GeometryNodeInputCurveHandlePositions", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputCurveHandlePositions" + }, + { + "className": "GeometryNodeInputCurveTilt", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputCurveTilt" + }, + { + "className": "GeometryNodeInputEdgeSmooth", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputEdgeSmooth" + }, + { + "className": "GeometryNodeInputFont", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "font", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputFont" + }, + { + "className": "GeometryNodeInputID", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputID" + }, + { + "className": "GeometryNodeInputImage", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "image", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputImage" + }, + { + "className": "GeometryNodeInputIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputIndex" + }, + { + "className": "GeometryNodeInputInstanceBounds", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputInstanceBounds" + }, + { + "className": "GeometryNodeInputInstanceReference", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputInstanceReference" + }, + { + "className": "GeometryNodeInputInstanceRotation", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputInstanceRotation" + }, + { + "className": "GeometryNodeInputInstanceScale", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputInstanceScale" + }, + { + "className": "GeometryNodeInputMaterial", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "material", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMaterial" + }, + { + "className": "GeometryNodeInputMaterialIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMaterialIndex" + }, + { + "className": "GeometryNodeInputMeshEdgeAngle", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshEdgeAngle" + }, + { + "className": "GeometryNodeInputMeshEdgeNeighbors", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshEdgeNeighbors" + }, + { + "className": "GeometryNodeInputMeshEdgeVertices", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshEdgeVertices" + }, + { + "className": "GeometryNodeInputMeshFaceArea", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshFaceArea" + }, + { + "className": "GeometryNodeInputMeshFaceIsPlanar", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshFaceIsPlanar" + }, + { + "className": "GeometryNodeInputMeshFaceNeighbors", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshFaceNeighbors" + }, + { + "className": "GeometryNodeInputMeshIsland", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshIsland" + }, + { + "className": "GeometryNodeInputMeshVertexNeighbors", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputMeshVertexNeighbors" + }, + { + "className": "GeometryNodeInputNamedAttribute", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputNamedAttribute" + }, + { + "className": "GeometryNodeInputNamedLayerSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputNamedLayerSelection" + }, + { + "className": "GeometryNodeInputNormal", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "legacy_corner_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputNormal" + }, + { + "className": "GeometryNodeInputObject", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputObject" + }, + { + "className": "GeometryNodeInputPosition", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputPosition" + }, + { + "className": "GeometryNodeInputRadius", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputRadius" + }, + { + "className": "GeometryNodeInputSceneTime", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputSceneTime" + }, + { + "className": "GeometryNodeInputShadeSmooth", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputShadeSmooth" + }, + { + "className": "GeometryNodeInputShortestEdgePaths", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputShortestEdgePaths" + }, + { + "className": "GeometryNodeInputSplineCyclic", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputSplineCyclic" + }, + { + "className": "GeometryNodeInputSplineResolution", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputSplineResolution" + }, + { + "className": "GeometryNodeInputTangent", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputTangent" + }, + { + "className": "GeometryNodeInputVoxelIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInputVoxelIndex" + }, + { + "className": "GeometryNodeInstanceOnPoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInstanceOnPoints" + }, + { + "className": "GeometryNodeInstanceTransform", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInstanceTransform" + }, + { + "className": "GeometryNodeInstancesToPoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInstancesToPoints" + }, + { + "className": "GeometryNodeInterpolateCurves", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeInterpolateCurves" + }, + { + "className": "GeometryNodeIsViewport", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeIsViewport" + }, + { + "className": "GeometryNodeJoinGeometry", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeJoinGeometry" + }, + { + "className": "GeometryNodeListGetItem", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "structure_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeListGetItem" + }, + { + "className": "GeometryNodeListLength", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeListLength" + }, + { + "className": "GeometryNodeMaterialSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMaterialSelection" + }, + { + "className": "GeometryNodeMenuSwitch", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "enum_definition", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "enum_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMenuSwitch" + }, + { + "className": "GeometryNodeMergeByDistance", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMergeByDistance" + }, + { + "className": "GeometryNodeMergeLayers", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMergeLayers" + }, + { + "className": "GeometryNodeMergePoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMergePoints" + }, + { + "className": "GeometryNodeMeshBevel", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshBevel" + }, + { + "className": "GeometryNodeMeshBoolean", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "operation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "solver", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshBoolean" + }, + { + "className": "GeometryNodeMeshCircle", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "fill_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshCircle" + }, + { + "className": "GeometryNodeMeshCone", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "fill_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshCone" + }, + { + "className": "GeometryNodeMeshCube", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshCube" + }, + { + "className": "GeometryNodeMeshCylinder", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "fill_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshCylinder" + }, + { + "className": "GeometryNodeMeshFaceSetBoundaries", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshFaceSetBoundaries" + }, + { + "className": "GeometryNodeMeshGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshGrid" + }, + { + "className": "GeometryNodeMeshIcoSphere", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshIcoSphere" + }, + { + "className": "GeometryNodeMeshLine", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "count_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshLine" + }, + { + "className": "GeometryNodeMeshToCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshToCurve" + }, + { + "className": "GeometryNodeMeshToDensityGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshToDensityGrid" + }, + { + "className": "GeometryNodeMeshToPoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshToPoints" + }, + { + "className": "GeometryNodeMeshToSDFGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshToSDFGrid" + }, + { + "className": "GeometryNodeMeshToVolume", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshToVolume" + }, + { + "className": "GeometryNodeMeshUVSphere", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeMeshUVSphere" + }, + { + "className": "GeometryNodeObjectInfo", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "transform_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeObjectInfo" + }, + { + "className": "GeometryNodeOffsetCornerInFace", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeOffsetCornerInFace" + }, + { + "className": "GeometryNodeOffsetPointInCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeOffsetPointInCurve" + }, + { + "className": "GeometryNodePoints", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodePoints" + }, + { + "className": "GeometryNodePointsOfCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodePointsOfCurve" + }, + { + "className": "GeometryNodePointsToCurves", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodePointsToCurves" + }, + { + "className": "GeometryNodePointsToSDFGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodePointsToSDFGrid" + }, + { + "className": "GeometryNodePointsToVertices", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodePointsToVertices" + }, + { + "className": "GeometryNodePointsToVolume", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodePointsToVolume" + }, + { + "className": "GeometryNodeProximity", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "target_element", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeProximity" + }, + { + "className": "GeometryNodeRaycast", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRaycast" + }, + { + "className": "GeometryNodeRealizeInstances", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "realize_to_point_domain", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRealizeInstances" + }, + { + "className": "GeometryNodeRemoveAttribute", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRemoveAttribute" + }, + { + "className": "GeometryNodeRenameAttribute", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRenameAttribute" + }, + { + "className": "GeometryNodeRepeatInput", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "paired_output", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRepeatInput" + }, + { + "className": "GeometryNodeRepeatOutput", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "inspection_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "repeat_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRepeatOutput" + }, + { + "className": "GeometryNodeReplaceMaterial", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeReplaceMaterial" + }, + { + "className": "GeometryNodeResampleCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "keep_last_segment", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeResampleCurve" + }, + { + "className": "GeometryNodeReverseCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeReverseCurve" + }, + { + "className": "GeometryNodeRotateInstances", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeRotateInstances" + }, + { + "className": "GeometryNodeSDFGridBoolean", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "operation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridBoolean" + }, + { + "className": "GeometryNodeSDFGridFillet", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridFillet" + }, + { + "className": "GeometryNodeSDFGridLaplacian", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridLaplacian" + }, + { + "className": "GeometryNodeSDFGridMean", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridMean" + }, + { + "className": "GeometryNodeSDFGridMeanCurvature", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridMeanCurvature" + }, + { + "className": "GeometryNodeSDFGridMedian", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridMedian" + }, + { + "className": "GeometryNodeSDFGridOffset", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSDFGridOffset" + }, + { + "className": "GeometryNodeSampleCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_all_curves", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleCurve" + }, + { + "className": "GeometryNodeSampleGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleGrid" + }, + { + "className": "GeometryNodeSampleGridIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleGridIndex" + }, + { + "className": "GeometryNodeSampleIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleIndex" + }, + { + "className": "GeometryNodeSampleNearest", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleNearest" + }, + { + "className": "GeometryNodeSampleNearestSurface", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleNearestSurface" + }, + { + "className": "GeometryNodeSampleSoundFrequencies", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleSoundFrequencies" + }, + { + "className": "GeometryNodeSampleUVSurface", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSampleUVSurface" + }, + { + "className": "GeometryNodeScaleElements", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeScaleElements" + }, + { + "className": "GeometryNodeScaleInstances", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeScaleInstances" + }, + { + "className": "GeometryNodeSelfObject", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSelfObject" + }, + { + "className": "GeometryNodeSeparateComponents", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSeparateComponents" + }, + { + "className": "GeometryNodeSeparateGeometry", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSeparateGeometry" + }, + { + "className": "GeometryNodeSetCurveHandlePositions", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetCurveHandlePositions" + }, + { + "className": "GeometryNodeSetCurveNormal", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetCurveNormal" + }, + { + "className": "GeometryNodeSetCurveRadius", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetCurveRadius" + }, + { + "className": "GeometryNodeSetCurveTilt", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetCurveTilt" + }, + { + "className": "GeometryNodeSetGeometryBundle", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGeometryBundle" + }, + { + "className": "GeometryNodeSetGeometryName", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGeometryName" + }, + { + "className": "GeometryNodeSetGreasePencilColor", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGreasePencilColor" + }, + { + "className": "GeometryNodeSetGreasePencilDepth", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "depth_order", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGreasePencilDepth" + }, + { + "className": "GeometryNodeSetGreasePencilSoftness", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGreasePencilSoftness" + }, + { + "className": "GeometryNodeSetGridBackground", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGridBackground" + }, + { + "className": "GeometryNodeSetGridTransform", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetGridTransform" + }, + { + "className": "GeometryNodeSetID", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetID" + }, + { + "className": "GeometryNodeSetInstanceTransform", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetInstanceTransform" + }, + { + "className": "GeometryNodeSetMaterial", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetMaterial" + }, + { + "className": "GeometryNodeSetMaterialIndex", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetMaterialIndex" + }, + { + "className": "GeometryNodeSetMeshNormal", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetMeshNormal" + }, + { + "className": "GeometryNodeSetNURBSOrder", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetNURBSOrder" + }, + { + "className": "GeometryNodeSetNURBSWeight", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetNURBSWeight" + }, + { + "className": "GeometryNodeSetPointRadius", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetPointRadius" + }, + { + "className": "GeometryNodeSetPosition", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetPosition" + }, + { + "className": "GeometryNodeSetShadeSmooth", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetShadeSmooth" + }, + { + "className": "GeometryNodeSetSplineCyclic", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetSplineCyclic" + }, + { + "className": "GeometryNodeSetSplineResolution", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSetSplineResolution" + }, + { + "className": "GeometryNodeSimulationInput", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "paired_output", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSimulationInput" + }, + { + "className": "GeometryNodeSimulationOutput", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "state_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSimulationOutput" + }, + { + "className": "GeometryNodeSortElements", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSortElements" + }, + { + "className": "GeometryNodeSortList", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "socket_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSortList" + }, + { + "className": "GeometryNodeSplineLength", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSplineLength" + }, + { + "className": "GeometryNodeSplineParameter", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSplineParameter" + }, + { + "className": "GeometryNodeSplitEdges", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSplitEdges" + }, + { + "className": "GeometryNodeSplitToInstances", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSplitToInstances" + }, + { + "className": "GeometryNodeStoreNamedAttribute", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeStoreNamedAttribute" + }, + { + "className": "GeometryNodeStoreNamedGrid", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeStoreNamedGrid" + }, + { + "className": "GeometryNodeStringJoin", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeStringJoin" + }, + { + "className": "GeometryNodeStringToCurves", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeStringToCurves" + }, + { + "className": "GeometryNodeSubdivideCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSubdivideCurve" + }, + { + "className": "GeometryNodeSubdivideMesh", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSubdivideMesh" + }, + { + "className": "GeometryNodeSubdivisionSurface", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSubdivisionSurface" + }, + { + "className": "GeometryNodeSwitch", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "input_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeSwitch" + }, + { + "className": "GeometryNodeTagFilter", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTagFilter" + }, + { + "className": "GeometryNodeTool3DCursor", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTool3DCursor" + }, + { + "className": "GeometryNodeToolActiveElement", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeToolActiveElement" + }, + { + "className": "GeometryNodeToolFaceSet", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeToolFaceSet" + }, + { + "className": "GeometryNodeToolMousePosition", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeToolMousePosition" + }, + { + "className": "GeometryNodeToolSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeToolSelection" + }, + { + "className": "GeometryNodeToolSetFaceSet", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeToolSetFaceSet" + }, + { + "className": "GeometryNodeToolSetSelection", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "selection_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeToolSetSelection" + }, + { + "className": "GeometryNodeTransferAttributes", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTransferAttributes" + }, + { + "className": "GeometryNodeTransform", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTransform" + }, + { + "className": "GeometryNodeTranslateInstances", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTranslateInstances" + }, + { + "className": "GeometryNodeTriangulate", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTriangulate" + }, + { + "className": "GeometryNodeTrimCurve", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeTrimCurve" + }, + { + "className": "GeometryNodeUVPackIslands", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeUVPackIslands" + }, + { + "className": "GeometryNodeUVTangent", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeUVTangent" + }, + { + "className": "GeometryNodeUVUnwrap", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeUVUnwrap" + }, + { + "className": "GeometryNodeVertexOfCorner", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeVertexOfCorner" + }, + { + "className": "GeometryNodeViewer", + "family": "Geometry", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "ui_shortcut", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "viewer_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeViewer" + }, + { + "className": "GeometryNodeViewportTransform", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeViewportTransform" + }, + { + "className": "GeometryNodeVolumeCube", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeVolumeCube" + }, + { + "className": "GeometryNodeVolumeToMesh", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeVolumeToMesh" + }, + { + "className": "GeometryNodeWarning", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "warning_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeWarning" + }, + { + "className": "GeometryNodeXPBDSolver", + "family": "Geometry", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeXPBDSolver" + }, + { + "className": "ShaderNodeAddShader", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeAddShader" + }, + { + "className": "ShaderNodeAmbientOcclusion", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "inside", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "only_local", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "samples", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeAmbientOcclusion" + }, + { + "className": "ShaderNodeAttribute", + "family": "Shader", + "properties": [ + { + "identifier": "attribute_name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "attribute_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeAttribute" + }, + { + "className": "ShaderNodeBackground", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBackground" + }, + { + "className": "ShaderNodeBevel", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "samples", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBevel" + }, + { + "className": "ShaderNodeBlackbody", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBlackbody" + }, + { + "className": "ShaderNodeBrightContrast", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBrightContrast" + }, + { + "className": "ShaderNodeBsdfAnisotropic", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfAnisotropic" + }, + { + "className": "ShaderNodeBsdfDiffuse", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfDiffuse" + }, + { + "className": "ShaderNodeBsdfGlass", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfGlass" + }, + { + "className": "ShaderNodeBsdfHair", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "component", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfHair" + }, + { + "className": "ShaderNodeBsdfHairPrincipled", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "model", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parametrization", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfHairPrincipled" + }, + { + "className": "ShaderNodeBsdfMetallic", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "fresnel_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfMetallic" + }, + { + "className": "ShaderNodeBsdfPrincipled", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "subsurface_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfPrincipled" + }, + { + "className": "ShaderNodeBsdfRayPortal", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfRayPortal" + }, + { + "className": "ShaderNodeBsdfRefraction", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfRefraction" + }, + { + "className": "ShaderNodeBsdfSheen", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfSheen" + }, + { + "className": "ShaderNodeBsdfToon", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "component", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfToon" + }, + { + "className": "ShaderNodeBsdfTranslucent", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfTranslucent" + }, + { + "className": "ShaderNodeBsdfTransparent", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBsdfTransparent" + }, + { + "className": "ShaderNodeBump", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "invert", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeBump" + }, + { + "className": "ShaderNodeCameraData", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeCameraData" + }, + { + "className": "ShaderNodeClamp", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clamp_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeClamp" + }, + { + "className": "ShaderNodeCombineColor", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeCombineColor" + }, + { + "className": "ShaderNodeCombineXYZ", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeCombineXYZ" + }, + { + "className": "ShaderNodeDisplacement", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeDisplacement" + }, + { + "className": "ShaderNodeEeveeSpecular", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeEeveeSpecular" + }, + { + "className": "ShaderNodeEmission", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeEmission" + }, + { + "className": "ShaderNodeFloatCurve", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeFloatCurve" + }, + { + "className": "ShaderNodeFresnel", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeFresnel" + }, + { + "className": "ShaderNodeGamma", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeGamma" + }, + { + "className": "ShaderNodeGroup", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "node_tree", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeGroup" + }, + { + "className": "ShaderNodeHairInfo", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeHairInfo" + }, + { + "className": "ShaderNodeHoldout", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeHoldout" + }, + { + "className": "ShaderNodeHueSaturation", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeHueSaturation" + }, + { + "className": "ShaderNodeInvert", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeInvert" + }, + { + "className": "ShaderNodeLayerWeight", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeLayerWeight" + }, + { + "className": "ShaderNodeLightFalloff", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeLightFalloff" + }, + { + "className": "ShaderNodeLightPath", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeLightPath" + }, + { + "className": "ShaderNodeMapRange", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "interpolation_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeMapRange" + }, + { + "className": "ShaderNodeMapping", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vector_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeMapping" + }, + { + "className": "ShaderNodeMath", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "operation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_clamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeMath" + }, + { + "className": "ShaderNodeMix", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "blend_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clamp_factor", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clamp_result", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "factor_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeMix" + }, + { + "className": "ShaderNodeMixRGB", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "blend_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeMixRGB" + }, + { + "className": "ShaderNodeMixShader", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeMixShader" + }, + { + "className": "ShaderNodeNewGeometry", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeNewGeometry" + }, + { + "className": "ShaderNodeNormal", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeNormal" + }, + { + "className": "ShaderNodeNormalMap", + "family": "Shader", + "properties": [ + { + "identifier": "base", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "convention", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_map", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeNormalMap" + }, + { + "className": "ShaderNodeObjectInfo", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeObjectInfo" + }, + { + "className": "ShaderNodeOutputAOV", + "family": "Shader", + "properties": [ + { + "identifier": "aov_name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeOutputAOV" + }, + { + "className": "ShaderNodeOutputLight", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "is_active_output", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "target", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeOutputLight" + }, + { + "className": "ShaderNodeOutputLineStyle", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "blend_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "is_active_output", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "target", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeOutputLineStyle" + }, + { + "className": "ShaderNodeOutputMaterial", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "is_active_output", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "target", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeOutputMaterial" + }, + { + "className": "ShaderNodeOutputWorld", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "is_active_output", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "target", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeOutputWorld" + }, + { + "className": "ShaderNodeParticleInfo", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeParticleInfo" + }, + { + "className": "ShaderNodePointInfo", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodePointInfo" + }, + { + "className": "ShaderNodeRGB", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeRGB" + }, + { + "className": "ShaderNodeRGBCurve", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeRGBCurve" + }, + { + "className": "ShaderNodeRGBToBW", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeRGBToBW" + }, + { + "className": "ShaderNodeRadialTiling", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "normalize", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeRadialTiling" + }, + { + "className": "ShaderNodeRaycast", + "family": "Shader", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "only_local", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "sample_attribute_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeRaycast" + }, + { + "className": "ShaderNodeScript", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bytecode", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bytecode_hash", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "script", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_auto_update", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeScript" + }, + { + "className": "ShaderNodeSeparateColor", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeSeparateColor" + }, + { + "className": "ShaderNodeSeparateXYZ", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeSeparateXYZ" + }, + { + "className": "ShaderNodeShaderToRGB", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeShaderToRGB" + }, + { + "className": "ShaderNodeSqueeze", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeSqueeze" + }, + { + "className": "ShaderNodeSubsurfaceScattering", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "falloff", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeSubsurfaceScattering" + }, + { + "className": "ShaderNodeTangent", + "family": "Shader", + "properties": [ + { + "identifier": "axis", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "direction_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_map", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTangent" + }, + { + "className": "ShaderNodeTexBrick", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset_frequency", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "squash", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "squash_frequency", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexBrick" + }, + { + "className": "ShaderNodeTexChecker", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexChecker" + }, + { + "className": "ShaderNodeTexCoord", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "from_instancer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexCoord" + }, + { + "className": "ShaderNodeTexEnvironment", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "image", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "image_user", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "interpolation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "projection", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexEnvironment" + }, + { + "className": "ShaderNodeTexGabor", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "gabor_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexGabor" + }, + { + "className": "ShaderNodeTexGradient", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "gradient_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexGradient" + }, + { + "className": "ShaderNodeTexIES", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "ies", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexIES" + }, + { + "className": "ShaderNodeTexImage", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "extension", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "image", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "image_user", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "interpolation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "projection", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "projection_blend", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexImage" + }, + { + "className": "ShaderNodeTexMagic", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "turbulence_depth", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexMagic" + }, + { + "className": "ShaderNodeTexNoise", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "noise_dimensions", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "noise_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "normalize", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexNoise" + }, + { + "className": "ShaderNodeTexSky", + "family": "Shader", + "properties": [ + { + "arrayLength": 0, + "identifier": "aerosol_density", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "air_density", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "altitude", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ground_albedo", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "ozone_density", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "sky_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "sun_direction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_disc", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "sun_elevation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_intensity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "turbidity", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexSky" + }, + { + "className": "ShaderNodeTexVoronoi", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "distance", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "feature", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "normalize", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "voronoi_dimensions", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexVoronoi" + }, + { + "className": "ShaderNodeTexWave", + "family": "Shader", + "properties": [ + { + "identifier": "bands_direction", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "rings_direction", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "wave_profile", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "wave_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexWave" + }, + { + "className": "ShaderNodeTexWhiteNoise", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "noise_dimensions", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeTexWhiteNoise" + }, + { + "className": "ShaderNodeUVAlongStroke", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_tips", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeUVAlongStroke" + }, + { + "className": "ShaderNodeUVMap", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "from_instancer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_map", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeUVMap" + }, + { + "className": "ShaderNodeValToRGB", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_ramp", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeValToRGB" + }, + { + "className": "ShaderNodeValue", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeValue" + }, + { + "className": "ShaderNodeVectorCurve", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mapping", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVectorCurve" + }, + { + "className": "ShaderNodeVectorDisplacement", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVectorDisplacement" + }, + { + "className": "ShaderNodeVectorMath", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "operation", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVectorMath" + }, + { + "className": "ShaderNodeVectorRotate", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "invert", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "rotation_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVectorRotate" + }, + { + "className": "ShaderNodeVectorTransform", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "convert_from", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "convert_to", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vector_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVectorTransform" + }, + { + "className": "ShaderNodeVertexColor", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "layer_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVertexColor" + }, + { + "className": "ShaderNodeVolumeAbsorption", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVolumeAbsorption" + }, + { + "className": "ShaderNodeVolumeCoefficients", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "phase", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVolumeCoefficients" + }, + { + "className": "ShaderNodeVolumeInfo", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVolumeInfo" + }, + { + "className": "ShaderNodeVolumePrincipled", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVolumePrincipled" + }, + { + "className": "ShaderNodeVolumeScatter", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "phase", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeVolumeScatter" + }, + { + "className": "ShaderNodeWavelength", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeWavelength" + }, + { + "className": "ShaderNodeWireframe", + "family": "Shader", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pixel_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeWireframe" + } + ], + "operation": "BLENDER_FAMILY_INVENTORY", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "schemaVersion": 1, + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "summary": { + "constraintCount": 29, + "modifierCount": 83, + "nodeCount": 451, + "nodesByFamily": { + "Compositor": 88, + "Geometry": 264, + "Shader": 99 + } + }, + "task": "M15-01C" +} diff --git a/tests/golden/M15-01C/family-inventory-check-report.json b/tests/golden/M15-01C/family-inventory-check-report.json new file mode 100644 index 00000000..86d98007 --- /dev/null +++ b/tests/golden/M15-01C/family-inventory-check-report.json @@ -0,0 +1,34 @@ +{ + "schemaVersion": 1, + "task": "M15-01C", + "operation": "BLENDER_FAMILY_INVENTORY_CHECK", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "summary": { + "constraintCount": 29, + "modifierCount": 83, + "nodeCount": 451, + "nodesByFamily": { + "Compositor": 88, + "Geometry": 264, + "Shader": 99 + } + }, + "firstModifier": "ARMATURE", + "lastNode": "ShaderNodeWireframe", + "inventorySha256": "bb7bbbf64184f326cd17933960800d7d761db6dd3b5f829e322e5ccdb12b8845", + "nextTask": "M15-01D" +} diff --git a/tests/golden/M15-01C/manifest.json b/tests/golden/M15-01C/manifest.json new file mode 100644 index 00000000..85e34b35 --- /dev/null +++ b/tests/golden/M15-01C/manifest.json @@ -0,0 +1,40 @@ +{ + "schemaVersion": 1, + "task": "M15-01C", + "parentTask": "M15-01B", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_FAMILY", + "operation": "BLENDER_FAMILY_INVENTORY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-01B/manifest.json", + "sha256": "c17163242bba2cb0f0283af1a08b11eca55d2d9877b79254e4c7377c76a9d92c" + }, + "generator": { + "path": "tools/web/generate-blender-family-inventory.py", + "sha256": "2630357cbe6ca7264499621399f1a010d6eb7af8c002283d9d16e65c23955eda" + }, + "checker": { + "path": "tools/web/check-blender-family-inventory.mjs", + "sha256": "0cf9821bb0f6f691ee1eb5a96d77a78932eeb07565352e65a5ed68844f7c0108" + }, + "inventory": { + "path": "tests/golden/M15-01C/blender-family-inventory.json", + "sha256": "bb7bbbf64184f326cd17933960800d7d761db6dd3b5f829e322e5ccdb12b8845" + }, + "report": { + "path": "tests/golden/M15-01C/family-inventory-check-report.json", + "sha256": "0ca03907f828feba02df396d3fb9f0cfab791a5be67bd8d768c175a49088bae1" + }, + "runtime": { + "path": "build_blender_5.2.0/bin/blender", + "sha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-01D" +} diff --git a/tests/golden/M15-01D/blender-format-inventory.json b/tests/golden/M15-01D/blender-format-inventory.json new file mode 100644 index 00000000..d23a46be --- /dev/null +++ b/tests/golden/M15-01D/blender-format-inventory.json @@ -0,0 +1,13217 @@ +{ + "ioOperators": [ + { + "operator": "anim.keying_set_export", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "ANIM_OT_keying_set_export" + }, + { + "operator": "collection.export_all", + "poll": true, + "pollError": null, + "properties": [], + "rnaIdentifier": "COLLECTION_OT_export_all" + }, + { + "operator": "collection.exporter_add", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "COLLECTION_OT_exporter_add" + }, + { + "operator": "collection.exporter_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "COLLECTION_OT_exporter_export" + }, + { + "operator": "collection.exporter_move", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "direction", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "COLLECTION_OT_exporter_move" + }, + { + "operator": "collection.exporter_remove", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "COLLECTION_OT_exporter_remove" + }, + { + "operator": "collection.importer_add", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "COLLECTION_OT_importer_add" + }, + { + "operator": "collection.importer_remove", + "poll": false, + "pollError": null, + "properties": [], + "rnaIdentifier": "COLLECTION_OT_importer_remove" + }, + { + "operator": "export_anim.bvh", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "root_transform_only", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "rotate_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sort_children_by_names", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "EXPORT_ANIM_OT_bvh" + }, + { + "operator": "export_scene.fbx", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "add_leaf_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "apply_scale_options", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "apply_unit_scale", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "armature_nodetype", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "axis_forward", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "axis_up", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bake_anim", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_force_startend_keying", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_simplify_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_step", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_use_all_actions", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_use_all_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_anim_use_nla_strips", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "bake_space_transform", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "batch_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "colors_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "embed_textures", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mesh_smooth_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "object_types", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "path_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "primary_bone_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "prioritize_active_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "secondary_bone_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_active_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_armature_deform_only", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_batch_own_dir", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_edges", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_modifiers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_modifiers_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_metadata", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_space_transform", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_subsurf", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_triangles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_tspace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_visible", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "EXPORT_SCENE_OT_fbx" + }, + { + "operator": "export_scene.gltf", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "at_collection_center", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_action_filter", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_active_vertex_color_when_no_material", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_all_influences", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_all_vertex_colors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_anim_scene_split_object", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_anim_single_armature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_anim_slide_to_zero", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_animation_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_animations", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_apply", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_armature_object_remove", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_attributes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_bake_animation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_cameras", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_convert_animation_pointer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_copyright", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_current_frame", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_def_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_draco_color_quantization", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_generic_quantization", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_mesh_compression_enable", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_draco_mesh_compression_level", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_normal_quantization", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_position_quantization", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_draco_texcoord_quantization", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_extra_animations", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_extras", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_force_sampling", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_format", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_frame_range", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_frame_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_kn", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_noq", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_sa", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_si", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_slb", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_tc", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_tq", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vc", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vn", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vp", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "export_gltfpack_vpi", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_gltfpack_vt", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_gn_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_gpu_instances", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_hierarchy_flatten_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_hierarchy_flatten_objs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_hierarchy_full_collections", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_image_add_webp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_image_format", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_image_quality", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_image_webp_fallback", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_import_convert_lighting_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_influence_nb", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_jpeg_quality", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_keep_originals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_leaf_bone", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_lights", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_loglevel", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "export_materials", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "export_merge_animation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_meshopt_compression_enable", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_meshopt_extension", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_morph", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_animation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_reset_sk_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_morph_tangent", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_negative_frame", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_nla_strips", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_nla_strips_merged_animation_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_animation_keep_anim_armature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_animation_keep_anim_object", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_animation_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_optimize_disable_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_original_specular", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_pointer_animation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_reset_pose_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_rest_position_armature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_sampling_interpolation_fallback", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_shared_accessors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_skins", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_tangents", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_texcoords", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_texture_dir", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_try_omit_sparse_sk", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_try_sparse_sk", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_unused_images", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_unused_textures", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_use_gltfpack", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_vertex_color", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "export_vertex_color_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "export_yup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "gltf_export_id", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "ui_tab", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_active_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_active_collection_with_nested", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_active_scene", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_edges", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_vertices", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_renderable", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_visible", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "will_save_settings", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "EXPORT_SCENE_OT_gltf" + }, + { + "operator": "image.import_as_mesh_planes", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "align_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "align_track", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "emit_strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "extension", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "fill_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "force_reload", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "image_sequence", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "interpolation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "offset", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "offset_amount", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "offset_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "overwrite_material", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "prev_align_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "relative", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "render_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "shader", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_transparent_back", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "size_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_refresh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backface_culling", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_transparency", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "IMAGE_OT_import_as_mesh_planes" + }, + { + "operator": "import_anim.bvh", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "axis_forward", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "axis_up", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "rotate_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "target", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "update_scene_duration", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "update_scene_fps", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fps_scale", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "IMPORT_ANIM_OT_bvh" + }, + { + "operator": "import_curve.svg", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "IMPORT_CURVE_OT_svg" + }, + { + "operator": "import_scene.fbx", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "anim_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "automatic_bone_orientation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "axis_forward", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "axis_up", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bake_space_transform", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "colors_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "decal_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "force_connect_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ignore_leaf_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "mtl_name_collision_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "primary_bone_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "secondary_bone_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "ui_tab", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_alpha_decals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_anim", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props_enum_as_string", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_image_search", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_manual_orientation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_prepost_rot", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_subsurf", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "IMPORT_SCENE_OT_fbx" + }, + { + "operator": "import_scene.gltf", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "bone_heuristic", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bone_shape_scale_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "disable_bone_shape", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_import_convert_lighting_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "guess_original_bind_pose", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_merge_material_slots", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_pack_images", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_point_as_pointcloud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_scene_as_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_scene_extras", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_select_created_objects", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "import_shading", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "import_unused_materials", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "import_webp_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "loglevel", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "merge_vertices", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "IMPORT_SCENE_OT_gltf" + }, + { + "operator": "node.add_import_node", + "poll": false, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + } + ], + "rnaIdentifier": "NODE_OT_add_import_node" + }, + { + "operator": "object.volume_import", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "align", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_sequence_detection", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "OBJECT_OT_volume_import" + }, + { + "operator": "preferences.keyconfig_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "PREFERENCES_OT_keyconfig_export" + }, + { + "operator": "preferences.keyconfig_import", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "keep_original", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "PREFERENCES_OT_keyconfig_import" + }, + { + "operator": "sequencer.export_subtitles", + "poll": false, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_props_region", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "SEQUENCER_OT_export_subtitles" + }, + { + "operator": "uv.export_layout", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_all", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_tiles", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "modified", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "opacity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "size", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "UV_OT_export_layout" + }, + { + "operator": "wm.collection_export_all", + "poll": true, + "pollError": null, + "properties": [], + "rnaIdentifier": "WM_OT_collection_export_all" + }, + { + "operator": "wm.drop_import_file", + "poll": true, + "pollError": null, + "properties": [ + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + } + ], + "rnaIdentifier": "WM_OT_drop_import_file" + }, + { + "operator": "wm.fbx_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "anim_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ignore_leaf_bones", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "import_colors", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "import_subdivision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "mtl_name_collision_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_anim", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_props_enum_as_string", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "validate_meshes", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_fbx_import" + }, + { + "operator": "wm.grease_pencil_export_svg", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "frame_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "selected_object_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "stroke_sample", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_clip_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_uniform_width", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_grease_pencil_export_svg" + }, + { + "operator": "wm.grease_pencil_import_svg", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "recenter_bounds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "relative_path", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "resolution", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_grease_pencil_import_svg" + }, + { + "operator": "wm.obj_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_modifiers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_transform", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "end_frame", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "export_animation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_colors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_curves_as_nurbs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_eval_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_material_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_materials", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_object_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_pbr_extensions", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_selected_objects", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_smooth_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_triangulated_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_uv", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_vertex_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "path_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "smooth_group_bitflags", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "start_frame", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "WM_OT_obj_export" + }, + { + "operator": "wm.obj_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "clamp_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "close_spline_loops", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "collection_separator", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "import_vertex_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "mtl_name_collision_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_split_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_split_objects", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "validate_meshes", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_obj_import" + }, + { + "operator": "wm.ply_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_modifiers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ascii_format", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_attributes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "export_colors", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_selected_objects", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_triangulated_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "export_uv", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "WM_OT_ply_export" + }, + { + "operator": "wm.ply_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "import_attributes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "import_colors", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "merge_verts", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_ply_import" + }, + { + "operator": "wm.stl_export", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_modifiers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "ascii_format", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "evaluation_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "export_selected_objects", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_batch", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_stl_export" + }, + { + "operator": "wm.stl_import", + "poll": true, + "pollError": null, + "properties": [ + { + "arrayLength": 0, + "identifier": "check_existing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "directory", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filemode", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "filter_alembic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_archive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_backup", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blender", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_blenlib", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_btx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_folder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_glob", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "filter_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_movie", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_obj", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_python", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_sound", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_text", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_usd", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "global_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sort_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_facet_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_validate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scene_unit", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "WM_OT_stl_import" + } + ], + "nextTask": "M15-01E", + "operation": "BLENDER_FORMAT_INVENTORY", + "physicsTypes": [ + { + "className": "BakeSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "cage_extrusion", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "cage_object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "displacement_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "image_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "margin", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "margin_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "max_ray_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "normal_b", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "normal_g", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "normal_r", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "normal_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "pass_filter", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "save_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "target", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_automatic_name", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clear", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_lores_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multires", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_diffuse", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_direct", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_emit", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_glossy", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_indirect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_transmission", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_selected_to_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_split_materials", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "view_from", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "BakeSettings" + }, + { + "className": "BlendDataParticles", + "properties": [], + "rnaIdentifier": "BlendDataParticles" + }, + { + "className": "BoidRule", + "properties": [ + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidRule" + }, + { + "className": "BoidRuleAverageSpeed", + "properties": [ + { + "arrayLength": 0, + "identifier": "level", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wander", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "BoidRuleAverageSpeed" + }, + { + "className": "BoidRuleAvoid", + "properties": [ + { + "arrayLength": 0, + "identifier": "fear_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_predict", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidRuleAvoid" + }, + { + "className": "BoidRuleAvoidCollision", + "properties": [ + { + "arrayLength": 0, + "identifier": "look_ahead", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_avoid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_avoid_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidRuleAvoidCollision" + }, + { + "className": "BoidRuleFight", + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flee_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidRuleFight" + }, + { + "className": "BoidRuleFollowLeader", + "properties": [ + { + "arrayLength": 0, + "identifier": "distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "queue_count", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_line", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidRuleFollowLeader" + }, + { + "className": "BoidRuleGoal", + "properties": [ + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_in_air", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_on_land", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_predict", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidRuleGoal" + }, + { + "className": "BoidSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "accuracy", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "active_boid_state", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_boid_state_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "aggression", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "air_acc_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "air_ave_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "air_personal_space", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "air_speed_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "air_speed_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bank", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "health", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_acc_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_ave_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_jump_speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_personal_space", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_smooth", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_speed_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "land_stick_force", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "pitch", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "range", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_climb", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_flight", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_land", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "BoidSettings" + }, + { + "className": "BoidState", + "properties": [ + { + "identifier": "active_boid_rule", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_boid_rule_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "falloff", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "rule_fuzzy", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "rules", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "ruleset_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "volume", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "BoidState" + }, + { + "className": "ChildParticle", + "properties": [], + "rnaIdentifier": "ChildParticle" + }, + { + "className": "ClothCollisionSettings", + "properties": [ + { + "identifier": "collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "collision_quality", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "distance_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "impulse_clamp", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "self_distance_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "self_friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "self_impulse_clamp", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_self_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vertex_group_object_collisions", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_self_collisions", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "ClothCollisionSettings" + }, + { + "className": "ClothModifier", + "properties": [ + { + "identifier": "collision_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "hair_grid_max", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "hair_grid_min", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "hair_grid_resolution", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "point_cache", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "solver_result", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "ClothModifier" + }, + { + "className": "ClothSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "air_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bending_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bending_model", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bending_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bending_stiffness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "collider_friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "compression_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "compression_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "compression_stiffness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "density_strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "density_target", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "fluid_density", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_spring", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "gravity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_compression_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_compression_stiffness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_spring_max_diversion", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_spring_max_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_spring_normal_check", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "internal_tension_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "internal_tension_stiffness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mass", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "pin_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "pressure_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "quality", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "rest_shape_key", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "sewing_force_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shear_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shear_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shear_stiffness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shrink_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shrink_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "target_volume", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tension_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tension_stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tension_stiffness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "time_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "uniform_pressure_force", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_dynamic_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_internal_springs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pressure_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sewing_springs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vertex_group_bending", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_intern", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_mass", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_pressure", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_shear_stiffness", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_shrink", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_structural_stiffness", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "voxel_cell_size", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ClothSettings" + }, + { + "className": "ClothSolverResult", + "properties": [ + { + "arrayLength": 0, + "identifier": "avg_error", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "avg_iterations", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "max_error", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "max_iterations", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "min_error", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "min_iterations", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "status", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "ClothSolverResult" + }, + { + "className": "CollisionModifier", + "properties": [ + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "CollisionModifier" + }, + { + "className": "CollisionSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "absorption", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cloth_friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "damping_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "damping_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "friction_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "friction_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "permeability", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "stickiness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "thickness_inner", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "thickness_outer", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_culling", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_particle_kill", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "CollisionSettings" + }, + { + "className": "DynamicPaintBrushSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "invert_proximity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "paint_alpha", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "paint_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "paint_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "paint_ramp", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "paint_source", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "paint_wetness", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "particle_system", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "proximity_falloff", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "ray_direction", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "smooth_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smudge_strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "solid_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_absolute_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_negative_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_erase", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_particle_radius", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proximity_project", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proximity_ramp_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smudge", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_velocity_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_velocity_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_velocity_depth", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "velocity_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "velocity_ramp", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "wave_clamp", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wave_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "wave_type", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "DynamicPaintBrushSettings" + }, + { + "className": "DynamicPaintCanvasSettings", + "properties": [ + { + "identifier": "canvas_surfaces", + "readOnly": true, + "type": "COLLECTION" + } + ], + "rnaIdentifier": "DynamicPaintCanvasSettings" + }, + { + "className": "DynamicPaintModifier", + "properties": [ + { + "identifier": "brush_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "canvas_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "ui_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "DynamicPaintModifier" + }, + { + "className": "DynamicPaintSurface", + "properties": [ + { + "identifier": "brush_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "brush_influence_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "brush_radius_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "color_dry_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "color_spread_speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "depth_clamp", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "displace_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "displace_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "dissolve_speed", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "drip_acceleration", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "drip_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "dry_speed", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "effect_ui", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_substeps", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "image_fileformat", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "image_output_path", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "image_resolution", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 4, + "identifier": "init_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "init_color_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "init_layername", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "init_texture", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_cache_user", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "output_name_a", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "output_name_b", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "point_cache", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "shrink_speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spread_speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "surface_format", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "surface_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_antialiasing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve_log", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_drip", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dry_log", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_drying", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_incremental_displace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_output_a", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_output_b", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_premultiply", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_shrink", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spread", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_wave_open_border", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_layer", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "wave_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wave_smoothness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wave_speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wave_spring", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wave_timescale", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "DynamicPaintSurface" + }, + { + "className": "DynamicPaintSurfaces", + "properties": [ + { + "identifier": "active", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "DynamicPaintSurfaces" + }, + { + "className": "EffectorWeights", + "properties": [ + { + "arrayLength": 0, + "identifier": "all", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "apply_to_hair_growing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "boid", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "charge", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "curve_guide", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "drag", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "force", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gravity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "harmonic", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lennardjones", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "magnetic", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smokeflow", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "texture", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "turbulence", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vortex", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wind", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "EffectorWeights" + }, + { + "className": "FieldSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "apply_to_location", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_to_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "distance_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "distance_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "falloff_power", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "falloff_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "flow", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_clump_amount", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_clump_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_free", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_kink_amplitude", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "guide_kink_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "guide_kink_frequency", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_kink_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "guide_kink_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "guide_minimum", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "harmonic_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "inflow", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "linear_drag", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "noise", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "quadratic_drag", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radial_falloff", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radial_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "radial_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rest_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "shape", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "source_object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "texture_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "texture_nabla", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_2d_force", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_absorption", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_global_coords", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_gravity_falloff", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_guide_path_add", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_guide_path_weight", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_max_distance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_min_distance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiple_springs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_object_coords", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_radial_max", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_radial_min", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_root_coords", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smoke_density", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "wind_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "z_direction", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "FieldSettings" + }, + { + "className": "FluidDomainSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "adapt_margin", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "adapt_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "additional_res", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "alpha", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "beta", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "burning_rate", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "cache_data_format", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "cache_directory", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_offset", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_pause_data", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_pause_guide", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_pause_mesh", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_pause_noise", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_pause_particles", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cache_frame_start", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "cache_mesh_format", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "cache_noise_format", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "cache_particle_format", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "cache_resumable", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "cache_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "cell_size", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cfl_condition", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clipping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 32, + "identifier": "color_grid", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "color_ramp", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "color_ramp_field", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "color_ramp_field_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "delete_in_obstacle", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 32, + "identifier": "density_grid", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "display_interpolation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "display_thickness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "dissolve_speed", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "domain_resolution", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "domain_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "effector_group", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "export_manta_script", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 32, + "identifier": "flame_grid", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flame_ignition", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flame_max_temp", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flame_smoke", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "flame_smoke_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flame_vorticity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flip_ratio", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "fluid_group", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "force_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "fractions_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fractions_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "gravity", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "gridlines_cell_filter", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "gridlines_color_field", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "gridlines_lower_bound", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "gridlines_range_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gridlines_upper_bound", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_alpha", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "guide_beta", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "guide_parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "guide_source", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "guide_vel_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "has_cache_baked_any", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_cache_baked_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_cache_baked_guide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_cache_baked_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_cache_baked_noise", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "has_cache_baked_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 32, + "identifier": "heat_grid", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "highres_sampling", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_cache_baking_any", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_cache_baking_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_cache_baking_guide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_cache_baking_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_cache_baking_noise", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_cache_baking_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mesh_concave_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mesh_concave_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mesh_generator", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "mesh_particle_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mesh_scale", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mesh_smoothen_neg", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "mesh_smoothen_pos", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "noise_pos_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "noise_scale", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "noise_strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "noise_time_anim", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "openvdb_cache_compress_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "openvdb_data_depth", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "particle_band_width", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "particle_max", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "particle_min", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "particle_number", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "particle_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "particle_randomness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "particle_scale", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_max", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_gridlines", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "simulation_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "slice_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "slice_depth", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "slice_per_voxel", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sndparticle_boundary", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_bubble_buoyancy", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_bubble_drag", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sndparticle_combined_export", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_life_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_life_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_max_energy", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_max_trappedair", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_max_wavecrest", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_min_energy", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_min_trappedair", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_min_wavecrest", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_potential_radius", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_sampling_trappedair", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_sampling_wavecrest", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sndparticle_update_radius", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "start_point", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "surface_tension", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sys_particle_maximum", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 32, + "identifier": "temperature_grid", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "time_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "timesteps_max", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "timesteps_min", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_adaptive_domain", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_adaptive_timesteps", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_bubble_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collision_border_back", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collision_border_bottom", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collision_border_front", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collision_border_left", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collision_border_right", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collision_border_top", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_color_ramp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_diffusion", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve_smoke", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dissolve_smoke_log", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_flip_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_foam_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fractions", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_guide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_noise", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_slice", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_speed_vectors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spray_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_tracer_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_viscosity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vector_display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "vector_field", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "vector_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vector_scale_with_magnitude", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vector_show_mac_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vector_show_mac_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "vector_show_mac_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 32, + "identifier": "velocity_grid", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "velocity_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "viscosity_base", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "viscosity_exponent", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "viscosity_value", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vorticity", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "FluidDomainSettings" + }, + { + "className": "FluidEffectorSettings", + "properties": [ + { + "identifier": "effector_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "guide_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "subframes", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "surface_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_effector", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_plane_init", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "velocity_factor", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "FluidEffectorSettings" + }, + { + "className": "FluidFlowSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "density", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "density_vertex_group", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "flow_behavior", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "flow_source", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "flow_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "fuel_amount", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "noise_texture", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "particle_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "particle_system", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "smoke_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "subframes", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "surface_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "temperature", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture_map_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "texture_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "texture_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_absolute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_inflow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_initial_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_particle_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_plane_init", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_layer", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 3, + "identifier": "velocity_coord", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "velocity_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "velocity_normal", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "velocity_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "volume_density", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "FluidFlowSettings" + }, + { + "className": "FluidModifier", + "properties": [ + { + "identifier": "domain_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "effector_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "flow_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "fluid_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "FluidModifier" + }, + { + "className": "GeometryNodeAccumulateField", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeAccumulateField" + }, + { + "className": "GeometryNodeFieldAtIndex", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldAtIndex" + }, + { + "className": "GeometryNodeFieldAverage", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldAverage" + }, + { + "className": "GeometryNodeFieldMinAndMax", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldMinAndMax" + }, + { + "className": "GeometryNodeFieldOnDomain", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldOnDomain" + }, + { + "className": "GeometryNodeFieldToGrid", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "grid_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldToGrid" + }, + { + "className": "GeometryNodeFieldToGridItem", + "properties": [ + { + "arrayLength": 4, + "identifier": "color", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "identifier", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "GeometryNodeFieldToGridItem" + }, + { + "className": "GeometryNodeFieldToGridItems", + "properties": [], + "rnaIdentifier": "GeometryNodeFieldToGridItems" + }, + { + "className": "GeometryNodeFieldToList", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_item", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "list_items", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldToList" + }, + { + "className": "GeometryNodeFieldToListItem", + "properties": [ + { + "arrayLength": 4, + "identifier": "color", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "identifier", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "socket_type", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "GeometryNodeFieldToListItem" + }, + { + "className": "GeometryNodeFieldToListItems", + "properties": [], + "rnaIdentifier": "GeometryNodeFieldToListItems" + }, + { + "className": "GeometryNodeFieldVariance", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "data_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "GeometryNodeFieldVariance" + }, + { + "className": "Particle", + "properties": [ + { + "identifier": "alive_state", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "angular_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "birth_time", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "die_time", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "hair_keys", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "is_exist", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_visible", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "lifetime", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "particle_keys", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 3, + "identifier": "prev_angular_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "prev_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "prev_rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "prev_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "velocity", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "Particle" + }, + { + "className": "ParticleBrush", + "properties": [ + { + "arrayLength": 0, + "identifier": "count", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "curve", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "length_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "puff_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "size", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "steps", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_puff_volume", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "ParticleBrush" + }, + { + "className": "ParticleDupliWeight", + "properties": [ + { + "arrayLength": 0, + "identifier": "count", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "name", + "readOnly": true, + "type": "STRING" + } + ], + "rnaIdentifier": "ParticleDupliWeight" + }, + { + "className": "ParticleEdit", + "properties": [ + { + "identifier": "brush", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "default_key_count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "display_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "emitter_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fade_frames", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_hair", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "object", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "select_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "shape_object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "tool", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_default_interpolate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_emitter_deflect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fade_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_root", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "ParticleEdit" + }, + { + "className": "ParticleHairKey", + "properties": [ + { + "arrayLength": 3, + "identifier": "co", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "co_local", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "time", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "weight", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ParticleHairKey" + }, + { + "className": "ParticleInstanceModifier", + "properties": [ + { + "identifier": "axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "index_layer_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "particle_amount", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "particle_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "particle_system", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "particle_system_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "position", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "random_position", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "random_rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_alive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_dead", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_unborn", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_path", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preserve_shape", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "value_layer_name", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "ParticleInstanceModifier" + }, + { + "className": "ParticleKey", + "properties": [ + { + "arrayLength": 3, + "identifier": "angular_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "rotation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "time", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "velocity", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ParticleKey" + }, + { + "className": "ParticleSettings", + "properties": [ + { + "identifier": "active_instanceweight", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_instanceweight_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_texture", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_texture_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "adaptive_angle", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "adaptive_pixel", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "angular_velocity_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "angular_velocity_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "apply_effector_to_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_guide_to_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "bending_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "boids", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "branch_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "brownian_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_length_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_parting_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_parting_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_parting_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_percent", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "child_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_roundness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_size_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "child_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "clump_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "clump_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clump_noise_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clump_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "collision_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "color_maximum", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "courant_target", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "create_long_hair_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "display_color", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "display_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "display_percentage", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "display_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "display_step", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "drag_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "effect_hair", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "effector_amount", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "emit_from", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "fluid", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "force_field_1", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "force_field_2", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "grid_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "grid_resolution", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "hair_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hair_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "hexagonal_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "instance_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "instance_object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "instance_weights", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "integrator", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "invert_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_fluid", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "jitter_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "keyed_loops", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "keys_step", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "kink", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "kink_amplitude", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_amplitude_clump", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_amplitude_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "kink_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "kink_axis_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_extra_steps", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "kink_flat", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_frequency", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "length_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "lifetime", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lifetime_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "line_length_head", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "line_length_tail", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lock_boids_to_surface", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mass", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "material", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "material_slot", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "normal_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "object_align_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "object_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "particle_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "particle_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "path_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "path_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "phase_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "phase_factor_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "physics_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "radius_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "react_event", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "reactor_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "render_step", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "render_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "rendered_child_count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "root_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rotation_factor_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "rotation_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "roughness_1", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_1_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_2", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_2_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_2_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "roughness_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "roughness_end_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_endpoint", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_guide_hairs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_hair_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_health", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_number", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_unborn", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "size_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "subframes", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tangent_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tangent_phase", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture_slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "time_tweak", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "timestep", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tip_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "trail_count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "twist", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "twist_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_absolute_path_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_adaptive_subframes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_advanced_hair", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_close_tip", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clump_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clump_noise", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collection_count", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collection_pick_random", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dead", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_die_on_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dynamic_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_emit_random", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even_distribution", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_global_instance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_hair_bspline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_modifier_stack", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiply_size_mass", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_parent_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_react_multiple", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_react_start_end", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_regrow_hair", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_render_adaptive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation_instance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotations", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_roughness_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale_instance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_self_effect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_size_deflect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_strand_primitive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_twist_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_velocity_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_whole_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "userjit", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "virtual_parents", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ParticleSettings" + }, + { + "className": "ParticleSettingsTextureSlot", + "properties": [ + { + "identifier": "blend_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "clump_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "damp_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "default_value", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "density_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "field_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gravity_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_amp_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_freq_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "length_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "life_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mapping", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mapping_x", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mapping_y", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mapping_z", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "name", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "output_node", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "rough_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "size_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "texture_coords", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "time_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "twist_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_map_clump", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_damp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_density", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_field", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_gravity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_kink_amp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_kink_freq", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_life", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_rough", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_twist", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_layer", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "velocity_factor", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ParticleSettingsTextureSlot" + }, + { + "className": "ParticleSettingsTextureSlots", + "properties": [], + "rnaIdentifier": "ParticleSettingsTextureSlots" + }, + { + "className": "ParticleSystem", + "properties": [ + { + "identifier": "active_particle_target", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_particle_target_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "child_particles", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "child_seed", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "cloth", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "dt_frac", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "has_multiple_caches", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_clump", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_density", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_field", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_kink", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_roughness_1", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_roughness_2", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_roughness_end", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_tangent", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_twist", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_edited", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_global_hair", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "particles", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "point_cache", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "reactor_target_object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "reactor_target_particle_system", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "seed", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "settings", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "targets", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_hair_dynamics", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_keyed_timing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vertex_group_clump", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_density", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_field", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_kink", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_length", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_rotation", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_roughness_1", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_roughness_2", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_roughness_end", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_size", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_tangent", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_twist", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_velocity", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "ParticleSystem" + }, + { + "className": "ParticleSystemModifier", + "properties": [ + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "particle_system", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "ParticleSystemModifier" + }, + { + "className": "ParticleSystems", + "properties": [ + { + "identifier": "active", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "ParticleSystems" + }, + { + "className": "ParticleTarget", + "properties": [ + { + "identifier": "alliance", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "duration", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_valid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "system", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "time", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ParticleTarget" + }, + { + "className": "PointCache", + "properties": [ + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "info", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "is_baked", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_baking", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_frame_skip", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_outdated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "point_caches", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_disk_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_external", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_library_path", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "PointCache" + }, + { + "className": "PointCacheItem", + "properties": [ + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "info", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "is_baked", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_baking", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_frame_skip", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_outdated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_disk_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_external", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_library_path", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "PointCacheItem" + }, + { + "className": "PointCaches", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "PointCaches" + }, + { + "className": "RigidBodyConstraint", + "properties": [ + { + "arrayLength": 0, + "identifier": "breaking_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "disable_collisions", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enabled", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "limit_ang_x_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_ang_x_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_ang_y_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_ang_y_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_ang_z_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_ang_z_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_lin_x_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_lin_x_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_lin_y_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_lin_y_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_lin_z_lower", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "limit_lin_z_upper", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "motor_ang_max_impulse", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "motor_ang_target_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "motor_lin_max_impulse", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "motor_lin_target_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "object1", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "object2", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "solver_iterations", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "spring_damping_ang_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_damping_ang_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_damping_ang_z", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_damping_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_damping_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_damping_z", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_stiffness_ang_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_stiffness_ang_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_stiffness_ang_z", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_stiffness_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_stiffness_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_stiffness_z", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "spring_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_breaking", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_ang_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_ang_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_ang_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_lin_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_lin_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_limit_lin_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_motor_ang", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_motor_lin", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_override_solver_iterations", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spring_ang_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spring_ang_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spring_ang_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spring_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spring_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spring_z", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "RigidBodyConstraint" + }, + { + "className": "RigidBodyObject", + "properties": [ + { + "arrayLength": 0, + "identifier": "angular_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 20, + "identifier": "collision_collections", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "collision_margin", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "collision_shape", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "deactivate_angular_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "deactivate_linear_velocity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "enabled", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kinematic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "linear_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mass", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mesh_source", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "restitution", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_deactivation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_deform", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_margin", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_start_deactivated", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "RigidBodyObject" + }, + { + "className": "RigidBodyWorld", + "properties": [ + { + "identifier": "collection", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "constraints", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "enabled", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "point_cache", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "solver_iterations", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "substeps_per_frame", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "time_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_split_impulse", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "RigidBodyWorld" + }, + { + "className": "SPHFluidSettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "buoyancy", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fluid_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "linear_viscosity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "plasticity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "repulsion", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rest_density", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rest_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "solver", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "spring_force", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_frames", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "stiff_viscosity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "stiffness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_factor_density", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factor_radius", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factor_repulsion", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factor_rest_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_factor_stiff_viscosity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_initial_rest_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_viscoelastic_springs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "yield_ratio", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "SPHFluidSettings" + }, + { + "className": "ShaderNodeParticleInfo", + "properties": [ + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_height_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_height_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_static_type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_width_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bl_width_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_tag", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "dimensions", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "inputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "internal_links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 2, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "location_absolute", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "outputs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "panel_states", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_options", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "use_custom_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "warning_propagation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ShaderNodeParticleInfo" + }, + { + "className": "SoftBodyModifier", + "properties": [ + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "point_cache", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SoftBodyModifier" + }, + { + "className": "SoftBodySettings", + "properties": [ + { + "arrayLength": 0, + "identifier": "aero", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "aerodynamics_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "ball_damp", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ball_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ball_stiff", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bend", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "choke", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "collision_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "collision_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "error_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fuzzy", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "goal_default", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_friction", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "goal_spring", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "gravity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "location_mass_center", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "mass", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "plastic", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "pull", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "push", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 9, + "identifier": "rotation_estimate", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 9, + "identifier": "scale_estimate", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shear", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "spring_length", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "step_max", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "step_min", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_auto_step", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_diagnose", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_edge_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_edges", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_estimate_matrix", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_face_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_goal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_self_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stiff_quads", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vertex_group_goal", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_mass", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "vertex_group_spring", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "SoftBodySettings" + } + ], + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "schemaVersion": 1, + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "stripTypes": [ + { + "description": "", + "identifier": "ADD", + "name": "Add", + "value": 9 + }, + { + "description": "", + "identifier": "ADJUSTMENT", + "name": "Adjustment Layer", + "value": 31 + }, + { + "description": "", + "identifier": "ALPHA_OVER", + "name": "Alpha Over", + "value": 11 + }, + { + "description": "", + "identifier": "ALPHA_UNDER", + "name": "Alpha Under", + "value": 12 + }, + { + "description": "", + "identifier": "COLOR", + "name": "Color", + "value": 28 + }, + { + "description": "", + "identifier": "COLORMIX", + "name": "Color Mix", + "value": 42 + }, + { + "description": "", + "identifier": "COMPOSITOR", + "name": "Compositor", + "value": 16 + }, + { + "description": "", + "identifier": "CROSS", + "name": "Crossfade", + "value": 8 + }, + { + "description": "", + "identifier": "GAMMA_CROSS", + "name": "Gamma Crossfade", + "value": 13 + }, + { + "description": "", + "identifier": "GAUSSIAN_BLUR", + "name": "Gaussian Blur", + "value": 40 + }, + { + "description": "", + "identifier": "GLOW", + "name": "Glow", + "value": 26 + }, + { + "description": "", + "identifier": "IMAGE", + "name": "Image", + "value": 0 + }, + { + "description": "", + "identifier": "MASK", + "name": "Mask", + "value": 7 + }, + { + "description": "", + "identifier": "META", + "name": "Meta", + "value": 1 + }, + { + "description": "", + "identifier": "MOVIE", + "name": "Movie", + "value": 3 + }, + { + "description": "", + "identifier": "MOVIECLIP", + "name": "Clip", + "value": 6 + }, + { + "description": "", + "identifier": "MULTICAM", + "name": "Multicam Selector", + "value": 30 + }, + { + "description": "", + "identifier": "MULTIPLY", + "name": "Multiply", + "value": 14 + }, + { + "description": "", + "identifier": "SCENE", + "name": "Scene", + "value": 2 + }, + { + "description": "", + "identifier": "SOUND", + "name": "Sound", + "value": 4 + }, + { + "description": "", + "identifier": "SPEED", + "name": "Speed", + "value": 29 + }, + { + "description": "", + "identifier": "SUBTRACT", + "name": "Subtract", + "value": 10 + }, + { + "description": "", + "identifier": "TEXT", + "name": "Text", + "value": 41 + }, + { + "description": "", + "identifier": "WIPE", + "name": "Wipe", + "value": 25 + } + ], + "summary": { + "ioOperatorCount": 33, + "physicsTypeCount": 65, + "stripTypeCount": 24 + }, + "task": "M15-01D" +} diff --git a/tests/golden/M15-01D/format-inventory-check-report.json b/tests/golden/M15-01D/format-inventory-check-report.json new file mode 100644 index 00000000..c61ac9b5 --- /dev/null +++ b/tests/golden/M15-01D/format-inventory-check-report.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M15-01D", + "operation": "BLENDER_FORMAT_INVENTORY_CHECK", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "summary": { + "ioOperatorCount": 33, + "physicsTypeCount": 65, + "stripTypeCount": 24 + }, + "firstStrip": "ADD", + "lastOperator": "wm.stl_import", + "inventorySha256": "d3892fc6126f2e477db8b7bcb2bc5ac7a77db1049f0165350ccc834d3a151394", + "nextTask": "M15-01E" +} diff --git a/tests/golden/M15-01D/manifest.json b/tests/golden/M15-01D/manifest.json new file mode 100644 index 00000000..58f9daff --- /dev/null +++ b/tests/golden/M15-01D/manifest.json @@ -0,0 +1,40 @@ +{ + "schemaVersion": 1, + "task": "M15-01D", + "parentTask": "M15-01C", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_FORMAT", + "operation": "BLENDER_FORMAT_INVENTORY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-01C/manifest.json", + "sha256": "b4b8fd37bf4ac946ff9a7a4c9b256401779e5e78bc6ff21f2c37348146349d3a" + }, + "generator": { + "path": "tools/web/generate-blender-format-inventory.py", + "sha256": "618ceb016bf7ab4251d1c8575bd091ea96aecdd423c1d69eea1082b13a734804" + }, + "checker": { + "path": "tools/web/check-blender-format-inventory.mjs", + "sha256": "3c22b24561a77058115e6ae1a58af7f0aaea782fab9416e2ce15221c4b91f8e4" + }, + "inventory": { + "path": "tests/golden/M15-01D/blender-format-inventory.json", + "sha256": "d3892fc6126f2e477db8b7bcb2bc5ac7a77db1049f0165350ccc834d3a151394" + }, + "report": { + "path": "tests/golden/M15-01D/format-inventory-check-report.json", + "sha256": "e345452bda9fa1c054974a34895027c080cf055ced2f24330189edbf9c0d5a5d" + }, + "runtime": { + "path": "build_blender_5.2.0/bin/blender", + "sha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-01E" +} diff --git a/tests/golden/M15-01E/blender-editor-inventory.json b/tests/golden/M15-01E/blender-editor-inventory.json new file mode 100644 index 00000000..b5539cc6 --- /dev/null +++ b/tests/golden/M15-01E/blender-editor-inventory.json @@ -0,0 +1,53863 @@ +{ + "areaTypes": [ + { + "description": "Motion tracking tools", + "identifier": "CLIP_EDITOR", + "name": "Movie Clip Editor", + "value": 20 + }, + { + "description": "Interactive programmatic console for advanced editing and script development", + "identifier": "CONSOLE", + "name": "Python Console", + "value": 18 + }, + { + "description": "Adjust timing of keyframes", + "identifier": "DOPESHEET_EDITOR", + "name": "Dope Sheet", + "value": 12 + }, + { + "description": "", + "identifier": "EMPTY", + "name": "Empty", + "value": 0 + }, + { + "description": "Browse for files and assets", + "identifier": "FILE_BROWSER", + "name": "File Browser", + "value": 5 + }, + { + "description": "Edit drivers and keyframe interpolation", + "identifier": "GRAPH_EDITOR", + "name": "Graph Editor", + "value": 2 + }, + { + "description": "View and edit images and UV Maps", + "identifier": "IMAGE_EDITOR", + "name": "UV/Image Editor", + "value": 6 + }, + { + "description": "Log of operations, warnings and error messages", + "identifier": "INFO", + "name": "Info", + "value": 7 + }, + { + "description": "Combine and layer Actions", + "identifier": "NLA_EDITOR", + "name": "Nonlinear Animation", + "value": 13 + }, + { + "description": "Editor for node-based shading and compositing tools", + "identifier": "NODE_EDITOR", + "name": "Node Editor", + "value": 16 + }, + { + "description": "Overview of scene graph and all available data-blocks", + "identifier": "OUTLINER", + "name": "Outliner", + "value": 3 + }, + { + "description": "Edit persistent configuration settings", + "identifier": "PREFERENCES", + "name": "Preferences", + "value": 19 + }, + { + "description": "Edit properties of active object and related data-blocks", + "identifier": "PROPERTIES", + "name": "Properties", + "value": 4 + }, + { + "description": "Non-linear editor for arranging and mixing scenes, video, audio, and effects", + "identifier": "SEQUENCE_EDITOR", + "name": "Video Sequencer", + "value": 8 + }, + { + "description": "Explore geometry data in a table", + "identifier": "SPREADSHEET", + "name": "Spreadsheet", + "value": 23 + }, + { + "description": "Global bar at the bottom of the screen for general status information", + "identifier": "STATUSBAR", + "name": "Status Bar", + "value": 22 + }, + { + "description": "Edit scripts and in-file documentation", + "identifier": "TEXT_EDITOR", + "name": "Text Editor", + "value": 9 + }, + { + "description": "Global bar at the top of the screen for global per-window settings", + "identifier": "TOPBAR", + "name": "Top Bar", + "value": 21 + }, + { + "description": "Manipulate objects in a 3D environment", + "identifier": "VIEW_3D", + "name": "3D Viewport", + "value": 1 + } + ], + "keymaps": [ + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Generic", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Bend", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.breakdown", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Breakdowner", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.cursor3d", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Cursor", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bbone_resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Armature, B-Bone Size", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Armature, Bone Envelope", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.click_extrude", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Armature, Extrude to Cursor", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.extrude_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Armature, Extrude", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Armature, Roll", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Curve Pen", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.draw", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Draw", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.vertex_add", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Extrude to Cursor", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.extrude_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Extrude", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Radius", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.vertex_random", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Randomize", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.tilt", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curve, Tilt", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.draw", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curves, Draw", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curves.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Curves, Pen", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.texture_gradient", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Grease Pencil, Gradient", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.interpolate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Grease Pencil, Interpolate", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.pen", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Grease Pencil, Pen", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.bevel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Bevel", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.bisect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Bisect", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.edge_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Edge Slide", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.extrude_region_shrink_fatten", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Extrude Along Normals", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.extrude_faces_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Extrude Individual", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.extrude_manifold", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Extrude Manifold", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.extrude_context_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Extrude Region", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.dupli_extrude_cursor", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Extrude to Cursor", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.inset", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Inset Faces", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.knife_tool", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Knife", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.loopcut_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Loop Cut", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.offset_edge_loops_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Offset Edge Loop Cut", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.polybuild_delete_at_cursor", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.polybuild_extrude_at_cursor_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.polybuild_face_at_cursor_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Poly Build", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.push_pull", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Push/Pull", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.vertex_random", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Randomize", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.rip_edge_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Rip Edge", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.rip_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Rip Region", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.shrink_fatten", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Shrink/Fatten", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.vertices_smooth", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Smooth", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.spin", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Spin Duplicates", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.spin", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Spin", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.tosphere", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, To Sphere", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.vert_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Edit Mesh, Vertex Slide", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.select_word", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.selection_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Edit Text, Select Text", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.ruler_add", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.ruler_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.ruler_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Measure", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Move", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.interactive_add", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Object, Add Primitive", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_arc", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_arc", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_arc", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Arc", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Box", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Circle", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_curve", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Curve", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_grease_pencil_color", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_grease_pencil_color", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.eyedropper_grease_pencil_color", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.eyedropper_grease_pencil_color", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Eyedropper", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.interpolate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Interpolate", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_line", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_line", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_line", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Line", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_polyline", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.primitive_polyline", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Polyline", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.stroke_trim", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Grease Pencil, Trim", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_gradient", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Paint Weight, Gradient", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_sample_group", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Weight, Sample Vertex Group", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.weight_sample", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_sample", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Paint Weight, Sample Weight", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.push", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Push", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.relax", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Relax", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Rotate", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Scale", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_box_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Box Face Set", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.hide_show", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_all", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Box Hide", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.mask_box_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_box_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Box Mask", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.trim_box_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Box Trim", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.cloth_filter", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Cloth Filter", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.color_filter", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.color_filter", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Color Filter", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_edit", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Face Set Edit", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Lasso Face Set", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_all", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.hide_show_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Lasso Hide", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.mask_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Lasso Mask", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.trim_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Lasso Trim", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Line Face Set", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_all", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.hide_show_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Line Hide", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.mask_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Line Mask", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.project_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Line Project", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.trim_line_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Line Trim", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.mask_by_color", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Mask by Color", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.mesh_filter", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Mesh Filter", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_polyline_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Polyline Face Set", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_polyline_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.hide_show_polyline_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Polyline Hide", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.mask_polyline_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_polyline_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Polyline Mask", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.trim_polyline_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Sculpt, Polyline Trim", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Select Box (fallback)", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Select Box", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Select Circle (fallback)", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Select Circle", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Select Lasso (fallback)", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Select Lasso", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "NORTH", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "SOUTH", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Shear", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.from_gizmo", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "3D View Tool: Transform", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Tweak (fallback)", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View Tool: Tweak", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.camera_to_view", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.clear_render_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.clip_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.copybuffer", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.cursor3d", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.dolly", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "EQUAL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.dolly", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.dolly", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.dolly", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.dolly", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.localview", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MOUSESMARTZOOM", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.localview", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.localview", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.localview_remove_from", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.localview_remove_from", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.navigate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.ndof_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.ndof_orbit", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.ndof_orbit_zoom", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.ndof_pan", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.object_as_camera", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.pastebuffer", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.render_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MOUSEROTATE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.smoothview", + "keyModifier": "NONE", + "mapType": "TIMER", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TIMER1", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.toggle_shading", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.toggle_xray", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "EAST", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "NORTH", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "SOUTH", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "WEST", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_BACK", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_BOTTOM", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FRONT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_BUTTON_FRONT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_LEFT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_RIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_BUTTON_RIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_TOP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_BUTTON_TOP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_camera", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_center_camera", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_center_lock", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_center_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_orbit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_orbit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_orbit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_orbit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_orbit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_9", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_pan", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_pan", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_pan", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_pan", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELLEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELRIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_persportho", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_5", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_roll", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_ROLL_CCW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_roll", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_ROLL_CW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_roll", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_roll", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_selected", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "EQUAL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.zoom_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "COMMA", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "3D View", + "regionType": "WINDOW", + "spaceType": "VIEW_3D" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channel_select_keys", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channel_select_keys", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channel_view_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_click", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_click", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_click", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_click", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_collapse", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_collapse", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_editable_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_expand", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_expand", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_group", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_rename", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_select_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_setting_disable", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_setting_enable", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_setting_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_ungroup", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Animation Channels", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.end_frame_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.previewrange_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.previewrange_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.start_frame_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "Animation", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.align", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.assign_to_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.bone_primitive_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.calculate_roll", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.click_extrude", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.dissolve", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.dissolve", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.extrude_forked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.extrude_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.fill", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.move_to_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.parent_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.roll_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.select_mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.select_similar", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "armature.shortest_path_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.switch_direction", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.bbone_resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + } + ], + "modal": false, + "name": "Armature", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + } + ], + "modal": true, + "name": "Bevel Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.delete_track", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.dopesheet_select_channel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.dopesheet_view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.dopesheet_view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + } + ], + "modal": false, + "name": "Clip Dopesheet Editor", + "regionType": "WINDOW", + "spaceType": "CLIP_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.add_marker_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.clear_track_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.clear_track_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.clear_track_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.copy_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.delete_marker", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.delete_marker", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.delete_track", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.delete_track", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.disable_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.hide_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.hide_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.hide_tracks_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.join_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.keyframe_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.lock_selection_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.lock_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.lock_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.paste_tracks", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.slide_marker", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.slide_plane_marker", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_ndof", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.view_zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.view_zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_in", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_in", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_out", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_out", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + } + ], + "modal": false, + "name": "Clip Editor", + "regionType": "WINDOW", + "spaceType": "CLIP_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.clear_track_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.clear_track_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.clear_track_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_center_current_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_delete_curve", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_delete_curve", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_delete_knot", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_delete_knot", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_disable_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_select_all_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_select_all_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_select_all_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.graph_select_all_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.graph_view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + } + ], + "modal": false, + "name": "Clip Graph Editor", + "regionType": "WINDOW", + "spaceType": "CLIP_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Clip Time Scrub", + "regionType": "PREVIEW", + "spaceType": "CLIP_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.open", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.prefetch", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.track_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "clip.track_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.track_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.track_markers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + } + ], + "modal": false, + "name": "Clip", + "regionType": "WINDOW", + "spaceType": "CLIP_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.clear_line", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.clear_line", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.copy_as_script", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.execute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.execute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.history_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.history_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.indent_or_autocomplete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "console.insert", + "keyModifier": "NONE", + "mapType": "TEXTINPUT", + "oskey": true, + "repeat": true, + "shift": true, + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "console.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.select_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.select_word", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "console.unindent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Console", + "regionType": "WINDOW", + "spaceType": "CONSOLE" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "ANY" + } + ], + "modal": true, + "name": "Curve Pen Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.cyclic_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.dissolve_verts", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.dissolve_verts", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.extrude_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.handle_type_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.make_segment", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.normals_make_consistent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.select_row", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.select_similar", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.shortest_path_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curve.tilt_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curve.vertex_add", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.vertex_parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.tilt", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Curve", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.cyclic_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.extrude_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.handle_type_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curves.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curves.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curves.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.set_selection_domain", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.set_selection_domain", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.tilt_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.tilt", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Curves", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + } + ], + "modal": true, + "name": "Custom Normals Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.extrapolation_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_set_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + } + ], + "modal": false, + "name": "Dopesheet Generic", + "regionType": "WINDOW", + "spaceType": "DOPESHEET_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.bake_keys", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.easing_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.extrapolation_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.handle_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.interpolation_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.keyframe_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.previewrange_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "action.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.view_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "action.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_editable_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_select_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_isolate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ASTERIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.camera_bind", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + } + ], + "modal": false, + "name": "Dopesheet", + "regionType": "WINDOW", + "spaceType": "DOPESHEET_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Eyedropper ColorRamp PointSampling Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Eyedropper Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + } + ], + "modal": false, + "name": "File Browser Buttons", + "regionType": "WINDOW", + "spaceType": "FILE_BROWSER" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "file.highlight", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MOUSEMOVE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.mouse_execute", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.next", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON5MOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.previous", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "file.sort_column_ui_context", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "File Browser Main", + "regionType": "WINDOW", + "spaceType": "FILE_BROWSER" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "asset.library_refresh", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "asset.library_reload_listing", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.bookmark_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.directory_new", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.edit_directory_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.filenum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.next", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.next", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON5MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.next", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.parent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.parent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.previous", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.previous", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.previous", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.refresh", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.rename", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "file.smoothscroll", + "keyModifier": "NONE", + "mapType": "TIMER", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TIMER1", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "file.start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "File Browser", + "regionType": "WINDOW", + "spaceType": "FILE_BROWSER" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "Fill Tool Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.change_character", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.change_character", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.change_spacing", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.change_spacing", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.change_spacing", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.change_spacing", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.line_break", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.line_break", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.style_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.style_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.style_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.style_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.text_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.text_cut", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "font.text_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "font.text_insert", + "keyModifier": "NONE", + "mapType": "TEXTINPUT", + "oskey": true, + "repeat": true, + "shift": true, + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "font.text_paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Font", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.animation_cancel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.animation_cancel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MEDIA_STOP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.animation_play", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MEDIA_PLAY", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.animation_play", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.animation_play", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.frame_offset", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.frame_offset", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.frame_offset", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.frame_offset", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.keyframe_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.keyframe_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MEDIA_FIRST", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.keyframe_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MEDIA_LAST", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.keyframe_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.time_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.time_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + } + ], + "modal": false, + "name": "Frames", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gizmogroup.gizmo_tweak", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gizmogroup.gizmo_tweak", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Generic Gizmo Click Drag", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gizmogroup.gizmo_tweak", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Generic Gizmo Drag", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gizmogroup.gizmo_tweak", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Generic Gizmo Maybe Drag", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gizmogroup.gizmo_tweak", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Generic Gizmo Select", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Generic Gizmo Tweak Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gizmogroup.gizmo_tweak", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Generic Gizmo", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Generic Tool: Annotate Eraser", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Generic Tool: Annotate Line", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Generic Tool: Annotate Polygon", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Generic Tool: Annotate", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "ANY" + } + ], + "modal": true, + "name": "Gesture Box", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "ANY" + } + ], + "modal": true, + "name": "Gesture Lasso", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "ANY" + } + ], + "modal": true, + "name": "Gesture Polyline", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "ANY" + } + ], + "modal": true, + "name": "Gesture Straight Line", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + } + ], + "modal": true, + "name": "Gesture Zoom Border", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_select_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.extrapolation_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.fmodifier_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.local_view", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.local_view", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + } + ], + "modal": false, + "name": "Graph Editor Generic", + "regionType": "WINDOW", + "spaceType": "GRAPH_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.channels_editable_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.bake_keys", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.click_insert", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.click_insert", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.clickselect", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.easing_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.frame_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.handle_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.interpolation_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.keys_to_samples", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.previewrange_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_column", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "graph.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.smooth", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.view_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "graph.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + } + ], + "modal": false, + "name": "Graph Editor", + "regionType": "WINDOW", + "spaceType": "GRAPH_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ERASER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Brush Stroke", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.delete_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.erase_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.erase_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.insert_blank_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.interpolate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.interpolate_sequence", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_isolate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ASTERIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.layer_merge", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.brush_colors_flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Draw Mode", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.cyclical_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.cyclical_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.delete_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.dissolve", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.dissolve", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.extrude_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.insert_blank_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.interpolate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.interpolate_sequence", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.join_fills", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.join_selection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.join_selection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_isolate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ASTERIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.layer_merge", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.reorder", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.reorder", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.reorder", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.reorder", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.separate_fills", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.set_handle_type", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.set_selection_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.set_selection_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.set_selection_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.stroke_split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.tosphere", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Edit Mode", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.fill", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.fill", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Fill Tool", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.delete_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.insert_blank_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.layer_merge", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.sculpt_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.sculpt_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.sculpt_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_menu_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Sculpt Mode", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.select_fill", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.select_similar", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Selection", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.delete_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.insert_blank_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.layer_merge", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.vertex_brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.vertex_brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.brush_colors_flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Vertex Paint", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.delete_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.insert_blank_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.layer_merge", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.layer_reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.weight_brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "grease_pencil.weight_brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.weight_sample", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "grease_pencil.weight_toggle_direction", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil Weight Paint", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "D", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "D", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "D", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "D", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "gpencil.annotate", + "keyModifier": "D", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Grease Pencil", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.primitive_square_add", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Box", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.primitive_circle_add", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Circle", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Cursor", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Move", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Rotate", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Scale", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Select Box (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Select Box", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Select Circle (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Select Circle", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Select Lasso (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Select Lasso", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Transform", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Tweak (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Mask, Tweak", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.sample", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Sample", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Cursor", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_grab", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_grab", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_relax", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Grab", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Move", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_pinch", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_pinch", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_relax", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Pinch", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_relax", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_relax", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.uv_sculpt_relax", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Relax", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.rip_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Rip Region", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Rotate", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Scale", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Select Box (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Select Box", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Select Circle (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Select Circle", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Select Lasso (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Select Lasso", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Tweak (fallback)", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Editor Tool: Uv, Tweak", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.cycle_render_slot", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.cycle_render_slot", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.new", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.open", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.read_viewlayers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.reload", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.save", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.save_as", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Generic", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.brush_colors_flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.grab_clone", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.image_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.image_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.image_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_menu_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image Paint", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.clear_render_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.curves_point_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.curves_point_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.render_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.sample", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_cursor_center", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_ndof", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.view_zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.view_zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_in", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_in", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_out", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_out", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "image.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.mode_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + } + ], + "modal": false, + "name": "Image", + "regionType": "WINDOW", + "spaceType": "IMAGE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "info.report_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.report_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.report_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.report_replay", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "info.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "info.select_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Info", + "regionType": "WINDOW", + "spaceType": "INFO" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "Interpolate Tool Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + } + ], + "modal": true, + "name": "Knife Tool Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "lattice.flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "lattice.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "lattice.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "lattice.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "lattice.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "lattice.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "lattice.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.vertex_parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.tosphere", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Lattice", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.camera_bind", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.duplicate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "marker.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + } + ], + "modal": false, + "name": "Markers", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "clip.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.add_feather_vertex_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.add_vertex_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.copy_splines", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.cyclic_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.handle_type_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.hide_view_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.hide_view_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.hide_view_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.move_to_layer", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.new", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.normals_make_consistent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.parent_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.paste_splines", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mask.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.shape_key_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.shape_key_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.slide_point", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mask.slide_spline_curvature", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.tosphere", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Mask Editing", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "Mesh Filter Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.bevel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.bevel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.dissolve_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.dissolve_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.dupli_extrude_cursor", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.dupli_extrude_cursor", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.edge_face_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.edgering_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.edgering_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.fill", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.inset", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.knife_tool", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.knife_tool", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.loop_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.loop_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.loopcut_slide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.normals_make_consistent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.normals_make_consistent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.offset_edge_loops_slide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.point_normals", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.quads_convert_to_tris", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.quads_convert_to_tris", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.rip_edge_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.rip_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.rip_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_next_item", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_prev_item", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.shortest_path_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.shortest_path_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.tris_convert_to_quads", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.vert_connect_path", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.vertex_group_remove_from", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.vertex_parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.edge_crease", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.shrink_fatten", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.skin_resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.tosphere", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.vert_slide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.edit_mesh_extrude_move_normal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Mesh", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.delete_metaelems", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.delete_metaelems", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.hide_metaelems", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.hide_metaelems", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.reveal_metaelems", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mball.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mball.select_similar", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.metaball_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Metaball", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.actionclip_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.apply_scale", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.clear_scale", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.click_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.click_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.duplicate_linked_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.fmodifier_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.make_single_user", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.meta_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.meta_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.move_down", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.move_up", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.mute_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.previewrange_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.select_leftright", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.select_leftright", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.soundclip_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.swap", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.transition_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.view_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + } + ], + "modal": false, + "name": "NLA Editor", + "regionType": "WINDOW", + "spaceType": "NLA_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.channels_select_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tweakmode_enter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tweakmode_enter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tweakmode_exit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tweakmode_exit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + } + ], + "modal": false, + "name": "NLA Generic", + "regionType": "WINDOW", + "spaceType": "NLA_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.channels_click", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.channels_click", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tracks_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "nla.tracks_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tracks_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "nla.tracks_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "NLA Tracks", + "regionType": "WINDOW", + "spaceType": "NLA_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.add_reroute", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.backimage_fit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.backimage_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.backimage_sample", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.backimage_zoom", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.backimage_zoom", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.clipboard_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.clipboard_paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.connect_to_output", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.connect_to_output", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.connect_to_output", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.delete_reconnect", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.delete_reconnect", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.detach", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.duplicate_move_keep_inputs", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.duplicate_move_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.find_node", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.group_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.group_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.group_enter_exit", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.group_make", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.group_separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.group_ungroup", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.hide_socket_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.hide_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.join_named", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.join_nodes", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.link", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.link", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.link_make", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.link_make", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.links_cut", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.links_mute", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.move_detach_links", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.move_detach_links_release", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.mute_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.preview_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.read_viewlayers", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.render_changed", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_grouped", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_grouped", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_link_viewer", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_linked_from", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_linked_to", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_same_type_step", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_same_type_step", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.translate_attach", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.translate_attach", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.viewer_shortcut_get", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.viewer_shortcut_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Editor", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Generic", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "ANY" + } + ], + "modal": true, + "name": "Node Link Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Node Resize Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.add_reroute", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Tool: Add Reroute", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.links_cut", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Tool: Links Cut", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.links_mute", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Tool: Mute Links", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Node Tool: Select Box (fallback)", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Node Tool: Select Box", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Node Tool: Select Circle (fallback)", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Tool: Select Circle", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Node Tool: Select Lasso (fallback)", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Node Tool: Select Lasso", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Tool: Tweak (fallback)", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "node.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Node Tool: Tweak", + "regionType": "WINDOW", + "spaceType": "NODE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_delete_v3d", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keying_set_active_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "collection.create", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "collection.objects_add_active", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "collection.objects_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "collection.objects_remove_active", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "collection.objects_remove_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.duplicate_move_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_view_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_view_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_view_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.join", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.location_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.parent_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.rotation_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.scale_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_grouped", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.transform_axis_target", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + } + ], + "modal": false, + "name": "Object Mode", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.mode_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.transfer_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.object_mode_pie_or_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + } + ], + "modal": false, + "name": "Object Non-modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.hide_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.clear_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.collection_exclude_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.collection_exclude_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.collection_new", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.drivers_add_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.drivers_delete_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.expanded_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.highlight_update", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MOUSEMOVE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.id_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.id_paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.item_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_drag_drop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_drag_drop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_openclose", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_openclose", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_openclose", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_rename", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.item_rename", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.keyingset_add_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.keyingset_remove_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.operation", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.scroll_page", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.scroll_page", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.select_walk", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.show_active", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.show_active", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.show_active", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.show_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.show_one_level", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.show_one_level", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "outliner.start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "outliner.unhide_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Outliner", + "regionType": "WINDOW", + "spaceType": "OUTLINER" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paintcurve.add_point_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paintcurve.cursor", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.delete_point", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.delete_point", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.draw", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.draw", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paintcurve.slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Paint Curve", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.face_select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_vert_reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Paint Face Mask (Weight, Vertex, Texture)", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + } + ], + "modal": true, + "name": "Paint Stroke Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_vert_reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vert_select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vert_select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Paint Vertex Selection (Weight, Vertex)", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.brush_edit", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.brush_edit", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "particle.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "particle.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "particle.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "particle.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "particle.weight_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Particle", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "ANY" + } + ], + "modal": true, + "name": "Pen Tool Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pointcloud.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pointcloud.separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.bend", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + } + ], + "modal": false, + "name": "Point Cloud", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_delete_v3d", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keying_set_active_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.assign_to_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "armature.move_to_collection", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.parent_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.blend_to_neighbor", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.breakdown", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.constraint_add_with_targets", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.constraints_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.ik_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.ik_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.loc_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.push", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.quaternions_flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.relax", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.rot_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.rotation_mode_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.scale_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_grouped", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_hierarchy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "pose.select_mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "pose.select_parent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.bbone_resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "Pose", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "preferences.clear_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "preferences.start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preferences", + "regionType": "WINDOW", + "spaceType": "PREFERENCES" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "preferences.clear_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "preferences.start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preferences_nav", + "regionType": "UI", + "spaceType": "PREFERENCES" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Cursor", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Move", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Rotate", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.sample", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preview Tool: Sample", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Scale", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preview Tool: Select Box (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preview Tool: Select Box", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Select Circle (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preview Tool: Select Circle", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Select Lasso (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Select Lasso", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Preview Tool: Tweak (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preview Tool: Tweak", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_delete_vse", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keying_set_active_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.mute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.mute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.preview_duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.preview_duplicate_move_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_transform_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_transform_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_transform_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_cursor_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_deselect_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_edit_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_edit_cut", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_edit_mode_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_edit_paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_insert", + "keyModifier": "NONE", + "mapType": "TEXTINPUT", + "oskey": true, + "repeat": true, + "shift": true, + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_line_break", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.text_line_break", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.text_select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.unmute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_all_preview", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_all_preview", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_ghost_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.view_zoom_ratio", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + } + ], + "modal": false, + "name": "Preview", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + } + ], + "modal": true, + "name": "Primitive Tool Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "buttons.clear_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "buttons.context_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "buttons.start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "constraint.apply", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "constraint.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "constraint.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "constraint.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.add_modifier_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.modifier_apply", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.modifier_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.modifier_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.modifier_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.modifier_set_active", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.shaderfx_copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.shaderfx_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.shaderfx_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.space_context_cycle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.space_context_cycle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_modifier_duplicate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_modifier_set_active", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Property Editor", + "regionType": "WINDOW", + "spaceType": "PROPERTIES" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.region_context_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Region Context Menu", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.actionzone", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.actionzone", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.actionzone", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.area_dupli", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.area_join", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.area_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.area_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.area_move", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.area_options", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.area_split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.area_swap", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.quadview_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACTIONZONE_REGION_QUAD", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.region_scale", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACTIONZONE_REGION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.screen_full_area", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACTIONZONE_FULLSCREEN", + "value": "ANY" + } + ], + "modal": false, + "name": "Screen Editing", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "asset.catalog_redo", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "asset.catalog_undo", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ed.redo", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ed.undo", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.cancel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.execute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "file.execute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "render.play_rendered_anim", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F11", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "render.render", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F12", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "render.render", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F12", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "render.render", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F12", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "render.render", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F12", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "render.view_cancel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "render.view_show", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F11", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "screen.animation_step", + "keyModifier": "NONE", + "mapType": "TIMER", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TIMER0", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.redo_last", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F9", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "screen.region_blend", + "keyModifier": "NONE", + "mapType": "TIMER", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TIMERREGION", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.region_quadview", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.repeat_last", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.screen_full_area", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.screen_full_area", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.space_context_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.space_context_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.userpref_show", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "COMMA", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.workspace_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "screen.workspace_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + } + ], + "modal": false, + "name": "Screen", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "curves.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.set_selection_domain", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "curves.set_selection_domain", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt_curves.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt_curves.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt_curves.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt_curves.min_distance_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt_curves.select_grow", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Sculpt Curves", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": true, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_CTRL", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": true, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + } + ], + "modal": true, + "name": "Sculpt Expand Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.asset_activate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.subdivision_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "object.voxel_remesh", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "object.voxel_size_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.brush_colors_flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.hide_show_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.mask_box_gesture", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_flood_fill", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.mask_flood_fill", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.mask_lasso_gesture", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.visibility_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.visibility_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.brush_stroke", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.color_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.detail_flood_fill", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.dyntopo_detail_size_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.expand", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.expand", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.expand", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.expand", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_change_visibility", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.face_set_change_visibility", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.face_set_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sculpt.face_set_edit", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sculpt.set_pivot_position", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_menu_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Sculpt", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.rename_channel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.rename_channel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Sequencer Channels", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.box_blade", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.box_blade", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.box_blade", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.box_blade", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + } + ], + "modal": false, + "name": "Sequencer Tool: Blade", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Sequencer Tool: Select Box (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Sequencer Tool: Select Box", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Sequencer Tool: Select Circle (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Sequencer Tool: Select Circle", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Sequencer Tool: Select Lasso (fallback)", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + } + ], + "modal": false, + "name": "Sequencer Tool: Select Lasso", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.slip", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.slip", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Sequencer Tool: Slip", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "marker.add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.connect", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.duplicate_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.duplicate_move_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.gap_insert", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "EQUAL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.gap_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.gap_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.images_separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.lock", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.meta_make", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.meta_separate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.meta_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.mute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.mute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.offset_clear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.reassign_inputs", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.reload", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.reload", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.retiming_key_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.retiming_key_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.retiming_segment_speed_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.retiming_show", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_box", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_grouped", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_side_of_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.select_side_of_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.slip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.snap", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "EIGHT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FIVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NINE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SEVEN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SIX", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.split_multicam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ZERO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.strip_jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.swap", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.swap", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.swap_inputs", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.unlock", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.unmute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.unmute", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_all", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_frame", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_selected", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "sequencer.view_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.seq_slide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.seq_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.seq_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.seq_slide", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.transform", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_set_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + } + ], + "modal": false, + "name": "Sequencer", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Slip Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "spreadsheet.fit_column", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "spreadsheet.reorder_columns", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "spreadsheet.resize_column", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "Spreadsheet Generic", + "regionType": "WINDOW", + "spaceType": "SPREADSHEET" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Standard Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.find_set_selected", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.jump", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "J", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.replace", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.start_find", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + } + ], + "modal": false, + "name": "Text Generic", + "regionType": "WINDOW", + "spaceType": "TEXT_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.comment_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SLASH", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "INSERT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.cut", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.cut", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.duplicate_line", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.indent_or_autocomplete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "text.insert", + "keyModifier": "NONE", + "mapType": "TEXTINPUT", + "oskey": true, + "repeat": true, + "shift": true, + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.line_break", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.line_break", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "text.line_number", + "keyModifier": "NONE", + "mapType": "TEXTINPUT", + "oskey": true, + "repeat": true, + "shift": true, + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move_lines", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move_lines", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "END", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.move_select", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.new", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.open", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.overwrite_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "INSERT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "INSERT", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.reload", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.run_script", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.save", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.save_as", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.scroll_bar", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.scroll_bar", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "text.select_line", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.select_word", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.selection_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.selection_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "text.unindent", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_cycle_int", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Text", + "regionType": "WINDOW", + "spaceType": "TEXT_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.change_frame", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "Time Scrub", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "Toolbar Popup", + "regionType": "TEMPORARY", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + } + ], + "modal": true, + "name": "Transform Axis Target Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": true, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + } + ], + "modal": true, + "name": "Transform Modal Map", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "mesh.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.mirror", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.resize", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.rotate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "transform.shear", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "transform.translate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.copy", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.cursor_set", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.custom_region_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.hide", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.mark_seam", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.move_on_axis", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.paste", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.pin", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.pin", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.rip_move", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_box", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_circle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_edge_ring", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_edge_ring", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_lasso", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_less", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_linked", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_linked_pick", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "L", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_loop", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_mode", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.select_more", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_pinned", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "P", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_similar", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.select_split", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Y", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.shortest_path_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "uv.shortest_path_pick", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "uv.stitch", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "U", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_menu_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "FOUR", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "Z", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "UV Editor", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.driver_button_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "anim.driver_button_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_clear_button", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_delete_button", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyframe_insert_button", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "I", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyingset_button_add", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "anim.keyingset_button_remove", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.copy_data_path_button", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.copy_data_path_button", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_bone", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_colorramp", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_colorramp_point", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_depth", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.eyedropper_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.list_start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.reset_default_button", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DEL", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_delete", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_focus", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_focus", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_navigate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_navigate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_navigate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_navigate", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_rename", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_item_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.view_item_select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "ui.view_scroll", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "ui.view_start_filter", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "User Interface", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "brush.stencil_control", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.brush_colors_flip", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.face_vert_reveal", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "H", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.sample_color", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vertex_color_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vertex_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.vertex_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.vertex_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_menu_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Vertex Paint", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "sequencer.refresh_all", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "T", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.context_toggle_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.tool_set_by_id", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "Video Sequence Editor", + "regionType": "WINDOW", + "spaceType": "SEQUENCE_EDITOR" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.reset", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "HOME", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_down", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_down", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_up", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_up", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroller_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroller_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_in", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_out", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + } + ], + "modal": false, + "name": "View2D Buttons List", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.ndof", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.pan", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_down", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_down", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_left", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELLEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_left", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.scroll_left", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_right", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.scroll_right", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_right", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELRIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_up", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroll_up", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroller_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.scroller_activate", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.smoothview", + "keyModifier": "NONE", + "mapType": "TIMER", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TIMER1", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view2d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_border", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "B", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_in", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_in", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_out", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view2d.zoom_out", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELOUTMOUSE", + "value": "PRESS" + } + ], + "modal": false, + "name": "View2D", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D Dolly Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": true, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": true, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D Fly Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "WHEELUPMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D Gesture Circle", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D Move Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + } + ], + "modal": true, + "name": "View3D Placement Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "RELEASE" + } + ], + "modal": true, + "name": "View3D Rotate Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "C", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "M", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D VR Location Scouting Capture Review Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "A", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "COMMA", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "D", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "D", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "DOWN_ARROW", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "E", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "ESC", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "F", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "G", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_ARROW", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": true, + "shift": true, + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": true, + "shift": true, + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "PERIOD", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "Q", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "R", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "R", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RET", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_ARROW", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "S", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TAB", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "UP_ARROW", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "V", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "V", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "W", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": true, + "repeat": false, + "shift": true, + "type": "W", + "value": "RELEASE" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Z", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D Walk Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": true, + "repeat": false, + "shift": true, + "type": "RIGHTMOUSE", + "value": "PRESS" + } + ], + "modal": true, + "name": "View3D Zoom Modal", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "brush.scale_size", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": true, + "shift": false, + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_gradient", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_gradient", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "A", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.weight_paint", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "paint.weight_sample", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.weight_sample_group", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "paint.weight_set", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "X", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "view3d.select", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": true, + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_asset_shelf_popover", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "K", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "APP", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "MOUSE", + "oskey": false, + "repeat": false, + "shift": false, + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_menu_enum", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "E", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "ONE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "THREE", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_toggle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "TWO", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.radial_control", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F", + "value": "PRESS" + } + ], + "modal": false, + "name": "Weight Paint", + "regionType": "WINDOW", + "spaceType": "EMPTY" + }, + { + "items": [ + { + "active": true, + "alt": true, + "any": true, + "ctrl": true, + "direction": "ANY", + "idname": "info.reports_display_update", + "keyModifier": "NONE", + "mapType": "TIMER", + "oskey": true, + "repeat": false, + "shift": true, + "type": "TIMER_REPORT", + "value": "ANY" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F10", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F11", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F12", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F3", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F5", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F6", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F7", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F8", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "screen.space_type_set_or_cycle", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "F9", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.batch_rename", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F4", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "N", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F2", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.call_panel", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_MENU", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_scale_float", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_scale_float", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_BUTTON_MINUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_scale_float", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": false, + "type": "NDOF_BUTTON_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.context_scale_float", + "keyModifier": "NONE", + "mapType": "NDOF", + "oskey": false, + "repeat": false, + "shift": true, + "type": "NDOF_BUTTON_PLUS", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.doc_view_manual_ui_context", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F1", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.open_mainfile", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "O", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.quit_blender", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "Q", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.save_as_mainfile", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.save_mainfile", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": true, + "direction": "ANY", + "idname": "wm.save_mainfile", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "S", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.search_menu", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "F3", + "value": "PRESS" + }, + { + "active": true, + "alt": false, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.toolbar", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": true, + "type": "SPACE", + "value": "PRESS" + }, + { + "active": true, + "alt": true, + "any": false, + "ctrl": false, + "direction": "ANY", + "idname": "wm.toolbar_fallback_pie", + "keyModifier": "NONE", + "mapType": "KEYBOARD", + "oskey": false, + "repeat": false, + "shift": false, + "type": "W", + "value": "PRESS" + } + ], + "modal": false, + "name": "Window", + "regionType": "WINDOW", + "spaceType": "EMPTY" + } + ], + "nextTask": "M15-01F", + "operation": "BLENDER_EDITOR_INVENTORY", + "regionTypes": [ + { + "description": "", + "identifier": "ASSET_SHELF", + "name": "Asset Shelf", + "value": 14 + }, + { + "description": "", + "identifier": "ASSET_SHELF_HEADER", + "name": "Asset Shelf Header", + "value": 15 + }, + { + "description": "", + "identifier": "CHANNELS", + "name": "Channels", + "value": 2 + }, + { + "description": "", + "identifier": "EXECUTE", + "name": "Execute Buttons", + "value": 10 + }, + { + "description": "", + "identifier": "FOOTER", + "name": "Footer", + "value": 11 + }, + { + "description": "", + "identifier": "HEADER", + "name": "Header", + "value": 1 + }, + { + "description": "", + "identifier": "HUD", + "name": "Floating Region", + "value": 8 + }, + { + "description": "", + "identifier": "NAVIGATION_BAR", + "name": "Navigation Bar", + "value": 9 + }, + { + "description": "", + "identifier": "PREVIEW", + "name": "Preview", + "value": 7 + }, + { + "description": "", + "identifier": "SCRUBBING", + "name": "Scrubbing", + "value": 16 + }, + { + "description": "", + "identifier": "TEMPORARY", + "name": "Temporary", + "value": 3 + }, + { + "description": "", + "identifier": "TOOLS", + "name": "Tools", + "value": 5 + }, + { + "description": "", + "identifier": "TOOL_HEADER", + "name": "Tool Header", + "value": 12 + }, + { + "description": "", + "identifier": "TOOL_PROPS", + "name": "Tool Properties", + "value": 6 + }, + { + "description": "", + "identifier": "UI", + "name": "Sidebar", + "value": 4 + }, + { + "description": "", + "identifier": "WINDOW", + "name": "Window", + "value": 0 + }, + { + "description": "", + "identifier": "XR", + "name": "XR", + "value": 13 + } + ], + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "schemaVersion": 1, + "sourceAnchor": "blender-5.2.0/source/blender/editors", + "spaceClasses": [ + { + "className": "SpaceClipEditor", + "properties": [ + { + "identifier": "annotation_source", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "blend_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "clip", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "clip_user", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 2, + "identifier": "cursor_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lock_selection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "lock_time_cursor", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "mask", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "mask_display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mask_overlay_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "path_length", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "pivot_point", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "scopes", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_annotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_blue_channel", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_bundles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_disabled", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_filters", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_navigate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_graph_frames", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_graph_hidden", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_graph_only_selected", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_graph_tracks_error", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_graph_tracks_motion", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_green_channel", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_marker_pattern", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_marker_search", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_mask_overlay", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_mask_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_metadata", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_names", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_red_channel", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_channels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_seconds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_stable", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_tiny_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_track_path", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_grayscale_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_manual_calibration", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mute_footage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "view", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "zoom_percentage", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "SpaceClipEditor" + }, + { + "className": "SpaceConsole", + "properties": [ + { + "arrayLength": 0, + "identifier": "font_size", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "history", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "language", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "prompt", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "scrollback", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "select_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "select_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "SpaceConsole" + }, + { + "className": "SpaceDopeSheetEditor", + "properties": [ + { + "arrayLength": 0, + "identifier": "cache_cloth", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cache_dynamicpaint", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cache_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cache_rigidbody", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cache_simulation_nodes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cache_smoke", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "cache_softbody", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "dopesheet", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "overlays", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_extremes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_interpolation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_pose_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_channels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_footer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_seconds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_sliders", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "ui_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_merge_keyframes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_marker_sync", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_realtime_update", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SpaceDopeSheetEditor" + }, + { + "className": "SpaceFileBrowser", + "properties": [ + { + "identifier": "active_operator", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "bookmarks", + "readOnly": false, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "bookmarks_active", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "browse_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "operator", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "params", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "recent_folders", + "readOnly": false, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "recent_folders_active", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_tool_props", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "system_bookmarks", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "system_bookmarks_active", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "system_folders", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "system_folders_active", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "SpaceFileBrowser" + }, + { + "className": "SpaceGraphEditor", + "properties": [ + { + "arrayLength": 0, + "identifier": "cursor_position_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cursor_position_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "dopesheet", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "has_ghost_curves", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "pivot_point", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_cursor", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_extrapolation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_handles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_channels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_footer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_seconds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_sliders", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_lock_translation_axis", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_auto_merge_keyframes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_auto_normalization", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_normalization", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_only_selected_keyframe_handles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_realtime_update", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SpaceGraphEditor" + }, + { + "className": "SpaceImageEditor", + "properties": [ + { + "identifier": "annotation", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "blend_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "cursor_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "display_channels", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "image", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "image_user", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "mask", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "mask_display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mask_overlay_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "pivot_point", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "sample_histogram", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "scopes", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_annotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_active_node", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_navigate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_mask_overlay", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_mask_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_maskedit", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_paint", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_asset_shelf", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_tool_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_repeat", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_sequencer_scene", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_stereo_3d", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_uvedit", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "ui_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_image_pin", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_realtime_update", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "uv_editor", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 2, + "identifier": "zoom", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "zoom_percentage", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "SpaceImageEditor" + }, + { + "className": "SpaceInfo", + "properties": [ + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_report_debug", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_report_error", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_report_info", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_report_operator", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_report_warning", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "SpaceInfo" + }, + { + "className": "SpaceNLA", + "properties": [ + { + "identifier": "dopesheet", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_local_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_channels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_footer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_seconds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_strip_curves", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_realtime_update", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SpaceNLA" + }, + { + "className": "SpaceNodeEditor", + "properties": [ + { + "identifier": "backdrop_channels", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "backdrop_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "backdrop_zoom", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "cursor_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "edit_tree", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "id", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "id_from", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "insert_offset_direction", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "node_tree", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "node_tree_sub_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "path", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "pin", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "selected_node_group", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "shader_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_annotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_backdrop", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_active_node", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_asset_shelf", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "supports_previews", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "texture_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "tree_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "SpaceNodeEditor" + }, + { + "className": "SpaceOutliner", + "properties": [ + { + "identifier": "display_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filter_id_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "filter_invert", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "filter_state", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filter_text", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "lib_override_view_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "scroll_to_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_mode_column", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_enable", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_holdout", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_indirect_only", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_restrict_column_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_filter_case_sensitive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_complete", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_id_type", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_lib_override_system", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_armature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_content", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_empty", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_light", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_object_others", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_filter_view_layers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sort_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sync_select", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SpaceOutliner" + }, + { + "className": "SpacePreferences", + "properties": [ + { + "identifier": "filter_text", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filter_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "search_filter", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tab_search_results", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "SpacePreferences" + }, + { + "className": "SpaceProperties", + "properties": [ + { + "identifier": "context", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "outliner_sync", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "pin_id", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "search_filter", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_bone", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_bone_constraints", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_constraints", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_effects", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_material", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_modifiers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_object", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_output", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_physics", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_scene", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_strip", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_strip_modifier", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_texture", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_tool", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_view_layer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_properties_world", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tab_search_results", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_pin_id", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SpaceProperties" + }, + { + "className": "SpaceSequenceEditor", + "properties": [ + { + "identifier": "annotation", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "cache_overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 2, + "identifier": "cursor_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "display_channel", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "display_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "overlay_frame_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "preview_channels", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "preview_overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "proxy_render_size", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_frames", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_context", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_navigate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_tool", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_markers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_overexposed", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_overlays", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_channels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_footer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_tool_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_scrubbing_region", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_seconds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_transform_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "timeline_overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_clamp_view", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_marker_sync", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proxies", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_zoom_to_fit", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "view_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "zoom_percentage", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "SpaceSequenceEditor" + }, + { + "className": "SpaceSpreadsheet", + "properties": [ + { + "identifier": "attribute_domain", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "geometry_component_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "geometry_item_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_pinned", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "object_eval_state", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "row_filters", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "show_internal_attributes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_only_selected", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_channels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_footer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "tables", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_filter", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "viewer_path", + "readOnly": true, + "type": "POINTER" + } + ], + "rnaIdentifier": "SpaceSpreadsheet" + }, + { + "className": "SpaceTextEditor", + "properties": [ + { + "identifier": "find_text", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "font_size", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "margin_column", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "replace_text", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "show_line_highlight", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_line_numbers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_margin", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_footer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_syntax_highlight", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_word_wrap", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tab_width", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "text", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "top", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_find_all", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_find_wrap", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_live_edit", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_match_case", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_overwrite", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_lines", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "SpaceTextEditor" + }, + { + "className": "SpaceView3D", + "properties": [ + { + "identifier": "camera", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "clip_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clip_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "icon_from_show_object_viewport", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "lens", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "local_view", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "lock_bone", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "lock_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "lock_cursor", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "lock_object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mirror_xr_session", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "overlay", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "region_3d", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "region_quadviews", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "render_border_max_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "render_border_max_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "render_border_min_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "render_border_min_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "shading", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "show_bundle_names", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_camera_path", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_camera_dof_distance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_camera_lens", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_context", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_empty_force_field", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_empty_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_light_look_at", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_light_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_modifier", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_navigate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_object_rotate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_object_scale", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_object_translate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_gizmo_tool", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_locked_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_armature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_curves", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_empty", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_lattice", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_light", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_light_probe", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_meta", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_pointcloud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_speaker", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_surf", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_select_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_armature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_curves", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_empty", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_font", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_lattice", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_light", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_light_probe", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_mesh", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_meta", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_pointcloud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_speaker", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_surf", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_object_viewport_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_reconstruction", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_asset_shelf", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_hud", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_tool_header", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_toolbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_region_ui", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_stereo_3d_cameras", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_stereo_3d_convergence_plane", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_stereo_3d_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "stereo_3d_camera", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "stereo_3d_convergence_plane_alpha", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "stereo_3d_eye", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "stereo_3d_volume_alpha", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tracks_display_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "tracks_display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_local_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_local_collections", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_render_border", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "SpaceView3D" + } + ], + "spaceTypes": [ + { + "description": "Motion tracking tools", + "identifier": "CLIP_EDITOR", + "name": "Movie Clip Editor", + "value": 20 + }, + { + "description": "Interactive programmatic console for advanced editing and script development", + "identifier": "CONSOLE", + "name": "Python Console", + "value": 18 + }, + { + "description": "Adjust timing of keyframes", + "identifier": "DOPESHEET_EDITOR", + "name": "Dope Sheet", + "value": 12 + }, + { + "description": "", + "identifier": "EMPTY", + "name": "Empty", + "value": 0 + }, + { + "description": "Browse for files and assets", + "identifier": "FILE_BROWSER", + "name": "File Browser", + "value": 5 + }, + { + "description": "Edit drivers and keyframe interpolation", + "identifier": "GRAPH_EDITOR", + "name": "Graph Editor", + "value": 2 + }, + { + "description": "View and edit images and UV Maps", + "identifier": "IMAGE_EDITOR", + "name": "UV/Image Editor", + "value": 6 + }, + { + "description": "Log of operations, warnings and error messages", + "identifier": "INFO", + "name": "Info", + "value": 7 + }, + { + "description": "Combine and layer Actions", + "identifier": "NLA_EDITOR", + "name": "Nonlinear Animation", + "value": 13 + }, + { + "description": "Editor for node-based shading and compositing tools", + "identifier": "NODE_EDITOR", + "name": "Node Editor", + "value": 16 + }, + { + "description": "Overview of scene graph and all available data-blocks", + "identifier": "OUTLINER", + "name": "Outliner", + "value": 3 + }, + { + "description": "Edit persistent configuration settings", + "identifier": "PREFERENCES", + "name": "Preferences", + "value": 19 + }, + { + "description": "Edit properties of active object and related data-blocks", + "identifier": "PROPERTIES", + "name": "Properties", + "value": 4 + }, + { + "description": "Non-linear editor for arranging and mixing scenes, video, audio, and effects", + "identifier": "SEQUENCE_EDITOR", + "name": "Video Sequencer", + "value": 8 + }, + { + "description": "Explore geometry data in a table", + "identifier": "SPREADSHEET", + "name": "Spreadsheet", + "value": 23 + }, + { + "description": "Global bar at the bottom of the screen for general status information", + "identifier": "STATUSBAR", + "name": "Status Bar", + "value": 22 + }, + { + "description": "Edit scripts and in-file documentation", + "identifier": "TEXT_EDITOR", + "name": "Text Editor", + "value": 9 + }, + { + "description": "Global bar at the top of the screen for global per-window settings", + "identifier": "TOPBAR", + "name": "Top Bar", + "value": 21 + }, + { + "description": "Manipulate objects in a 3D environment", + "identifier": "VIEW_3D", + "name": "3D Viewport", + "value": 1 + } + ], + "summary": { + "areaTypeCount": 19, + "keymapCount": 280, + "keymapItemCount": 3228, + "regionTypeCount": 17, + "spaceClassCount": 16, + "spaceTypeCount": 19, + "workspaceModeCount": 13 + }, + "task": "M15-01E", + "workspaceModes": [ + { + "description": "", + "identifier": "EDIT", + "name": "Edit Mode", + "value": 1 + }, + { + "description": "Edit Grease Pencil Strokes", + "identifier": "EDIT_GPENCIL", + "name": "Grease Pencil Edit Mode", + "value": 128 + }, + { + "description": "", + "identifier": "OBJECT", + "name": "Object Mode", + "value": 0 + }, + { + "description": "Paint Grease Pencil Strokes", + "identifier": "PAINT_GREASE_PENCIL", + "name": "Grease Pencil Draw", + "value": 256 + }, + { + "description": "", + "identifier": "PARTICLE_EDIT", + "name": "Particle Edit", + "value": 32 + }, + { + "description": "", + "identifier": "POSE", + "name": "Pose Mode", + "value": 64 + }, + { + "description": "", + "identifier": "SCULPT", + "name": "Sculpt Mode", + "value": 2 + }, + { + "description": "Sculpt Grease Pencil Strokes", + "identifier": "SCULPT_GREASE_PENCIL", + "name": "Grease Pencil Sculpt Mode", + "value": 512 + }, + { + "description": "", + "identifier": "TEXTURE_PAINT", + "name": "Texture Paint", + "value": 16 + }, + { + "description": "Grease Pencil Vertex Paint Strokes", + "identifier": "VERTEX_GREASE_PENCIL", + "name": "Grease Pencil Vertex Paint", + "value": 2048 + }, + { + "description": "", + "identifier": "VERTEX_PAINT", + "name": "Vertex Paint", + "value": 4 + }, + { + "description": "Grease Pencil Weight Paint Strokes", + "identifier": "WEIGHT_GREASE_PENCIL", + "name": "Grease Pencil Weight Paint", + "value": 1024 + }, + { + "description": "", + "identifier": "WEIGHT_PAINT", + "name": "Weight Paint", + "value": 8 + } + ] +} diff --git a/tests/golden/M15-01E/editor-inventory-check-report.json b/tests/golden/M15-01E/editor-inventory-check-report.json new file mode 100644 index 00000000..4a21c742 --- /dev/null +++ b/tests/golden/M15-01E/editor-inventory-check-report.json @@ -0,0 +1,33 @@ +{ + "schemaVersion": 1, + "task": "M15-01E", + "operation": "BLENDER_EDITOR_INVENTORY_CHECK", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "summary": { + "areaTypeCount": 19, + "keymapCount": 280, + "keymapItemCount": 3228, + "regionTypeCount": 17, + "spaceClassCount": 16, + "spaceTypeCount": 19, + "workspaceModeCount": 13 + }, + "firstArea": "CLIP_EDITOR", + "lastKeymap": "Window", + "inventorySha256": "6293b5c5bc23c8a73fdde553a5173ac1da25a08c8158af5ec81f4b0f864a5064", + "nextTask": "M15-01F" +} diff --git a/tests/golden/M15-01E/manifest.json b/tests/golden/M15-01E/manifest.json new file mode 100644 index 00000000..13fe85e7 --- /dev/null +++ b/tests/golden/M15-01E/manifest.json @@ -0,0 +1,40 @@ +{ + "schemaVersion": 1, + "task": "M15-01E", + "parentTask": "M15-01D", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_EDITOR", + "operation": "BLENDER_EDITOR_INVENTORY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-01D/manifest.json", + "sha256": "d72b912b22b2eaed8bf0971d750d51aac074195b36f2a4d3315e6dddd84fdbf4" + }, + "generator": { + "path": "tools/web/generate-blender-editor-inventory.py", + "sha256": "287c04d7d11068fc28c8aac3a70f12dc6a0631a894c88e4e8d28752e54214274" + }, + "checker": { + "path": "tools/web/check-blender-editor-inventory.mjs", + "sha256": "dd4fe1c82ed6f6d9eff9bb1abd017a1066ec7d95f76867d33a4e76112ed7b754" + }, + "inventory": { + "path": "tests/golden/M15-01E/blender-editor-inventory.json", + "sha256": "6293b5c5bc23c8a73fdde553a5173ac1da25a08c8158af5ec81f4b0f864a5064" + }, + "report": { + "path": "tests/golden/M15-01E/editor-inventory-check-report.json", + "sha256": "cc88dd114f215100e28cefc9180e56204bd7694217047e5c6db1e79059966235" + }, + "runtime": { + "path": "build_blender_5.2.0/bin/blender", + "sha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-01F" +} diff --git a/tests/golden/M15-01F/blender-core-inventory.json b/tests/golden/M15-01F/blender-core-inventory.json new file mode 100644 index 00000000..c5a43ea8 --- /dev/null +++ b/tests/golden/M15-01F/blender-core-inventory.json @@ -0,0 +1,13077 @@ +{ + "classes": [ + { + "className": "Action", + "family": "Core", + "properties": [ + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 2, + "identifier": "curve_frame_range", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "frame_range", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_action_layered", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_action_legacy", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_empty", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "layers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "pose_markers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cyclic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_frame_range", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Action" + }, + { + "className": "Armature", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "axes_position", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bones", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "collections", + "readOnly": false, + "type": "COLLECTION" + }, + { + "identifier": "collections_all", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "edit_bones", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editmode", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "pose_position", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "relation_line_position", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_axes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_bone_colors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_bone_custom_shapes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_names", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Armature" + }, + { + "className": "Brush", + "family": "Core", + "properties": [ + { + "arrayLength": 0, + "identifier": "area_radius_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "auto_smooth_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "blend", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "blur_kernel_radius", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "blur_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "boundary_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "boundary_falloff_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "boundary_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "brush_capabilities", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "cloth_constraint_softbody_strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cloth_damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "cloth_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "cloth_force_falloff_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "cloth_mass", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cloth_sim_falloff", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cloth_sim_limit", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "cloth_simulation_area_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "crease_pinch_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "cursor_color_add", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "cursor_color_subtract", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cursor_overlay_alpha", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "curve_distance_falloff", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curve_distance_falloff_preset", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "curve_jitter", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curve_random_hue", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curve_random_saturation", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curve_random_value", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curve_size", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curve_strength", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curves_sculpt_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "curves_sculpt_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "dash_ratio", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "dash_samples", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "deform_target", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "density", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "direction", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "disconnected_distance_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "elastic_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "elastic_deform_volume_preservation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "falloff_angle", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "falloff_shape", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "fill_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "flow", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "gpencil_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "gpencil_sculpt_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "gpencil_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "gpencil_vertex_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "gpencil_weight_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "grad_spacing", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "gradient", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "gradient_fill_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "gradient_stroke_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "hardness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "has_unsaved_changes", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hue_jitter", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "image_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "image_paint_capabilities", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "input_samples", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "invert_density_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_flow_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_hardness_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_to_scrape_fill", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_wet_mix_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "invert_wet_persistence_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "jitter", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "jitter_absolute", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "jitter_unit", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "mask_overlay_alpha", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "mask_stencil_dimension", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "mask_stencil_pos", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mask_texture", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "mask_texture_slot", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "mask_tool", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "mesh_automasking_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "minimum_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "multiplane_scrape_angle", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "normal_radius_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "normal_weight", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "paint_curve", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "plane_depth", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "plane_height", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "plane_inversion_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "plane_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "plane_trim", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "pose_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pose_ik_segments", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "pose_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "pose_origin_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "pose_smooth_iterations", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "project_ray_direction_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "rake_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rate", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "saturation_jitter", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "sculpt_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "sculpt_capabilities", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "sculpt_plane", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "secondary_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sharp_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_multiplane_scrape_planes_preview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "size", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "slide_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "smear_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "smooth_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "smooth_stroke_radius", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "snake_hook_deform_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "spacing", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "stabilize_normal", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "stabilize_plane", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "stencil_dimension", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 2, + "identifier": "stencil_pos", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "strength", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "stroke_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "surface_smooth_current_vertex", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "surface_smooth_iterations", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "surface_smooth_shape_preservation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "texture_overlay_alpha", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "texture_sample_bias", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture_slot", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "tilt_strength_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tip_roundness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tip_scale_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "topology_rake_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "unprojected_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_accumulate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_adaptive_space", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_bidirectional", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cloth_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cloth_pin_simulation_boundary", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_color_as_displacement", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_color_jitter", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_connected_only", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_overlay", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_cursor_overlay_override", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_density_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_edge_to_edge", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_flow_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_frontface", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_frontface_falloff", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_grab_active_vertex", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_grab_silhouette", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_hardness_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_inverse_smooth_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "use_locked_size", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_multiplane_scrape_dynamic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_offset_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_original_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_original_plane", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_antialiasing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_image", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_sculpt", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_sculpt_curves", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_uv_sculpt", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_vertex", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_weight", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_persistent", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_plane_trim", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pose_ik_anchored", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pose_lock_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pressure_area_radius", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pressure_jitter", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "use_pressure_masking", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_pressure_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pressure_spacing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pressure_strength", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_primary_overlay", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_primary_overlay_override", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_random_press_hue", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_random_press_sat", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_random_press_val", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "use_scene_spacing", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_secondary_overlay", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_secondary_overlay_override", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth_stroke", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_space_attenuation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stroke_random_hue", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stroke_random_sat", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stroke_random_val", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_vertex_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_wet_mix_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_wet_persistence_pressure", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "value_jitter", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "vertex_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "vertex_paint_capabilities", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "weight", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "weight_brush_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "weight_paint_capabilities", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "wet_mix", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wet_paint_radius_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "wet_persistence", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "Brush" + }, + { + "className": "Curve", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "bevel_depth", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bevel_factor_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bevel_factor_mapping_end", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bevel_factor_mapping_start", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "bevel_factor_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "bevel_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bevel_object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bevel_profile", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "bevel_resolution", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "dimensions", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "eval_time", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "extrude", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "fill_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "fill_rule", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "fill_solver", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editmode", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "path_duration", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "render_resolution_u", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "render_resolution_v", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_u", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_v", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "shape_keys", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "splines", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "taper_object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "taper_radius_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "texspace_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "texspace_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "twist_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "twist_smooth", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_auto_texspace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_deform_bounds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fill_caps", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_map_taper", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_path", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_path_clamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_path_follow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_radius", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stretch", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Curve" + }, + { + "className": "Curves", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "color_attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "curve_offset_data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "curves", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "normals", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "points", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "position_data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "selection_domain", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "surface", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "surface_collision_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "surface_uv_map", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sculpt_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Curves" + }, + { + "className": "GreasePencil", + "family": "Core", + "properties": [ + { + "arrayLength": 3, + "identifier": "after_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 3, + "identifier": "before_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "color_attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "ghost_after_range", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "ghost_before_range", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "layer_groups", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "layers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "onion_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "onion_keyframe_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "onion_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "root_nodes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "stroke_depth_order", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_autolock_layers", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_ghost_custom_colors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_onion_fade", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_onion_loop", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "GreasePencil" + }, + { + "className": "ID", + "family": "Core", + "properties": [ + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "ID" + }, + { + "className": "Image", + "family": "Core", + "properties": [ + { + "identifier": "alpha_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "channels", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "colorspace_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "depth", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "display_aspect", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "file_format", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "filepath_raw", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_duration", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 4, + "identifier": "generated_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "generated_height", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "generated_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "generated_width", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "has_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_dirty", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_float", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_multiview", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_stereo_3d", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "packed_file", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "packed_files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "pixels", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "render_slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 2, + "identifier": "resolution", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "seam_margin", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "size", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "source", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "stereo_3d_format", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "tiles", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_deinterlace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_generated_float", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_half_precision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_view_as_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "views_format", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "Image" + }, + { + "className": "Key", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "eval_time", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "key_blocks", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "reference_key", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_relative", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "user", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Key" + }, + { + "className": "Lattice", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "interpolation_type_u", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "interpolation_type_v", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "interpolation_type_w", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editmode", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "points", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "points_u", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "points_v", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "points_w", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "shape_keys", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_outside", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "vertex_group", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "Lattice" + }, + { + "className": "Mask", + "family": "Core", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_layer_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "layers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Mask" + }, + { + "className": "MetaBall", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "elements", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editmode", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "render_resolution", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "resolution", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "texspace_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "texspace_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "update_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_texspace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "MetaBall" + }, + { + "className": "MovieClip", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "annotation", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "colorspace_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 2, + "identifier": "display_aspect", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "fps", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_duration", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_offset", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "proxy", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "size", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "source", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "tracking", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proxy", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_proxy_custom_directory", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "MovieClip" + }, + { + "className": "Palette", + "family": "Core", + "properties": [ + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "colors", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Palette" + }, + { + "className": "ParticleSettings", + "family": "Core", + "properties": [ + { + "identifier": "active_instanceweight", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_instanceweight_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_texture", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_texture_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "adaptive_angle", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "adaptive_pixel", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "angular_velocity_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "angular_velocity_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "apply_effector_to_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "apply_guide_to_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "bending_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "boids", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "branch_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "brownian_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_length_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_parting_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_parting_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_parting_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_percent", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "child_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_roundness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "child_size_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "child_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "clump_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "clump_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clump_noise_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clump_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "collision_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "color_maximum", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "courant_target", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "create_long_hair_children", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "damping", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "display_color", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "display_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "display_percentage", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "display_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "display_step", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "distribution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "drag_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "effect_hair", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "effector_amount", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "effector_weights", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "emit_from", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "factor_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "fluid", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "force_field_1", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "force_field_2", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "grid_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "grid_resolution", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "hair_length", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hair_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "hexagonal_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "instance_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "instance_object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "instance_weights", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "integrator", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "invert_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_fluid", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "jitter_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "keyed_loops", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "keys_step", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "kink", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "kink_amplitude", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_amplitude_clump", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_amplitude_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "kink_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "kink_axis_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_extra_steps", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "kink_flat", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_frequency", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "kink_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "length_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "lifetime", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lifetime_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "line_length_head", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "line_length_tail", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lock_boids_to_surface", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mass", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "material", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "material_slot", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "normal_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "object_align_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "object_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "particle_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "particle_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "path_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "path_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "phase_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "phase_factor_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "physics_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "radius_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "react_event", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "reactor_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "render_step", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "render_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "rendered_child_count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "root_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "rotation_factor_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "rotation_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "roughness_1", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_1_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_2", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_2_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_2_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "roughness_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "roughness_end_shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness_endpoint", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "shape", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_guide_hairs", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_hair_grid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_health", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_number", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_size", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_unborn", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_velocity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "size_random", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "subframes", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tangent_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tangent_phase", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture_slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "time_tweak", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "timestep", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tip_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "trail_count", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "twist", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "twist_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_absolute_path_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_adaptive_subframes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_advanced_hair", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_close_tip", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clump_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_clump_noise", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collection_count", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_collection_pick_random", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dead", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_die_on_collision", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dynamic_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_emit_random", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_even_distribution", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_global_instance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_hair_bspline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_modifier_stack", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiply_size_mass", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_parent_particles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_react_multiple", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_react_start_end", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_regrow_hair", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_render_adaptive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotation_instance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_rotations", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_roughness_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_scale_instance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_self_effect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_size_deflect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_strand_primitive", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_twist_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_velocity_length", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_whole_collection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "userjit", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "virtual_parents", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "ParticleSettings" + }, + { + "className": "PointCloud", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "color_attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "points", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "PointCloud" + }, + { + "className": "Sound", + "family": "Core", + "properties": [ + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "channels", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "packed_file", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "samplerate", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_memory_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mono", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Sound" + }, + { + "className": "Speaker", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "attenuation", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cone_angle_inner", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cone_angle_outer", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cone_volume_outer", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "distance_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "distance_reference", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "muted", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "pitch", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "sound", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "volume", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "volume_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "volume_min", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "Speaker" + }, + { + "className": "Text", + "family": "Core", + "properties": [ + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "current_character", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "current_line", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "current_line_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "indentation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_dirty", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_in_memory", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_modified", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "lines", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select_end_character", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "select_end_line", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "select_end_line_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_module", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Text" + }, + { + "className": "Volume", + "family": "Core", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "display", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "frame_duration", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_offset", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "grids", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_sequence", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "packed_file", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "render", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "sequence_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "velocity_grid", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "velocity_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "velocity_unit", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "velocity_x_grid", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "velocity_y_grid", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "velocity_z_grid", + "readOnly": true, + "type": "STRING" + } + ], + "rnaIdentifier": "Volume" + }, + { + "className": "Depsgraph", + "family": "Depsgraph", + "properties": [ + { + "identifier": "ids", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "mode", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "object_instances", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "scene", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "scene_eval", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "updates", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "view_layer", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "view_layer_eval", + "readOnly": true, + "type": "POINTER" + } + ], + "rnaIdentifier": "Depsgraph" + }, + { + "className": "DepsgraphObjectInstance", + "family": "Depsgraph", + "properties": [ + { + "identifier": "instance_object", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "is_instance", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 16, + "identifier": "matrix_world", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "object", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "orco", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "parent", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "particle_system", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 8, + "identifier": "persistent_id", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "random_id", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_particles", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_self", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "uv", + "readOnly": true, + "type": "FLOAT" + } + ], + "rnaIdentifier": "DepsgraphObjectInstance" + }, + { + "className": "DepsgraphUpdate", + "family": "Depsgraph", + "properties": [ + { + "identifier": "id", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "is_updated_geometry", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_updated_shading", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_updated_transform", + "readOnly": true, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "DepsgraphUpdate" + }, + { + "className": "BlendData", + "family": "Main", + "properties": [ + { + "identifier": "actions", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "all_ids", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "annotations", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "armatures", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "brushes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "cache_files", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "cameras", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "collections", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "colorspace", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "curves", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "filepath", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "fonts", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "grease_pencils", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "hair_curves", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "images", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "is_dirty", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_saved", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "lattices", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "libraries", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "lightprobes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "lights", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "linestyles", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "masks", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "meshes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "metaballs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "movieclips", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "node_groups", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "paint_curves", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "palettes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "particles", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "pointclouds", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "scenes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "screens", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "shape_keys", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "sounds", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "speakers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "texts", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "textures", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "use_autopack", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "version", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "volumes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "window_managers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "workspaces", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "worlds", + "readOnly": true, + "type": "COLLECTION" + } + ], + "rnaIdentifier": "BlendData" + }, + { + "className": "BlendDataActions", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataActions" + }, + { + "className": "BlendDataAnnotations", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataAnnotations" + }, + { + "className": "BlendDataArmatures", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataArmatures" + }, + { + "className": "BlendDataBrushes", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataBrushes" + }, + { + "className": "BlendDataCacheFiles", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataCacheFiles" + }, + { + "className": "BlendDataCameras", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataCameras" + }, + { + "className": "BlendDataCollections", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataCollections" + }, + { + "className": "BlendDataCurves", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataCurves" + }, + { + "className": "BlendDataFonts", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataFonts" + }, + { + "className": "BlendDataGreasePencilsV3", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataGreasePencilsV3" + }, + { + "className": "BlendDataHairCurves", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataHairCurves" + }, + { + "className": "BlendDataImages", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataImages" + }, + { + "className": "BlendDataLattices", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataLattices" + }, + { + "className": "BlendDataLibraries", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataLibraries" + }, + { + "className": "BlendDataLights", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataLights" + }, + { + "className": "BlendDataLineStyles", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataLineStyles" + }, + { + "className": "BlendDataMasks", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataMasks" + }, + { + "className": "BlendDataMaterials", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataMaterials" + }, + { + "className": "BlendDataMeshes", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataMeshes" + }, + { + "className": "BlendDataMetaBalls", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataMetaBalls" + }, + { + "className": "BlendDataMovieClips", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataMovieClips" + }, + { + "className": "BlendDataNodeTrees", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataNodeTrees" + }, + { + "className": "BlendDataObjects", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataObjects" + }, + { + "className": "BlendDataPaintCurves", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataPaintCurves" + }, + { + "className": "BlendDataPalettes", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataPalettes" + }, + { + "className": "BlendDataParticles", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataParticles" + }, + { + "className": "BlendDataPointClouds", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataPointClouds" + }, + { + "className": "BlendDataProbes", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataProbes" + }, + { + "className": "BlendDataScenes", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataScenes" + }, + { + "className": "BlendDataScreens", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataScreens" + }, + { + "className": "BlendDataSounds", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataSounds" + }, + { + "className": "BlendDataSpeakers", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataSpeakers" + }, + { + "className": "BlendDataTexts", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataTexts" + }, + { + "className": "BlendDataTextures", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataTextures" + }, + { + "className": "BlendDataVolumes", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataVolumes" + }, + { + "className": "BlendDataWindowManagers", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataWindowManagers" + }, + { + "className": "BlendDataWorkSpaces", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataWorkSpaces" + }, + { + "className": "BlendDataWorlds", + "family": "Main", + "properties": [], + "rnaIdentifier": "BlendDataWorlds" + }, + { + "className": "Attribute", + "family": "Mesh", + "properties": [ + { + "identifier": "data_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "domain", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_internal", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_required", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "storage_type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "Attribute" + }, + { + "className": "AttributeGroupMesh", + "family": "Mesh", + "properties": [ + { + "identifier": "active", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "active_color", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_color_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_color_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "active_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "default_color_name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "render_color_index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "AttributeGroupMesh" + }, + { + "className": "BoolAttribute", + "family": "Mesh", + "properties": [ + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "data_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "domain", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_internal", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_required", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "storage_type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "BoolAttribute" + }, + { + "className": "ByteColorAttribute", + "family": "Mesh", + "properties": [ + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "data_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "domain", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_internal", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_required", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "storage_type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "ByteColorAttribute" + }, + { + "className": "FloatAttribute", + "family": "Mesh", + "properties": [ + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "data_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "domain", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_internal", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_required", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "storage_type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "FloatAttribute" + }, + { + "className": "IntAttribute", + "family": "Mesh", + "properties": [ + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "data_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "domain", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_internal", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_required", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "storage_type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "IntAttribute" + }, + { + "className": "Mesh", + "family": "Mesh", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "auto_texspace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "color_attributes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "corner_normals", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "edges", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "has_custom_normals", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editmode", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "loop_triangle_polygons", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "loop_triangles", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "loops", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "materials", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "normals_domain", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "polygon_normals", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "polygons", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "radial_symmetry", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "remesh_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "remesh_voxel_adaptivity", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "remesh_voxel_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "shape_keys", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "skin_vertices", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texco_mesh", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "texspace_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "texspace_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "texture_mesh", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "total_edge_sel", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "total_face_sel", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "total_vert_sel", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use_auto_texspace", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_topology", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_vertex_groups", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mirror_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_bone_selection", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_mask", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_paint_mask_vertex", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_remesh_fix_poles", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_remesh_preserve_attributes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_remesh_preserve_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "uv_layer_clone", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "uv_layer_clone_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "uv_layer_stencil", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "uv_layer_stencil_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "uv_layers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "vertex_colors", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "vertex_normals", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "vertices", + "readOnly": true, + "type": "COLLECTION" + } + ], + "rnaIdentifier": "Mesh" + }, + { + "className": "MeshAutomaskingSettings", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "boundary_edges_propagation_steps", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "cavity_blur_steps", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "cavity_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "cavity_curve_op", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "cavity_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "start_normal_falloff", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "start_normal_limit", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_boundary_edges", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_boundary_face_sets", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_cavity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_cavity_inverted", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_custom_cavity_curve", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_face_sets", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_start_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_topology", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_view_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_automasking_view_occlusion", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "view_normal_falloff", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "view_normal_limit", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshAutomaskingSettings" + }, + { + "className": "MeshCacheModifier", + "family": "Mesh", + "properties": [ + { + "identifier": "cache_format", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "deform_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "eval_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "eval_frame", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "eval_time", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 3, + "identifier": "flip_axis", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "forward_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "frame_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "interpolation", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "play_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "time_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vertex_group", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "MeshCacheModifier" + }, + { + "className": "MeshDeformModifier", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "invert_vertex_group", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_bound", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "precision", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dynamic_bind", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "vertex_group", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "MeshDeformModifier" + }, + { + "className": "MeshEdge", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "is_loose", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_edge_sharp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_seam", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "vertices", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "MeshEdge" + }, + { + "className": "MeshEdges", + "family": "Mesh", + "properties": [], + "rnaIdentifier": "MeshEdges" + }, + { + "className": "MeshLoop", + "family": "Mesh", + "properties": [ + { + "arrayLength": 3, + "identifier": "bitangent", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "bitangent_sign", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "edge_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "normal", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "tangent", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "vertex_index", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "MeshLoop" + }, + { + "className": "MeshLoopColor", + "family": "Mesh", + "properties": [ + { + "arrayLength": 4, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshLoopColor" + }, + { + "className": "MeshLoopColorLayer", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "active_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "MeshLoopColorLayer" + }, + { + "className": "MeshLoopTriangle", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "area", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "loops", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "material_index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "normal", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "polygon_index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 9, + "identifier": "split_normals", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_smooth", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "vertices", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "MeshLoopTriangle" + }, + { + "className": "MeshLoopTriangles", + "family": "Mesh", + "properties": [], + "rnaIdentifier": "MeshLoopTriangles" + }, + { + "className": "MeshLoops", + "family": "Mesh", + "properties": [], + "rnaIdentifier": "MeshLoops" + }, + { + "className": "MeshNormalValue", + "family": "Mesh", + "properties": [ + { + "arrayLength": 3, + "identifier": "vector", + "readOnly": true, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshNormalValue" + }, + { + "className": "MeshPolygon", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "area", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "center", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "loop_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "loop_total", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "material_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "normal", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_smooth", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "vertices", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "MeshPolygon" + }, + { + "className": "MeshPolygons", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "active", + "readOnly": false, + "type": "INT" + } + ], + "rnaIdentifier": "MeshPolygons" + }, + { + "className": "MeshSequenceCacheModifier", + "family": "Mesh", + "properties": [ + { + "identifier": "cache_file", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object_path", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "read_data", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_vertex_interpolation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "velocity_scale", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshSequenceCacheModifier" + }, + { + "className": "MeshSkinVertex", + "family": "Mesh", + "properties": [ + { + "arrayLength": 2, + "identifier": "radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "use_loose", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_root", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "MeshSkinVertex" + }, + { + "className": "MeshSkinVertexLayer", + "family": "Mesh", + "properties": [ + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + } + ], + "rnaIdentifier": "MeshSkinVertexLayer" + }, + { + "className": "MeshStatVis", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "distort_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "distort_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "overhang_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "overhang_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "overhang_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sharp_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sharp_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "thickness_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "thickness_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "thickness_samples", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "MeshStatVis" + }, + { + "className": "MeshToVolumeModifier", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "density", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "interior_band_width", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "object", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "resolution_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "voxel_amount", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "voxel_size", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshToVolumeModifier" + }, + { + "className": "MeshUVLoop", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "pin_uv", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 2, + "identifier": "uv", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshUVLoop" + }, + { + "className": "MeshUVLoopLayer", + "family": "Mesh", + "properties": [ + { + "arrayLength": 0, + "identifier": "active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "active_clone", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "active_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "data", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "pin", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "uv", + "readOnly": true, + "type": "COLLECTION" + } + ], + "rnaIdentifier": "MeshUVLoopLayer" + }, + { + "className": "MeshVertex", + "family": "Mesh", + "properties": [ + { + "arrayLength": 3, + "identifier": "co", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "groups", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "hide", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "index", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 3, + "identifier": "normal", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "undeformed_co", + "readOnly": true, + "type": "FLOAT" + } + ], + "rnaIdentifier": "MeshVertex" + }, + { + "className": "MeshVertices", + "family": "Mesh", + "properties": [], + "rnaIdentifier": "MeshVertices" + }, + { + "className": "Camera", + "family": "Scene", + "properties": [ + { + "arrayLength": 0, + "identifier": "angle", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "angle_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "angle_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "background_images", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "central_cylindrical_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "central_cylindrical_range_u_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "central_cylindrical_range_u_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "central_cylindrical_range_v_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "central_cylindrical_range_v_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clip_end", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "clip_start", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "composition_guide_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "custom_bytecode", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "custom_bytecode_hash", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "custom_filepath", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "custom_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "custom_shader", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "cycles_custom", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "display_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "dof", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "fisheye_fov", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fisheye_lens", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fisheye_polynomial_k0", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fisheye_polynomial_k1", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fisheye_polynomial_k2", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fisheye_polynomial_k3", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fisheye_polynomial_k4", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "latitude_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "latitude_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "lens", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "lens_unit", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "longitude_max", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "longitude_min", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "ortho_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "panorama_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "passepartout_alpha", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "sensor_fit", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "sensor_height", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sensor_width", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "shift_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shift_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_background_images", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_center", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_center_diagonal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_golden", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_golden_tria_a", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_golden_tria_b", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_harmony_tri_a", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_harmony_tri_b", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_composition_thirds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_limits", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_mist", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_name", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_passepartout", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_safe_areas", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_safe_center", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_sensor", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "stereo", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Camera" + }, + { + "className": "Collection", + "family": "Scene", + "properties": [ + { + "arrayLength": 0, + "identifier": "active_exporter_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "all_objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "children", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "collection_children", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "collection_objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "color_tag", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "exporters", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "hide_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "instance_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 8, + "identifier": "lineart_intersection_mask", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "lineart_intersection_priority", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "lineart_usage", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "lineart_use_intersection_mask", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_lineart_intersection_priority", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Collection" + }, + { + "className": "Constraint", + "family": "Scene", + "properties": [ + { + "arrayLength": 0, + "identifier": "active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "enabled", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "error_location", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "error_rotation", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "influence", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_valid", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "mute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "owner_space", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "space_object", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "space_subtarget", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "target_space", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + } + ], + "rnaIdentifier": "Constraint" + }, + { + "className": "LayerCollection", + "family": "Scene", + "properties": [ + { + "identifier": "children", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "collection", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "exclude", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "holdout", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "indirect_only", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_visible", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": true, + "type": "STRING" + } + ], + "rnaIdentifier": "LayerCollection" + }, + { + "className": "Light", + "family": "Scene", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "cutoff_distance", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "diffuse_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "exposure", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "node_tree", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "normalize", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "specular_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "temperature", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "temperature_color", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "transmission_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_custom_distance", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_nodes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_temperature", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "volume_factor", + "readOnly": false, + "type": "FLOAT" + } + ], + "rnaIdentifier": "Light" + }, + { + "className": "Material", + "family": "Scene", + "properties": [ + { + "arrayLength": 0, + "identifier": "alpha_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "blend_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 4, + "identifier": "diffuse_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "displacement_method", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "grease_pencil", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_grease_pencil", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 4, + "identifier": "line_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "line_priority", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "lineart", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "max_vertex_displacement", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "metallic", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "node_tree", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "paint_active_slot", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "paint_clone_slot", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "pass_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview_render_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "refraction_depth", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "roughness", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_transparent_back", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "specular_color", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "specular_intensity", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "surface_render_method", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "texture_paint_images", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "texture_paint_slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "thickness_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_backface_culling", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backface_culling_lightprobe_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_backface_culling_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_nodes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preview_world", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_raytrace_refraction", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_screen_refraction", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sss_translucency", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_thickness_from_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_transparency_overlap", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_transparent_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "volume_intersection_method", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "Material" + }, + { + "className": "Modifier", + "family": "Scene", + "properties": [ + { + "arrayLength": 0, + "identifier": "execution_time", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "is_active", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_override_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "persistent_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_expanded", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_editmode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_on_cage", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_apply_on_spline", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pin_to_last", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "Modifier" + }, + { + "className": "NodeTree", + "family": "Scene", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "annotation", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "bl_description", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_icon", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bl_idname", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "bl_label", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "bl_use_group_interface", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "color_tag", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "default_group_node_width", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "description", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "interface", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "links", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "nodes", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 2, + "identifier": "view_center", + "readOnly": true, + "type": "FLOAT" + } + ], + "rnaIdentifier": "NodeTree" + }, + { + "className": "Object", + "family": "Scene", + "properties": [ + { + "identifier": "active_material", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_material_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "active_selection_set", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_shape_key", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_shape_key_index", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "add_rest_position_attribute", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "animation_visualization", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 24, + "identifier": "bound_box", + "readOnly": true, + "type": "FLOAT" + }, + { + "identifier": "collision", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 4, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "constraints", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "delta_location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "delta_rotation_euler", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "delta_rotation_quaternion", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "delta_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "dimensions", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "display", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "display_bounds_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "empty_display_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "empty_display_type", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "empty_image_depth", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 2, + "identifier": "empty_image_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "empty_image_side", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "field", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "hide_probe_plane", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_probe_sphere", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_probe_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_select", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_surface_pick", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "hide_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "image_user", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "instance_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "instance_faces_scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "instance_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_from_instancer", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_from_set", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_holdout", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_instancer", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_shadow_catcher", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "light_linking", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "lightgroup", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "lineart", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "location", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "lock_location", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "lock_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "lock_rotation_w", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "lock_rotations_4d", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 3, + "identifier": "lock_scale", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "material_slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 16, + "identifier": "matrix_basis", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 16, + "identifier": "matrix_local", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 16, + "identifier": "matrix_parent_inverse", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 16, + "identifier": "matrix_world", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "mode", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "modifiers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "motion_path", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "parent", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "parent_bone", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "parent_bone_head_tail_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "parent_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 3, + "identifier": "parent_vertices", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "particle_systems", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "pass_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "pose", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "rigid_body", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "rigid_body_constraint", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 4, + "identifier": "rotation_axis_angle", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "rotation_euler", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "rotation_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 4, + "identifier": "rotation_quaternion", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "scale", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "selection_sets", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "shader_effects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "shadow_terminator_geometry_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shadow_terminator_normal_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "shadow_terminator_shading_offset", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "show_all_edges", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_axis", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_bounds", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_empty_image_only_axis_aligned", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_empty_image_orthographic", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_empty_image_perspective", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_in_front", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_instancer_for_render", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_instancer_for_viewport", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_name", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_only_shape_key", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_texture_space", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_transparent", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_wire", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "soft_body", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "track_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "type", + "readOnly": true, + "type": "ENUM" + }, + { + "identifier": "up_axis", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_camera_lock_parent", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_dynamic_topology_sculpting", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_empty_image_alpha", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_grease_pencil_lights", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_instance_faces_scale", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_instance_vertices_rotation", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_mirror_x", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_mirror_y", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_mesh_mirror_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_parent_final_indices", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_shape_key_edit_mode", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_simulation_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "vertex_groups", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "visible_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_diffuse", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_glossy", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_raycast", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_transmission", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "visible_volume_scatter", + "readOnly": false, + "type": "BOOLEAN" + } + ], + "rnaIdentifier": "Object" + }, + { + "className": "RenderSettings", + "family": "Scene", + "properties": [ + { + "identifier": "anisotropic_filter", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "bake", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "border_max_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "border_max_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "border_min_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "border_min_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "compositor_denoise_device", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "compositor_denoise_final_quality", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "compositor_denoise_preview_quality", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "compositor_device", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "compositor_precision", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "dither_intensity", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "engine", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "ffmpeg", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "file_extension", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "filepath", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "film_transparent", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "filter_size", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "fps", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "fps_base", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_map_new", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_map_old", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "hair_subdiv", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "hair_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "has_multiple_engines", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "image_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "is_movie_format", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "line_thickness", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "line_thickness_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "metadata_input", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "motion_blur_position", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "motion_blur_shutter", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "motion_blur_shutter_curve", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "pixel_aspect_x", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "pixel_aspect_y", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ppm_base", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "ppm_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "preview_pixel_size", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "resolution_percentage", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_x", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "resolution_y", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "save_output", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "sequencer_gl_preview", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "simplify_child_particles", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "simplify_child_particles_render", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil_antialiasing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil_modifier", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil_onplay", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil_shader_fx", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil_tint", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_gpencil_view_fill", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simplify_subdivision", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "simplify_subdivision_render", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "simplify_volumes", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 4, + "identifier": "stamp_background", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "stamp_font_size", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 4, + "identifier": "stamp_foreground", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "stamp_note_text", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "stereo_views", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "threads", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "threads_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "use_auto_generate_texture_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_border", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_compositing", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_crop_to_border", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_file_extension", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_freestyle", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_high_quality_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_lock_interface", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_motion_blur", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_multiview", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_overwrite", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_persistent_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_placeholder", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_render_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sequencer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sequencer_override_scene_strip", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_simplify", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_simplify_normals", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_single_layer", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_spherical_stereo", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_camera", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_date", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_filename", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_frame", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_frame_range", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_hostname", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_labels", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_lens", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_marker", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_memory", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_note", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_render_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_scene", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_sequencer_strip", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_stamp_time", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_texture_cache", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "views", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "views_format", + "readOnly": false, + "type": "ENUM" + } + ], + "rnaIdentifier": "RenderSettings" + }, + { + "className": "Scene", + "family": "Scene", + "properties": [ + { + "identifier": "active_clip", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "allow_preroll", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "annotation", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "audio_distance_model", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "audio_doppler_factor", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "audio_doppler_speed", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "audio_volume", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "background_set", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "camera", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "collection", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "compositing_node_group", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "cursor", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "cycles_curves", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "display", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "display_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "eevee", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "frame_current", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_current_final", + "readOnly": true, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_float", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "frame_preview_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_preview_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_start", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_step", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "frame_subframe", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 3, + "identifier": "gravity", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "grease_pencil_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "hydra", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_nla_tweakmode", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "keying_sets", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "keying_sets_all", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "lock_frame_selection_to_range", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "playback_loop_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "render", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "rigidbody_world", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "safe_areas", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "sequence_editor", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "sequencer_colorspace_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_keys_from_selected_only", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_subframe", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "simulation_frame_end", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "simulation_frame_start", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "sync_mode", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "time_jump_delta", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "time_jump_unit", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "timeline_markers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "tool_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "transform_orientation_slots", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "unit_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "use_audio", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_audio_scrub", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_custom_simulation_range", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_gravity", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_nodes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_preview_range", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "use_stamp_note", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "view_layers", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "view_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "world", + "readOnly": false, + "type": "POINTER" + } + ], + "rnaIdentifier": "Scene" + }, + { + "className": "Screen", + "family": "Scene", + "properties": [ + { + "identifier": "areas", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_animation_playing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_scrubbing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_temporary", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "show_fullscreen", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "show_statusbar", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_follow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_3d_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_animation_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_clip_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_image_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_node_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_properties_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_sequence_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_spreadsheet_editors", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_play_top_left_3d_editor", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Screen" + }, + { + "className": "ViewLayer", + "family": "Scene", + "properties": [ + { + "identifier": "active_aov", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_aov_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "active_layer_collection", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "active_lightgroup", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "active_lightgroup_index", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "aovs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "depsgraph", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "eevee", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "freestyle_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "has_export_collections", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "layer_collection", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "lightgroups", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "material_override", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "objects", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "pass_alpha_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "pass_cryptomatte_depth", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "samples", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "use", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_ao", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_freestyle", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_motion_blur", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_ambient_occlusion", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_combined", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_cryptomatte_accurate", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_cryptomatte_asset", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_cryptomatte_material", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_cryptomatte_object", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_diffuse_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_diffuse_direct", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_diffuse_indirect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_emit", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_environment", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_glossy_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_glossy_direct", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_glossy_indirect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_grease_pencil", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_material_index", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_mist", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_normal", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_object_index", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_position", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_subsurface_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_subsurface_direct", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_subsurface_indirect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_transmission_color", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_transmission_direct", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_transmission_indirect", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_uv", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_vector", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_pass_z", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sky", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_solid", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_strand", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_volumes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "world_override", + "readOnly": false, + "type": "POINTER" + } + ], + "rnaIdentifier": "ViewLayer" + }, + { + "className": "Window", + "family": "Scene", + "properties": [ + { + "arrayLength": 0, + "identifier": "height", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "modal_operators", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "parent", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "scene", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "screen", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "stereo_3d_display", + "readOnly": true, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "support_hdr_color", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "identifier": "view_layer", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "width", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "workspace", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 0, + "identifier": "x", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "y", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "Window" + }, + { + "className": "WindowManager", + "family": "Scene", + "properties": [ + { + "identifier": "addon_filter", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "addon_search", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "addon_support", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "addon_tags", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "asset_path_dummy", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "extension_repo_filter", + "readOnly": false, + "type": "ENUM" + }, + { + "identifier": "extension_search", + "readOnly": false, + "type": "STRING" + }, + { + "arrayLength": 0, + "identifier": "extension_show_panel_available", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extension_show_panel_installed", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "extension_tags", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "extension_type", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "extension_use_filter", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "extensions_blocked", + "readOnly": false, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "extensions_updates", + "readOnly": false, + "type": "INT" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_event_handling_break", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_interface_locked", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "keyconfigs", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "operators", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "poselib_previous_action", + "readOnly": false, + "type": "POINTER" + }, + { + "identifier": "preset_name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "reports", + "readOnly": true, + "type": "COLLECTION" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + }, + { + "identifier": "windows", + "readOnly": true, + "type": "COLLECTION" + }, + { + "identifier": "xr_session_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "xr_session_state", + "readOnly": true, + "type": "POINTER" + } + ], + "rnaIdentifier": "WindowManager" + }, + { + "className": "World", + "family": "Scene", + "properties": [ + { + "identifier": "animation_data", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "asset_data", + "readOnly": false, + "type": "POINTER" + }, + { + "arrayLength": 3, + "identifier": "color", + "readOnly": false, + "type": "FLOAT" + }, + { + "identifier": "cycles", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "cycles_visibility", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "id_type", + "readOnly": true, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "is_editable", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_embedded_data", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_evaluated", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_library_indirect", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_linked_packed", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_missing", + "readOnly": true, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "is_runtime_data", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "identifier": "library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "library_weak_reference", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "light_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "lightgroup", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "mist_settings", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "name", + "readOnly": false, + "type": "STRING" + }, + { + "identifier": "name_full", + "readOnly": true, + "type": "STRING" + }, + { + "identifier": "node_tree", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "original", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "override_library", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "preview", + "readOnly": true, + "type": "POINTER" + }, + { + "identifier": "probe_resolution", + "readOnly": false, + "type": "ENUM" + }, + { + "arrayLength": 0, + "identifier": "session_uid", + "readOnly": true, + "type": "INT" + }, + { + "arrayLength": 0, + "identifier": "sun_angle", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_shadow_filter_radius", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_shadow_jitter_overblur", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_shadow_maximum_resolution", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "sun_threshold", + "readOnly": false, + "type": "FLOAT" + }, + { + "arrayLength": 0, + "identifier": "tag", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_eevee_finite_volume", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_extra_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_fake_user", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_nodes", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sun_shadow", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "use_sun_shadow_jitter", + "readOnly": false, + "type": "BOOLEAN" + }, + { + "arrayLength": 0, + "identifier": "users", + "readOnly": true, + "type": "INT" + } + ], + "rnaIdentifier": "World" + } + ], + "nextTask": "M15-02A", + "operation": "BLENDER_CORE_INVENTORY", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "schemaVersion": 1, + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "summary": { + "byFamily": { + "Core": 20, + "Depsgraph": 3, + "Main": 39, + "Mesh": 30, + "Scene": 16 + }, + "classCount": 108 + }, + "task": "M15-01F" +} diff --git a/tests/golden/M15-01F/core-inventory-check-report.json b/tests/golden/M15-01F/core-inventory-check-report.json new file mode 100644 index 00000000..716b1be2 --- /dev/null +++ b/tests/golden/M15-01F/core-inventory-check-report.json @@ -0,0 +1,34 @@ +{ + "schemaVersion": 1, + "task": "M15-01F", + "operation": "BLENDER_CORE_INVENTORY_CHECK", + "runtime": { + "binarySha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82", + "blenderVersion": "5.2.0 LTS", + "buildBranch": "unknown", + "buildDate": "2026-07-24", + "buildHash": "unknown", + "buildPlatform": "Linux", + "buildTime": "08:03:47", + "buildType": "Release", + "versionTuple": [ + 5, + 2, + 0 + ] + }, + "summary": { + "byFamily": { + "Core": 20, + "Depsgraph": 3, + "Main": 39, + "Mesh": 30, + "Scene": 16 + }, + "classCount": 108 + }, + "firstClass": "Action", + "lastClass": "World", + "inventorySha256": "4810abd2f91e580da3f7be70f1583f5cf6b2ecc20a13f0ce09b7484c4393e643", + "nextTask": "M15-02A" +} diff --git a/tests/golden/M15-01F/manifest.json b/tests/golden/M15-01F/manifest.json new file mode 100644 index 00000000..7c218bfd --- /dev/null +++ b/tests/golden/M15-01F/manifest.json @@ -0,0 +1,40 @@ +{ + "schemaVersion": 1, + "task": "M15-01F", + "parentTask": "M15-01E", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_CORE", + "operation": "BLENDER_CORE_INVENTORY", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-01E/manifest.json", + "sha256": "3e2e17e93229d58748043135eadc92de671ee4563b7699ae48aadfe885aefda7" + }, + "generator": { + "path": "tools/web/generate-blender-core-inventory.py", + "sha256": "64e6c3590b084ec8906e26f46cab1596211c197251e0c7a81de2f5edbc6dcd43" + }, + "checker": { + "path": "tools/web/check-blender-core-inventory.mjs", + "sha256": "ca13efc97cd4709b103268be95f6fe9fa824f64a04f51ab678c78158c44979d7" + }, + "inventory": { + "path": "tests/golden/M15-01F/blender-core-inventory.json", + "sha256": "4810abd2f91e580da3f7be70f1583f5cf6b2ecc20a13f0ce09b7484c4393e643" + }, + "report": { + "path": "tests/golden/M15-01F/core-inventory-check-report.json", + "sha256": "8752644f8956c747c8da14afcd04f73e0a5823713ba98ee08c21cf240ff1f140" + }, + "runtime": { + "path": "build_blender_5.2.0/bin/blender", + "sha256": "d4483926610484ef9c2ad9241aae1469f934d955ebe791f1920e263e0ba85b82" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-02A" +} diff --git a/tests/golden/M15-02A/blender-parity-map.json b/tests/golden/M15-02A/blender-parity-map.json new file mode 100644 index 00000000..9249d81b --- /dev/null +++ b/tests/golden/M15-02A/blender-parity-map.json @@ -0,0 +1,116581 @@ +{ + "schemaVersion": 1, + "task": "M15-02A", + "operation": "BLENDER_PARITY_MAPPING", + "statusAxis": "INVENTORY_ONLY", + "implementationClasses": [ + "INVENTORY_BASELINE" + ], + "sourceInventories": { + "M15-01A": { + "path": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "sha256": "98e6c2ebc9f62647b43fb06eff178bef02db06516f6ac87048ae81fcf2d8e792" + }, + "M15-01B": { + "path": "tests/golden/M15-01B/blender-operator-inventory.json", + "sha256": "dabb774ea808f417a0085528ecc4538bc78f71d06f912a881a9453804597e49a" + }, + "M15-01C": { + "path": "tests/golden/M15-01C/blender-family-inventory.json", + "sha256": "bb7bbbf64184f326cd17933960800d7d761db6dd3b5f829e322e5ccdb12b8845" + }, + "M15-01D": { + "path": "tests/golden/M15-01D/blender-format-inventory.json", + "sha256": "d3892fc6126f2e477db8b7bcb2bc5ac7a77db1049f0165350ccc834d3a151394" + }, + "M15-01E": { + "path": "tests/golden/M15-01E/blender-editor-inventory.json", + "sha256": "6293b5c5bc23c8a73fdde553a5173ac1da25a08c8158af5ec81f4b0f864a5064" + }, + "M15-01F": { + "path": "tests/golden/M15-01F/blender-core-inventory.json", + "sha256": "4810abd2f91e580da3f7be70f1583f5cf6b2ecc20a13f0ce09b7484c4393e643" + } + }, + "summary": { + "mapped": 6900, + "byTask": { + "M15-01A": 29, + "M15-01B": 2486, + "M15-01C": 563, + "M15-01D": 122, + "M15-01E": 3592, + "M15-01F": 108 + }, + "ownerFamilies": [ + "COMPOSITOR_NODE", + "CONSTRAINT", + "Core", + "Depsgraph", + "EDITOR", + "GEOMETRY_NODE", + "IMPORT_EXPORT", + "KEYMAP", + "MODIFIER", + "Main", + "Mesh", + "OPERATOR", + "PHYSICS", + "REGION", + "RNA_DATABLOCK", + "SEQUENCER", + "SHADER_NODE", + "SPACE", + "Scene", + "WORKSPACE" + ] + }, + "entries": [ + { + "id": "area:CLIP_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "CLIP_EDITOR" + }, + { + "id": "area:CONSOLE", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "CONSOLE" + }, + { + "id": "area:DOPESHEET_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "DOPESHEET_EDITOR" + }, + { + "id": "area:EMPTY", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "EMPTY" + }, + { + "id": "area:FILE_BROWSER", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "FILE_BROWSER" + }, + { + "id": "area:GRAPH_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "GRAPH_EDITOR" + }, + { + "id": "area:IMAGE_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "IMAGE_EDITOR" + }, + { + "id": "area:INFO", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "INFO" + }, + { + "id": "area:NLA_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "NLA_EDITOR" + }, + { + "id": "area:NODE_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "NODE_EDITOR" + }, + { + "id": "area:OUTLINER", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "OUTLINER" + }, + { + "id": "area:PREFERENCES", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PREFERENCES" + }, + { + "id": "area:PROPERTIES", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PROPERTIES" + }, + { + "id": "area:SEQUENCE_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SEQUENCE_EDITOR" + }, + { + "id": "area:SPREADSHEET", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SPREADSHEET" + }, + { + "id": "area:STATUSBAR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "STATUSBAR" + }, + { + "id": "area:TEXT_EDITOR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TEXT_EDITOR" + }, + { + "id": "area:TOPBAR", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TOPBAR" + }, + { + "id": "area:VIEW_3D", + "task": "M15-01E", + "ownerFamily": "EDITOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "VIEW_3D" + }, + { + "id": "constraint:ACTION", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ACTION" + }, + { + "id": "constraint:ARMATURE", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ARMATURE" + }, + { + "id": "constraint:CAMERA_SOLVER", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CAMERA_SOLVER" + }, + { + "id": "constraint:CHILD_OF", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CHILD_OF" + }, + { + "id": "constraint:CLAMP_TO", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CLAMP_TO" + }, + { + "id": "constraint:COPY_LOCATION", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "COPY_LOCATION" + }, + { + "id": "constraint:COPY_ROTATION", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "COPY_ROTATION" + }, + { + "id": "constraint:COPY_SCALE", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "COPY_SCALE" + }, + { + "id": "constraint:COPY_TRANSFORMS", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "COPY_TRANSFORMS" + }, + { + "id": "constraint:DAMPED_TRACK", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "DAMPED_TRACK" + }, + { + "id": "constraint:FLOOR", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "FLOOR" + }, + { + "id": "constraint:FOLLOW_PATH", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "FOLLOW_PATH" + }, + { + "id": "constraint:FOLLOW_TRACK", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "FOLLOW_TRACK" + }, + { + "id": "constraint:GEOMETRY_ATTRIBUTE", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GEOMETRY_ATTRIBUTE" + }, + { + "id": "constraint:IK", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "IK" + }, + { + "id": "constraint:LIMIT_DISTANCE", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LIMIT_DISTANCE" + }, + { + "id": "constraint:LIMIT_LOCATION", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LIMIT_LOCATION" + }, + { + "id": "constraint:LIMIT_ROTATION", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LIMIT_ROTATION" + }, + { + "id": "constraint:LIMIT_SCALE", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LIMIT_SCALE" + }, + { + "id": "constraint:LOCKED_TRACK", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LOCKED_TRACK" + }, + { + "id": "constraint:MAINTAIN_VOLUME", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MAINTAIN_VOLUME" + }, + { + "id": "constraint:OBJECT_SOLVER", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "OBJECT_SOLVER" + }, + { + "id": "constraint:PIVOT", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "PIVOT" + }, + { + "id": "constraint:SHRINKWRAP", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SHRINKWRAP" + }, + { + "id": "constraint:SPLINE_IK", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SPLINE_IK" + }, + { + "id": "constraint:STRETCH_TO", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "STRETCH_TO" + }, + { + "id": "constraint:TRACK_TO", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "TRACK_TO" + }, + { + "id": "constraint:TRANSFORM", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "TRANSFORM" + }, + { + "id": "constraint:TRANSFORM_CACHE", + "task": "M15-01C", + "ownerFamily": "CONSTRAINT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "TRANSFORM_CACHE" + }, + { + "id": "datablock:Action", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Action" + }, + { + "id": "datablock:Armature", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Armature" + }, + { + "id": "datablock:Brush", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Brush" + }, + { + "id": "datablock:Camera", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Camera" + }, + { + "id": "datablock:Collection", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Collection" + }, + { + "id": "datablock:Curve", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Curve" + }, + { + "id": "datablock:Curves", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Curves" + }, + { + "id": "datablock:FreestyleLineStyle", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "FreestyleLineStyle" + }, + { + "id": "datablock:GreasePencil", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "GreasePencil" + }, + { + "id": "datablock:Lattice", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Lattice" + }, + { + "id": "datablock:Library", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Library" + }, + { + "id": "datablock:Light", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Light" + }, + { + "id": "datablock:Material", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Material" + }, + { + "id": "datablock:Mesh", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Mesh" + }, + { + "id": "datablock:MetaBall", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "MetaBall" + }, + { + "id": "datablock:NodeTree", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "NodeTree" + }, + { + "id": "datablock:Object", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Object" + }, + { + "id": "datablock:ParticleSettings", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "ParticleSettings" + }, + { + "id": "datablock:PointCloud", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "PointCloud" + }, + { + "id": "datablock:Scene", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Scene" + }, + { + "id": "datablock:Screen", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Screen" + }, + { + "id": "datablock:Sound", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Sound" + }, + { + "id": "datablock:Speaker", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Speaker" + }, + { + "id": "datablock:Text", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Text" + }, + { + "id": "datablock:Texture", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Texture" + }, + { + "id": "datablock:Volume", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "Volume" + }, + { + "id": "datablock:WindowManager", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "WindowManager" + }, + { + "id": "datablock:WorkSpace", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "WorkSpace" + }, + { + "id": "datablock:World", + "task": "M15-01A", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-rna-datablock-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01A/manifest.json" + ], + "source": "tests/golden/M15-01A/blender-rna-datablock-inventory.json", + "rnaIdentifier": "World" + }, + { + "id": "io:anim.keying_set_export", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "anim.keying_set_export" + }, + { + "id": "io:collection.export_all", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.export_all" + }, + { + "id": "io:collection.exporter_add", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.exporter_add" + }, + { + "id": "io:collection.exporter_export", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.exporter_export" + }, + { + "id": "io:collection.exporter_move", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.exporter_move" + }, + { + "id": "io:collection.exporter_remove", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.exporter_remove" + }, + { + "id": "io:collection.importer_add", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.importer_add" + }, + { + "id": "io:collection.importer_remove", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "collection.importer_remove" + }, + { + "id": "io:export_anim.bvh", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "export_anim.bvh" + }, + { + "id": "io:export_scene.fbx", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "export_scene.fbx" + }, + { + "id": "io:export_scene.gltf", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "export_scene.gltf" + }, + { + "id": "io:image.import_as_mesh_planes", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "image.import_as_mesh_planes" + }, + { + "id": "io:import_anim.bvh", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "import_anim.bvh" + }, + { + "id": "io:import_curve.svg", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "import_curve.svg" + }, + { + "id": "io:import_scene.fbx", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "import_scene.fbx" + }, + { + "id": "io:import_scene.gltf", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "import_scene.gltf" + }, + { + "id": "io:node.add_import_node", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "node.add_import_node" + }, + { + "id": "io:object.volume_import", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "object.volume_import" + }, + { + "id": "io:preferences.keyconfig_export", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "preferences.keyconfig_export" + }, + { + "id": "io:preferences.keyconfig_import", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "preferences.keyconfig_import" + }, + { + "id": "io:sequencer.export_subtitles", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "sequencer.export_subtitles" + }, + { + "id": "io:uv.export_layout", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "uv.export_layout" + }, + { + "id": "io:wm.collection_export_all", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.collection_export_all" + }, + { + "id": "io:wm.drop_import_file", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.drop_import_file" + }, + { + "id": "io:wm.fbx_import", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.fbx_import" + }, + { + "id": "io:wm.grease_pencil_export_svg", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.grease_pencil_export_svg" + }, + { + "id": "io:wm.grease_pencil_import_svg", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.grease_pencil_import_svg" + }, + { + "id": "io:wm.obj_export", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.obj_export" + }, + { + "id": "io:wm.obj_import", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.obj_import" + }, + { + "id": "io:wm.ply_export", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.ply_export" + }, + { + "id": "io:wm.ply_import", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.ply_import" + }, + { + "id": "io:wm.stl_export", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.stl_export" + }, + { + "id": "io:wm.stl_import", + "task": "M15-01D", + "ownerFamily": "IMPORT_EXPORT", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "operator": "wm.stl_import" + }, + { + "id": "keymap-item:3D View Generic:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Generic:VIEW_3D:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Generic:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Generic:VIEW_3D:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Bend:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Bend:VIEW_3D:WINDOW", + "idname": "transform.bend", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Breakdowner:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Breakdowner:VIEW_3D:WINDOW", + "idname": "pose.breakdown", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Cursor:VIEW_3D:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Cursor:VIEW_3D:WINDOW", + "idname": "view3d.cursor3d", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW", + "idname": "transform.bbone_resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW", + "idname": "transform.transform", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW", + "idname": "armature.click_extrude", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW", + "idname": "armature.extrude_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW", + "idname": "transform.transform", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW", + "idname": "curve.pen", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW", + "idname": "curve.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW", + "idname": "curve.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW", + "idname": "curve.draw", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW", + "idname": "curve.vertex_add", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW", + "idname": "curve.extrude_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW", + "idname": "transform.transform", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW", + "idname": "transform.vertex_random", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW", + "idname": "transform.tilt", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW", + "idname": "curves.draw", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "idname": "curves.pen", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "idname": "curves.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "idname": "curves.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "idname": "curves.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW", + "idname": "grease_pencil.texture_gradient", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "idname": "grease_pencil.interpolate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "idname": "grease_pencil.pen", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "idname": "grease_pencil.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "idname": "grease_pencil.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "idname": "grease_pencil.pen", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW", + "idname": "mesh.bevel", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW", + "idname": "mesh.bisect", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW", + "idname": "transform.edge_slide", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW", + "idname": "mesh.extrude_region_shrink_fatten", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW", + "idname": "mesh.extrude_faces_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW", + "idname": "mesh.extrude_manifold", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW", + "idname": "mesh.extrude_context_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW", + "idname": "mesh.dupli_extrude_cursor", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW", + "idname": "mesh.inset", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW", + "idname": "mesh.knife_tool", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW", + "idname": "mesh.loopcut_slide", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW", + "idname": "mesh.offset_edge_loops_slide", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW", + "idname": "mesh.polybuild_delete_at_cursor", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW", + "idname": "mesh.polybuild_extrude_at_cursor_move", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW", + "idname": "mesh.polybuild_face_at_cursor_move", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW", + "idname": "transform.push_pull", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW", + "idname": "transform.vertex_random", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW", + "idname": "mesh.rip_edge_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW", + "idname": "mesh.rip_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW", + "idname": "transform.shrink_fatten", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW", + "idname": "mesh.vertices_smooth", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW", + "idname": "mesh.spin", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW", + "idname": "mesh.spin", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW", + "idname": "transform.tosphere", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW", + "idname": "transform.vert_slide", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW", + "idname": "font.select_word", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW", + "idname": "font.selection_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Measure:VIEW_3D:WINDOW", + "idname": "view3d.ruler_add", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Measure:VIEW_3D:WINDOW", + "idname": "view3d.ruler_remove", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Measure:VIEW_3D:WINDOW", + "idname": "view3d.ruler_remove", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Move:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Move:VIEW_3D:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW", + "idname": "view3d.interactive_add", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_arc", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_arc", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_arc", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_box", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_box", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_box", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_curve", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "idname": "ui.eyedropper_grease_pencil_color", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "idname": "ui.eyedropper_grease_pencil_color", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "idname": "ui.eyedropper_grease_pencil_color", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "idname": "ui.eyedropper_grease_pencil_color", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "idname": "grease_pencil.interpolate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_line", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_line", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_line", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_polyline", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW", + "idname": "grease_pencil.primitive_polyline", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW", + "idname": "grease_pencil.stroke_trim", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW", + "idname": "paint.weight_gradient", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW", + "idname": "paint.weight_sample_group", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW", + "idname": "grease_pencil.weight_sample", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW", + "idname": "paint.weight_sample", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Push:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Push:VIEW_3D:WINDOW", + "idname": "pose.push", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Relax:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Relax:VIEW_3D:WINDOW", + "idname": "pose.relax", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Rotate:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Rotate:VIEW_3D:WINDOW", + "idname": "transform.rotate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Scale:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Scale:VIEW_3D:WINDOW", + "idname": "transform.resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW", + "idname": "sculpt.face_set_box_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_all", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_box_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_box_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW", + "idname": "sculpt.trim_box_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW", + "idname": "sculpt.cloth_filter", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW", + "idname": "sculpt.color_filter", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW", + "idname": "sculpt.color_filter", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW", + "idname": "sculpt.face_set_edit", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW", + "idname": "sculpt.face_set_lasso_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_all", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_lasso_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_lasso_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_lasso_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_lasso_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW", + "idname": "sculpt.trim_lasso_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW", + "idname": "sculpt.face_set_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_all", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW", + "idname": "sculpt.project_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW", + "idname": "sculpt.trim_line_gesture", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW", + "idname": "sculpt.mask_by_color", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW", + "idname": "sculpt.mesh_filter", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW", + "idname": "sculpt.face_set_polyline_gesture", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_polyline_gesture", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW", + "idname": "paint.hide_show_polyline_gesture", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_polyline_gesture", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW", + "idname": "paint.mask_polyline_gesture", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW", + "idname": "sculpt.trim_polyline_gesture", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Box:VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Circle:VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Shear:VIEW_3D:WINDOW", + "idname": "transform.shear", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Shear:VIEW_3D:WINDOW", + "idname": "transform.shear", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Shear:VIEW_3D:WINDOW", + "idname": "transform.shear", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Transform:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Transform:VIEW_3D:WINDOW", + "idname": "transform.from_gizmo", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "paint.face_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "paint.vert_select_loop", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View Tool: Tweak:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "transform.translate", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.camera_to_view", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.dolly", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:100", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:101", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:102", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:103", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:104", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:105", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:106", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:107", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.call_menu_pie", + "type": "COMMA", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:108", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.call_menu_pie", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:109", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.localview", + "type": "MOUSESMARTZOOM", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:110", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.call_menu_pie", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:111", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.call_panel", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:112", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.context_toggle", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:113", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.context_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:114", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:115", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "wm.tool_set_by_id", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.localview", + "type": "NUMPAD_SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.localview", + "type": "SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.localview_remove_from", + "type": "NUMPAD_SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.localview_remove_from", + "type": "SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.move", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.move", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.navigate", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.ndof_all", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.clear_render_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.ndof_orbit", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.ndof_orbit_zoom", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.ndof_pan", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.object_as_camera", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.pastebuffer", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.render_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.rotate", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.rotate", + "type": "MOUSEROTATE", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.rotate", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.clip_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.copybuffer", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.smoothview", + "type": "TIMER1", + "value": "ANY" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.toggle_shading", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.toggle_xray", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_all", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.cursor3d", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "MIDDLEMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_BACK", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_BOTTOM", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_FRONT", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_FRONT", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_LEFT", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_RIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_RIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_TOP", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NDOF_BUTTON_TOP", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.dolly", + "type": "EQUAL", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.dolly", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_axis", + "type": "NUMPAD_7", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_camera", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_center_camera", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_center_lock", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_center_pick", + "type": "MIDDLEMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_orbit", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_orbit", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_orbit", + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_orbit", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.dolly", + "type": "MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_orbit", + "type": "NUMPAD_9", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_pan", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_pan", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_pan", + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_pan", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_pan", + "type": "WHEELLEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_pan", + "type": "WHEELRIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_persportho", + "type": "NUMPAD_5", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:88", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_roll", + "type": "NDOF_BUTTON_ROLL_CCW", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:89", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_roll", + "type": "NDOF_BUTTON_ROLL_CW", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.dolly", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:90", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_roll", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:91", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_roll", + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:92", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:93", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_selected", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:94", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:95", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:96", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "EQUAL", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:97", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:98", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:3D View:VIEW_3D:WINDOW:99", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "3D View:VIEW_3D:WINDOW", + "idname": "view3d.zoom", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channel_select_keys", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channel_select_keys", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_editable_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_expand", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_expand", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_group", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_move", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_move", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_move", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_move", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_rename", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channel_view_pick", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_select_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_setting_disable", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_click", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_setting_enable", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_setting_toggle", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_ungroup", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_click", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_click", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_click", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_collapse", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_collapse", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation Channels:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation Channels:EMPTY:WINDOW", + "idname": "anim.channels_delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation:EMPTY:WINDOW", + "idname": "anim.end_frame_set", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation:EMPTY:WINDOW", + "idname": "anim.previewrange_clear", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation:EMPTY:WINDOW", + "idname": "anim.previewrange_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation:EMPTY:WINDOW", + "idname": "anim.start_frame_set", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Animation:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Animation:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.align", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.assign_to_collection", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.fill", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.move_to_collection", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.parent_clear", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.roll_clear", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.bone_primitive_add", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_hierarchy", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_hierarchy", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_hierarchy", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_hierarchy", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.calculate_roll", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.select_similar", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.shortest_path_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.split", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.switch_direction", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.bbone_resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.click_extrude", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.dissolve", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.dissolve", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.extrude_forked", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Armature:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Armature:EMPTY:WINDOW", + "idname": "armature.extrude_move", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Bevel Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.delete_track", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.dopesheet_select_channel", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.dopesheet_view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.dopesheet_view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.add_marker_slide", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.change_frame", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.delete_track", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.disable_markers", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.frame_jump", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.frame_jump", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.frame_jump", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.frame_jump", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.hide_tracks", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.hide_tracks", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.hide_tracks_clear", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.join_tracks", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.clear_track_path", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.keyframe_delete", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.lock_selection_toggle", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.lock_tracks", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.lock_tracks", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.paste_tracks", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.clear_track_path", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.slide_marker", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.slide_plane_marker", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_all", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.clear_track_path", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_ndof", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_pan", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom", + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.copy_tracks", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_in", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_in", + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_out", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_out", + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.cursor_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.delete_marker", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.delete_marker", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.delete_track", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.change_frame", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.clear_track_path", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select_all_markers", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select_all_markers", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select_all_markers", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select_all_markers", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.clear_track_path", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.clear_track_path", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_center_current_frame", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_delete_curve", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_delete_curve", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_delete_knot", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_delete_knot", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Graph Editor:CLIP_EDITOR:WINDOW", + "idname": "clip.graph_disable_markers", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip Time Scrub:CLIP_EDITOR:PREVIEW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip Time Scrub:CLIP_EDITOR:PREVIEW", + "idname": "clip.change_frame", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "clip.open", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "clip.prefetch", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.context_toggle_enum", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "clip.track_markers", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "clip.track_markers", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "clip.track_markers", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "clip.track_markers", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Clip:CLIP_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Clip:CLIP_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.clear_line", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.clear_line", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.execute", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.execute", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.history_cycle", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.history_cycle", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.indent_or_autocomplete", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.insert", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.insert", + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.copy", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.select_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.select_word", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.unindent", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "wm.context_cycle_int", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "wm.context_cycle_int", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "wm.context_cycle_int", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "wm.context_cycle_int", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.copy_as_script", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Console:CONSOLE:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Console:CONSOLE:WINDOW", + "idname": "console.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve Pen Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "id": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve Pen Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve Pen Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "id": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve Pen Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve Pen Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "ANY" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.cyclic_toggle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.dissolve_verts", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.dissolve_verts", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_row", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.select_similar", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.shortest_path_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.split", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.tilt_clear", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.vertex_add", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "object.vertex_parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.bend", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.tilt", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.extrude_move", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.handle_type_set", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.make_segment", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Curve:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curve:EMPTY:WINDOW", + "idname": "curve.normals_make_consistent", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.cyclic_toggle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.set_selection_domain", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.set_selection_domain", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.split", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.tilt_clear", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.bend", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.tilt", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.extrude_move", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.handle_type_set", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Curves:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Custom Normals Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet Generic:DOPESHEET_EDITOR:WINDOW", + "idname": "action.extrapolation_type", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet Generic:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.context_set_enum", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet Generic:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.bake_keys", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.easing_type", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.extrapolation_type", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.frame_jump", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.handle_type", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.interpolation_type", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.keyframe_type", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.previewrange_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_leftright", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_leftright", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.view_frame", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "anim.change_frame", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "anim.channels_editable_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "anim.channels_select_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "grease_pencil.layer_isolate", + "type": "NUMPAD_ASTERIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "marker.add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "marker.camera_bind", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Dopesheet:DOPESHEET_EDITOR:WINDOW", + "idname": "action.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "RELEASE" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "RELEASE" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Eyedropper Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "RELEASE" + }, + { + "id": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Buttons:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Buttons:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Buttons:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Buttons:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Buttons:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Buttons:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.highlight", + "type": "MOUSEMOVE", + "value": "ANY" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.mouse_execute", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.next", + "type": "BUTTON5MOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_walk", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.sort_column_ui_context", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.previous", + "type": "BUTTON4MOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser Main:FILE_BROWSER:WINDOW", + "idname": "file.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "asset.library_refresh", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "asset.library_reload_listing", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.next", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.next", + "type": "BUTTON5MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.next", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.parent", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.parent", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.previous", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.previous", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.bookmark_add", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.previous", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.refresh", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.rename", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.select", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.smoothscroll", + "type": "TIMER1", + "value": "ANY" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "wm.context_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.directory_new", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.edit_directory_path", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:File Browser:FILE_BROWSER:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "File Browser:FILE_BROWSER:WINDOW", + "idname": "file.filenum", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "ANY" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Fill Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.change_character", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.change_character", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.line_break", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.line_break", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.change_spacing", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.change_spacing", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.move_select", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.style_toggle", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.style_toggle", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.change_spacing", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.style_toggle", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.style_toggle", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.text_copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.text_cut", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.text_insert", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.text_insert", + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.text_paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.change_spacing", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Font:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Font:EMPTY:WINDOW", + "idname": "font.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.animation_cancel", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.animation_cancel", + "type": "MEDIA_STOP", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.frame_offset", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.keyframe_jump", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.keyframe_jump", + "type": "MEDIA_FIRST", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.keyframe_jump", + "type": "MEDIA_LAST", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.keyframe_jump", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.time_jump", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.time_jump", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.animation_play", + "type": "MEDIA_PLAY", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.animation_play", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.animation_play", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.frame_jump", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.frame_jump", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.frame_offset", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.frame_offset", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Frames:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Frames:EMPTY:WINDOW", + "idname": "screen.frame_offset", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Click Drag:EMPTY:WINDOW", + "idname": "gizmogroup.gizmo_tweak", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Click Drag:EMPTY:WINDOW", + "idname": "gizmogroup.gizmo_tweak", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Generic Gizmo Drag:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Drag:EMPTY:WINDOW", + "idname": "gizmogroup.gizmo_tweak", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Generic Gizmo Maybe Drag:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Maybe Drag:EMPTY:WINDOW", + "idname": "gizmogroup.gizmo_tweak", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Generic Gizmo Select:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Select:EMPTY:WINDOW", + "idname": "gizmogroup.gizmo_tweak", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Generic Gizmo:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Gizmo:EMPTY:WINDOW", + "idname": "gizmogroup.gizmo_tweak", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate Eraser:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate Eraser:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate Line:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate Line:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate Polygon:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate Polygon:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Generic Tool: Annotate:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Box:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Box:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Lasso:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Lasso:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Polyline:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Polyline:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Polyline:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Polyline:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Gesture Polyline:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Polyline:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Polyline:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Polyline:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Polyline:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Polyline:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Polyline:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Polyline:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Straight Line:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "ANY" + }, + { + "id": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Zoom Border:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Zoom Border:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Zoom Border:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Zoom Border:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Zoom Border:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Gesture Zoom Border:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "anim.channels_select_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.extrapolation_type", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.fmodifier_add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.local_view", + "type": "NUMPAD_SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.local_view", + "type": "SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "graph.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "anim.channels_editable_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.bake_keys", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.cursor_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.easing_type", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.frame_jump", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.handle_type", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.interpolation_type", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.keys_to_samples", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.click_insert", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.previewrange_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.click_insert", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_column", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_leftright", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_leftright", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.smooth", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.view_frame", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "marker.add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Graph Editor:GRAPH_EDITOR:WINDOW", + "idname": "graph.clickselect", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Brush Stroke:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Brush Stroke:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Brush Stroke:EMPTY:WINDOW", + "idname": "grease_pencil.brush_stroke", + "type": "ERASER", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Brush Stroke:EMPTY:WINDOW", + "idname": "grease_pencil.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Brush Stroke:EMPTY:WINDOW", + "idname": "grease_pencil.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Brush Stroke:EMPTY:WINDOW", + "idname": "grease_pencil.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.delete_frame", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.erase_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "paint.brush_colors_flip", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.erase_lasso", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.insert_blank_frame", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.interpolate", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.interpolate_sequence", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_isolate", + "type": "NUMPAD_ASTERIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Draw Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_merge", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.cyclical_set", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.interpolate_sequence", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.join_fills", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.join_selection", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.join_selection", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_isolate", + "type": "NUMPAD_ASTERIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_merge", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.cyclical_set", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.reorder", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.reorder", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.reorder", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.reorder", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.separate_fills", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.set_handle_type", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.set_selection_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.set_selection_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.delete_frame", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.set_selection_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.stroke_split", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.bend", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.shear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.tosphere", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.dissolve", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.dissolve", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.extrude_move", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.insert_blank_frame", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Edit Mode:EMPTY:WINDOW", + "idname": "grease_pencil.interpolate", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Fill Tool:EMPTY:WINDOW", + "idname": "grease_pencil.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Fill Tool:EMPTY:WINDOW", + "idname": "grease_pencil.fill", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Fill Tool:EMPTY:WINDOW", + "idname": "grease_pencil.fill", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.sculpt_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.context_menu_enum", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.delete_frame", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.insert_blank_frame", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.layer_merge", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.sculpt_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "idname": "grease_pencil.sculpt_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_fill", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Selection:EMPTY:WINDOW", + "idname": "grease_pencil.select_similar", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "grease_pencil.delete_frame", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "grease_pencil.insert_blank_frame", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "grease_pencil.layer_merge", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "grease_pencil.vertex_brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "grease_pencil.vertex_brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "paint.brush_colors_flip", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.weight_sample", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.weight_toggle_direction", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.delete_frame", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.insert_blank_frame", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.layer_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.layer_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.layer_merge", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.layer_reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.weight_brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil Weight Paint:EMPTY:WINDOW", + "idname": "grease_pencil.weight_brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Grease Pencil:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Grease Pencil:EMPTY:WINDOW", + "idname": "gpencil.annotate", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW", + "idname": "mask.primitive_square_add", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW", + "idname": "mask.primitive_circle_add", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW", + "idname": "uv.cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW", + "idname": "mask.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "idname": "mask.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW", + "idname": "mask.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW", + "idname": "mask.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW", + "idname": "mask.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW", + "idname": "image.sample", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW", + "idname": "uv.cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_grab", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_grab", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_relax", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_pinch", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_pinch", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_relax", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_relax", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_relax", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "idname": "sculpt.uv_sculpt_relax", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW", + "idname": "uv.rip_move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW", + "idname": "uv.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.cycle_render_slot", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.cycle_render_slot", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.new", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.open", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.read_viewlayers", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.reload", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.save", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "image.save_as", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Generic:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.image_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.image_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.image_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.context_menu_enum", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.brush_colors_flip", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Image Paint:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image Paint:EMPTY:WINDOW", + "idname": "paint.grab_clone", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.change_frame", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.clear_render_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_ndof", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_pan", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom", + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.curves_point_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_in", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_in", + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_out", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_out", + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.curves_point_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "object.mode_set", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.render_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.sample", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Image:IMAGE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Image:IMAGE_EDITOR:WINDOW", + "idname": "image.view_cursor_center", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.report_copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.report_delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.report_delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.report_replay", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Info:INFO:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Info:INFO:WINDOW", + "idname": "info.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Interpolate Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Knife Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.flip", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.shear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.tosphere", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "lattice.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "object.vertex_parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.bend", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Lattice:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Lattice:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.camera_bind", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_leftright", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select_leftright", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.duplicate", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.move", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.move", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Markers:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Markers:EMPTY:WINDOW", + "idname": "marker.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "clip.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.add_feather_vertex_slide", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.hide_view_set", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.hide_view_set", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.move_to_layer", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.new", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.normals_make_consistent", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.parent_clear", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.paste_splines", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.add_vertex_slide", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.copy_splines", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.shape_key_clear", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.shape_key_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.slide_point", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.slide_spline_curvature", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.shear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.tosphere", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.cyclic_toggle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "uv.cursor_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.handle_type_set", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Mask Editing:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mask Editing:EMPTY:WINDOW", + "idname": "mask.hide_view_clear", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh Filter Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh Filter Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh Filter Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh Filter Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "id": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh Filter Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "RELEASE" + }, + { + "id": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh Filter Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.bevel", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.bevel", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.fill", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.inset", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.knife_tool", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.knife_tool", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.loop_select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.loop_select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.loopcut_slide", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.normals_make_consistent", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.dissolve_mode", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.normals_make_consistent", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.offset_edge_loops_slide", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.point_normals", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.quads_convert_to_tris", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.quads_convert_to_tris", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.rip_edge_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.rip_move", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.rip_move", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.dissolve_mode", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.dupli_extrude_cursor", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.dupli_extrude_cursor", + "type": "RIGHTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_next_item", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.select_prev_item", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.shortest_path_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.shortest_path_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.split", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.tris_convert_to_quads", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.vert_connect_path", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "object.vertex_group_remove_from", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "object.vertex_parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.bend", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.edge_crease", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.shear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.shrink_fatten", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.skin_resize", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.tosphere", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.edge_face_add", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "transform.vert_slide", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "view3d.edit_mesh_extrude_move_normal", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.edgering_select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:88", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:89", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "mesh.edgering_select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:90", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:91", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Mesh:EMPTY:WINDOW:92", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Mesh:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.delete_metaelems", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.delete_metaelems", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.select_similar", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "object.metaball_add", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.hide_metaelems", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.hide_metaelems", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.reveal_metaelems", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Metaball:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Metaball:EMPTY:WINDOW", + "idname": "mball.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "anim.change_frame", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "marker.add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.fmodifier_add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.make_single_user", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.meta_add", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.meta_remove", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.move_down", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.move_up", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.mute_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.previewrange_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.actionclip_add", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_leftright", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.apply_scale", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_leftright", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.select_leftright", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.soundclip_add", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.split", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.swap", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.transition_add", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.view_frame", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.clear_scale", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.click_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.click_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Editor:NLA_EDITOR:WINDOW", + "idname": "nla.duplicate_linked_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Generic:NLA_EDITOR:WINDOW", + "idname": "anim.channels_select_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Generic:NLA_EDITOR:WINDOW", + "idname": "nla.tweakmode_enter", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Generic:NLA_EDITOR:WINDOW", + "idname": "nla.tweakmode_enter", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Generic:NLA_EDITOR:WINDOW", + "idname": "nla.tweakmode_exit", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Generic:NLA_EDITOR:WINDOW", + "idname": "nla.tweakmode_exit", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Generic:NLA_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "nla.channels_click", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "nla.channels_click", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "nla.tracks_add", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "nla.tracks_add", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "nla.tracks_delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "nla.tracks_delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "NLA Tracks:NLA_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.add_reroute", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.backimage_fit", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.connect_to_output", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:100", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:101", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:102", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:103", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.tool_set_by_id", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.delete_reconnect", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.delete_reconnect", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.detach", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.duplicate_move_keep_inputs", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.duplicate_move_linked", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.find_node", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.backimage_move", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.group_edit", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.group_edit", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.group_enter_exit", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.group_make", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.group_separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.group_ungroup", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.hide_socket_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.hide_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.join_named", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.join_nodes", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.backimage_sample", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.link", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.link", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.link_make", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.link_make", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.links_cut", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.links_mute", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.move_detach_links", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.move_detach_links_release", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.mute_toggle", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.backimage_zoom", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.preview_toggle", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.read_viewlayers", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.render_changed", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.backimage_zoom", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_grouped", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.clipboard_copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_grouped", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_link_viewer", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_linked_from", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_linked_to", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_same_type_step", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.select_same_type_step", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.translate_attach", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.translate_attach", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.clipboard_paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.connect_to_output", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_get", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:88", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:89", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.connect_to_output", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:90", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:91", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "node.viewer_shortcut_set", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:92", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:93", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:94", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:95", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:96", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:97", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:98", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:99", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Editor:NODE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Generic:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Generic:NODE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Generic:NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Generic:NODE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Link Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Link Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Link Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Link Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "id": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Link Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Link Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "ANY" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Resize Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Node Tool: Add Reroute:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Add Reroute:NODE_EDITOR:WINDOW", + "idname": "node.add_reroute", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Links Cut:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Links Cut:NODE_EDITOR:WINDOW", + "idname": "node.links_cut", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Mute Links:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Mute Links:NODE_EDITOR:WINDOW", + "idname": "node.links_mute", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Box:NODE_EDITOR:WINDOW", + "idname": "node.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Circle:NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Circle:NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Circle:NODE_EDITOR:WINDOW", + "idname": "node.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Lasso:NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Lasso:NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Select Lasso:NODE_EDITOR:WINDOW", + "idname": "node.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Node Tool: Tweak:NODE_EDITOR:WINDOW", + "idname": "node.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "anim.keyframe_delete_v3d", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "anim.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.duplicate_move_linked", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.hide_collection", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.hide_view_clear", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.hide_view_set", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.hide_view_set", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.join", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "anim.keyframe_insert_menu", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.location_clear", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.parent_clear", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.rotation_clear", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.scale_clear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_grouped", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "anim.keying_set_active_set", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_hierarchy", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_hierarchy", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_hierarchy", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_hierarchy", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "collection.create", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.transform_axis_target", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "collection.objects_add_active", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "collection.objects_remove", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "collection.objects_remove_active", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "collection.objects_remove_all", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Mode:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Mode:EMPTY:WINDOW", + "idname": "object.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Non-modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Non-modal:EMPTY:WINDOW", + "idname": "object.mode_set", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Non-modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Non-modal:EMPTY:WINDOW", + "idname": "object.transfer_mode", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Object Non-modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Object Non-modal:EMPTY:WINDOW", + "idname": "view3d.object_mode_pie_or_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "anim.keyframe_delete", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "anim.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:100", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:101", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:102", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.clear_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.collection_exclude_clear", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.collection_exclude_set", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.collection_new", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.drivers_add_selected", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.drivers_delete_selected", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.expanded_toggle", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.highlight_update", + "type": "MOUSEMOVE", + "value": "ANY" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.id_copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.id_paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_activate", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_drag_drop", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_drag_drop", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_openclose", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_openclose", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_openclose", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_rename", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.item_rename", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.keyingset_add_selected", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.keyingset_remove_selected", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.operation", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.scroll_page", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.scroll_page", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:88", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:89", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "object.hide_collection", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:90", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.select_walk", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:91", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.show_active", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:92", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.show_active", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:93", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.show_active", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:94", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.show_hierarchy", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:95", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.show_one_level", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:96", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.show_one_level", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:97", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:98", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "outliner.unhide_all", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Outliner:OUTLINER:WINDOW:99", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Outliner:OUTLINER:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.add_point_slide", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.cursor", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.slide", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.delete_point", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.delete_point", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.draw", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.draw", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.select", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Curve:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Curve:EMPTY:WINDOW", + "idname": "paintcurve.slide", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_vert_reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "view3d.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "view3d.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "idname": "paint.face_select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Stroke Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Stroke Modal:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.face_vert_reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "view3d.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "view3d.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "view3d.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "view3d.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "idname": "paint.vert_select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.brush_edit", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.brush_edit", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.weight_set", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.context_set_enum", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.context_set_enum", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.context_set_enum", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Particle:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Particle:EMPTY:WINDOW", + "idname": "particle.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pen Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "id": "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pen Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pen Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.transform", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "pointcloud.separate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.bend", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Point Cloud:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Point Cloud:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "anim.keyframe_delete_v3d", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "anim.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.constraints_clear", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.ik_add", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.ik_clear", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.loc_clear", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.push", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "anim.keyframe_insert_menu", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.quaternions_flip", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.relax", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.rot_clear", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.rotation_mode_set", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.scale_clear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "anim.keying_set_active_set", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_grouped", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_hierarchy", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_hierarchy", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_hierarchy", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_hierarchy", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.select_parent", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "transform.bbone_resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "armature.assign_to_collection", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "armature.move_to_collection", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "object.parent_set", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.blend_to_neighbor", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.breakdown", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Pose:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Pose:EMPTY:WINDOW", + "idname": "pose.constraint_add_with_targets", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Preferences:PREFERENCES:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preferences:PREFERENCES:WINDOW", + "idname": "preferences.clear_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Preferences:PREFERENCES:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preferences:PREFERENCES:WINDOW", + "idname": "preferences.start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Preferences_nav:PREFERENCES:UI:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preferences_nav:PREFERENCES:UI", + "idname": "preferences.clear_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Preferences_nav:PREFERENCES:UI:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preferences_nav:PREFERENCES:UI", + "idname": "preferences.start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Move:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.sample", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "anim.keyframe_delete_vse", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "anim.keyframe_insert", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.preview_duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.preview_duplicate_move_linked", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "anim.keyframe_insert_menu", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_transform_clear", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_transform_clear", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "anim.keying_set_active_set", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_transform_clear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.cursor_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_cursor_move", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_deselect_all", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_edit_copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_edit_cut", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_edit_mode_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_edit_paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_insert", + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_line_break", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_line_break", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.text_select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.unmute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_all_preview", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_all_preview", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_ghost_border", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_zoom_ratio", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.mute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.translate", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Preview:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.mute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Primitive Tool Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "buttons.clear_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "buttons.context_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.modifier_remove", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.modifier_remove", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.modifier_set_active", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.shaderfx_copy", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.shaderfx_remove", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.shaderfx_remove", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "screen.space_context_cycle", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "screen.space_context_cycle", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "sequencer.strip_modifier_duplicate", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "sequencer.strip_modifier_set_active", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "buttons.start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "constraint.apply", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "constraint.copy", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "constraint.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "constraint.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.add_modifier_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.modifier_apply", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Property Editor:PROPERTIES:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Property Editor:PROPERTIES:WINDOW", + "idname": "object.modifier_copy", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Region Context Menu:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Region Context Menu:EMPTY:WINDOW", + "idname": "screen.region_context_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.actionzone", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.actionzone", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_swap", + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.quadview_size", + "type": "ACTIONZONE_REGION_QUAD", + "value": "ANY" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.region_scale", + "type": "ACTIONZONE_REGION", + "value": "ANY" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.screen_full_area", + "type": "ACTIONZONE_FULLSCREEN", + "value": "ANY" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.actionzone", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_dupli", + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_join", + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_move", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_move", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_move", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_options", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen Editing:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen Editing:EMPTY:WINDOW", + "idname": "screen.area_split", + "type": "ACTIONZONE_AREA", + "value": "ANY" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "asset.catalog_redo", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "asset.catalog_undo", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.render", + "type": "F12", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.render", + "type": "F12", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.view_cancel", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.view_show", + "type": "F11", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.animation_step", + "type": "TIMER0", + "value": "ANY" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.redo_last", + "type": "F9", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.region_blend", + "type": "TIMERREGION", + "value": "ANY" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.region_quadview", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.repeat_last", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.screen_full_area", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "ed.redo", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.screen_full_area", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.space_context_cycle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.space_context_cycle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.userpref_show", + "type": "COMMA", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.workspace_cycle", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "screen.workspace_cycle", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "ed.undo", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "file.cancel", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "file.execute", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "file.execute", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.play_rendered_anim", + "type": "F11", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.render", + "type": "F12", + "value": "PRESS" + }, + { + "id": "keymap-item:Screen:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Screen:EMPTY:WINDOW", + "idname": "render.render", + "type": "F12", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "sculpt_curves.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "sculpt_curves.min_distance_edit", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "sculpt_curves.select_grow", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "curves.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "curves.set_selection_domain", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "curves.set_selection_domain", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "sculpt_curves.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Curves:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Curves:EMPTY:WINDOW", + "idname": "sculpt_curves.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_3", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "ANY" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "ANY" + }, + { + "id": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt Expand Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_1", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.subdivision_set", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.voxel_remesh", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "object.voxel_size_edit", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.brush_colors_flip", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.hide_show_all", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.mask_box_gesture", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.mask_flood_fill", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.mask_flood_fill", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.mask_lasso_gesture", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.mask_lasso_gesture", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.visibility_filter", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "paint.visibility_filter", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.brush_stroke", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.color_filter", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.detail_flood_fill", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.dyntopo_detail_size_edit", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.expand", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.expand", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.expand", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.expand", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.face_set_change_visibility", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.face_set_change_visibility", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.face_set_edit", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.face_set_edit", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "sculpt.set_pivot_position", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.context_menu_enum", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Sculpt:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sculpt:EMPTY:WINDOW", + "idname": "brush.asset_activate", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Channels:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.rename_channel", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Channels:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.rename_channel", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.box_blade", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.box_blade", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.box_blade", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.box_blade", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "anim.change_frame", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "anim.change_frame", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_lasso", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.slip", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.slip", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "marker.add", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.connect", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.images_separate", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.lock", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.meta_make", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.meta_separate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.meta_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.mute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.mute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.offset_clear", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.reassign_inputs", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.reload", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.reload", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.retiming_key_delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.retiming_key_delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.retiming_segment_speed_set", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.retiming_show", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_box", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_grouped", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.duplicate_move", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_side_of_frame", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.select_side_of_frame", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.slip", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.snap", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "EIGHT", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "FIVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.duplicate_move_linked", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "NINE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "SEVEN", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "SIX", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.split_multicam", + "type": "ZERO", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_jump", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_jump", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_jump", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.gap_insert", + "type": "EQUAL", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.strip_jump", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.swap", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.swap", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.swap_inputs", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.unlock", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.unmute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.unmute", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_all", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_all", + "type": "NDOF_BUTTON_FIT", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_frame", + "type": "NUMPAD_0", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.gap_remove", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_selected", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.view_selected", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.seq_slide", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.seq_slide", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.seq_slide", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.seq_slide", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "transform.transform", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:88", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:89", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.gap_remove", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:90", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:91", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:92", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.call_menu_pie", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:93", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_set_int", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:94", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Sequencer:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "RELEASE" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "RELEASE" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Slip Modal:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Slip Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Spreadsheet Generic:SPREADSHEET:WINDOW", + "idname": "spreadsheet.fit_column", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Spreadsheet Generic:SPREADSHEET:WINDOW", + "idname": "spreadsheet.reorder_columns", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Spreadsheet Generic:SPREADSHEET:WINDOW", + "idname": "spreadsheet.resize_column", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Spreadsheet Generic:SPREADSHEET:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Spreadsheet Generic:SPREADSHEET:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Standard Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Standard Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text Generic:TEXT_EDITOR:WINDOW", + "idname": "text.find_set_selected", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text Generic:TEXT_EDITOR:WINDOW", + "idname": "text.jump", + "type": "J", + "value": "PRESS" + }, + { + "id": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text Generic:TEXT_EDITOR:WINDOW", + "idname": "text.replace", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text Generic:TEXT_EDITOR:WINDOW", + "idname": "text.start_find", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text Generic:TEXT_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.comment_toggle", + "type": "SLASH", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.duplicate_line", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.indent_or_autocomplete", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.insert", + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.line_break", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.line_break", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.line_number", + "type": "TEXTINPUT", + "value": "ANY" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.copy", + "type": "INSERT", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.cursor_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_lines", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_lines", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "END", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.cut", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.move_select", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.new", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.open", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.overwrite_toggle", + "type": "INSERT", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.paste", + "type": "INSERT", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.cut", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.reload", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.run_script", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.save", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.save_as", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.scroll", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.scroll", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.scroll", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.scroll", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.scroll_bar", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.scroll_bar", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.select_line", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.select_word", + "type": "LEFTMOUSE", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.selection_set", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.selection_set", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.unindent", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "wm.context_cycle_int", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "wm.context_cycle_int", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "wm.context_cycle_int", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "wm.context_cycle_int", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.delete", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Text:TEXT_EDITOR:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Text:TEXT_EDITOR:WINDOW", + "idname": "text.delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:Time Scrub:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Time Scrub:EMPTY:WINDOW", + "idname": "anim.change_frame", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Toolbar Popup:EMPTY:TEMPORARY", + "idname": "wm.tool_set_by_id", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Toolbar Popup:EMPTY:TEMPORARY", + "idname": "wm.tool_set_by_id", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Toolbar Popup:EMPTY:TEMPORARY", + "idname": "wm.tool_set_by_id", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Toolbar Popup:EMPTY:TEMPORARY", + "idname": "wm.tool_set_by_id", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Toolbar Popup:EMPTY:TEMPORARY", + "idname": "wm.tool_set_by_id", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Axis Target Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Transform Modal Map:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Transform Modal Map:EMPTY:WINDOW", + "idname": "", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.mirror", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.resize", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.rotate", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.shear", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "LEFTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "transform.translate", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.copy", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.cursor_set", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.custom_region_set", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.hide", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.mark_seam", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_2", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_4", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_6", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.move_on_axis", + "type": "NUMPAD_8", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.paste", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.pin", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.pin", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.rip_move", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_all", + "type": "A", + "value": "DOUBLE_CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_all", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_all", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_box", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:50", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_circle", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:51", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_edge_ring", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:52", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_edge_ring", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:53", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:54", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_lasso", + "type": "RIGHTMOUSE", + "value": "CLICK_DRAG" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:55", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_less", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:56", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_linked", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:57", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:58", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_linked_pick", + "type": "L", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:59", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_loop", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:60", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_loop", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:61", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_mode", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:62", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:63", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:64", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_more", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:65", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_pinned", + "type": "P", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:66", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_similar", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:67", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.select_split", + "type": "Y", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:68", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.shortest_path_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:69", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.shortest_path_pick", + "type": "LEFTMOUSE", + "value": "CLICK" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:70", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "uv.stitch", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:71", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:72", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:73", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:74", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:75", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:76", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "U", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:77", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:78", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:79", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:80", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_menu_enum", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:81", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "ACCENT_GRAVE", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:82", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:83", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "FOUR", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:84", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:85", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:86", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:87", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "wm.tool_set_by_id", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:UV Editor:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "UV Editor:EMPTY:WINDOW", + "idname": "mesh.select_mode", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.driver_button_add", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.driver_button_remove", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.eyedropper_color", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.eyedropper_colorramp", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.eyedropper_colorramp_point", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.eyedropper_depth", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.eyedropper_id", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.list_start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.reset_default_button", + "type": "BACK_SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_delete", + "type": "DEL", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_delete", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_focus", + "type": "BUTTON4MOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.keyframe_clear_button", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_focus", + "type": "NUMPAD_PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_navigate", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_navigate", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_navigate", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_navigate", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_rename", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_item_select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_scroll", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.keyframe_delete_button", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_scroll", + "type": "WHEELDOWNMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_scroll", + "type": "WHEELUPMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.view_start_filter", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.keyframe_insert_button", + "type": "I", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.keyingset_button_add", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "anim.keyingset_button_remove", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.copy_data_path_button", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.copy_data_path_button", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:User Interface:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "User Interface:EMPTY:WINDOW", + "idname": "ui.eyedropper_bone", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.sample_color", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.vertex_color_set", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.vertex_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.vertex_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.vertex_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_menu_enum", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "brush.stencil_control", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.brush_colors_flip", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Vertex Paint:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Vertex Paint:EMPTY:WINDOW", + "idname": "paint.face_vert_reveal", + "type": "H", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "sequencer.refresh_all", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "T", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.context_toggle_enum", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "idname": "wm.tool_set_by_id", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.pan", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.zoom", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.zoom", + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.zoom_in", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.zoom_out", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.reset", + "type": "HOME", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.scroll_down", + "type": "PAGE_DOWN", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.scroll_down", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.scroll_up", + "type": "PAGE_UP", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.scroll_up", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.scroller_activate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.scroller_activate", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D Buttons List:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D Buttons List:EMPTY:WINDOW", + "idname": "view2d.zoom", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.ndof", + "type": "NDOF_MOTION", + "value": "ANY" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_right", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_right", + "type": "WHEELRIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_up", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_up", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroller_activate", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroller_activate", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.smoothview", + "type": "TIMER1", + "value": "ANY" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom", + "type": "TRACKPADZOOM", + "value": "ANY" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.pan", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom_border", + "type": "B", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom_in", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom_in", + "type": "WHEELINMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom_out", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.zoom_out", + "type": "WHEELOUTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.pan", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_down", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_down", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_left", + "type": "WHEELLEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_left", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_left", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View2D:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View2D:EMPTY:WINDOW", + "idname": "view2d.scroll_right", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Dolly Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Dolly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Fly Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "TRACKPADPAN", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Gesture Circle:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Move Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Move Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Placement Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_CTRL", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Rotate Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Rotate Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Rotate Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Rotate Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Rotate Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "idname": "", + "type": "C", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "idname": "", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "idname": "", + "type": "M", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "idname": "", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "A", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "F", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "G", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_ARROW", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "LEFT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "COMMA", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "MIDDLEMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_ENTER", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "NUMPAD_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "PERIOD", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "Q", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "R", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RET", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "D", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "ANY" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ALT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:33", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:34", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_ARROW", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:35", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:36", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHT_SHIFT", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:37", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:38", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "S", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:39", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "D", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:40", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "TAB", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:41", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "UP_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:42", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "UP_ARROW", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:43", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "V", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:44", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "V", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:45", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:46", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "W", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:47", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "WHEELDOWNMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:48", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "WHEELUPMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:49", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "Z", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "DOWN_ARROW", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "DOWN_ARROW", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "E", + "value": "RELEASE" + }, + { + "id": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Walk Modal:EMPTY:WINDOW", + "idname": "", + "type": "ESC", + "value": "PRESS" + }, + { + "id": "keymap-item:View3D Zoom Modal:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "View3D Zoom Modal:EMPTY:WINDOW", + "idname": "", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "LEFT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "brush.scale_size", + "type": "RIGHT_BRACKET", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "view3d.select", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_asset_shelf_popover", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_menu_pie", + "type": "K", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "APP", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "RIGHTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_menu_enum", + "type": "E", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "ONE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_gradient", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "THREE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.context_toggle", + "type": "TWO", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "wm.radial_control", + "type": "F", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_gradient", + "type": "A", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_paint", + "type": "LEFTMOUSE", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_sample", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_sample_group", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Weight Paint:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Weight Paint:EMPTY:WINDOW", + "idname": "paint.weight_set", + "type": "X", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:0", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "info.reports_display_update", + "type": "TIMER_REPORT", + "value": "ANY" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:1", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F1", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:10", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F7", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:11", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F8", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:12", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F9", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:13", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.batch_rename", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:14", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "F4", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:15", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "N", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:16", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:17", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.call_menu", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:18", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:19", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.call_panel", + "type": "NDOF_BUTTON_MENU", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:2", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F10", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:20", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.context_scale_float", + "type": "NDOF_BUTTON_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:21", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.context_scale_float", + "type": "NDOF_BUTTON_MINUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:22", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.context_scale_float", + "type": "NDOF_BUTTON_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:23", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.context_scale_float", + "type": "NDOF_BUTTON_PLUS", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:24", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.doc_view_manual_ui_context", + "type": "F1", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:25", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.open_mainfile", + "type": "O", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:26", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.quit_blender", + "type": "Q", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:27", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.save_as_mainfile", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:28", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.save_mainfile", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:29", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.save_mainfile", + "type": "S", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:3", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F11", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:30", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.search_menu", + "type": "F3", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:31", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.toolbar", + "type": "SPACE", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:32", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "wm.toolbar_fallback_pie", + "type": "W", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:4", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F12", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:5", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F2", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:6", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F3", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:7", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F4", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:8", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F5", + "value": "PRESS" + }, + { + "id": "keymap-item:Window:EMPTY:WINDOW:9", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "keymap": "Window:EMPTY:WINDOW", + "idname": "screen.space_type_set_or_cycle", + "type": "F6", + "value": "PRESS" + }, + { + "id": "keymap:3D View Generic:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Generic", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Bend:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Bend", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Breakdowner:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Breakdowner", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Cursor:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Cursor", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Armature, B-Bone Size", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Armature, Bone Envelope", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Armature, Extrude to Cursor", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Armature, Extrude", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Armature, Roll", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Curve Pen", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Draw", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Extrude to Cursor", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Extrude", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Radius", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Randomize", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curve, Tilt", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curves, Draw", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Curves, Pen", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 4 + }, + { + "id": "keymap:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Grease Pencil, Gradient", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Grease Pencil, Interpolate", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Grease Pencil, Pen", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 4 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Bevel", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Bisect", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Edge Slide", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Extrude Along Normals", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Extrude Individual", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Extrude Manifold", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Extrude Region", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Extrude to Cursor", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Inset Faces", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Knife", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Loop Cut", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Offset Edge Loop Cut", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Poly Build", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Push/Pull", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Randomize", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Rip Edge", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Rip Region", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Shrink/Fatten", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Smooth", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Spin Duplicates", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Spin", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, To Sphere", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Mesh, Vertex Slide", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Edit Text, Select Text", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Measure:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Measure", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Move:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Move", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Object, Add Primitive", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Arc", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Box", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Circle", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Curve", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Eyedropper", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 4 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Interpolate", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Line", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Polyline", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Grease Pencil, Trim", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Weight, Gradient", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Weight, Sample Vertex Group", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Paint Weight, Sample Weight", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Push:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Push", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Relax:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Relax", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Rotate:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Rotate", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Scale:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Scale", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Box Face Set", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Box Hide", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Box Mask", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Box Trim", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Cloth Filter", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Color Filter", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Face Set Edit", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Lasso Face Set", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Lasso Hide", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Lasso Mask", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Lasso Trim", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Line Face Set", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Line Hide", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Line Mask", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Line Project", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Line Trim", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Mask by Color", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Mesh Filter", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Polyline Face Set", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Polyline Hide", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Polyline Mask", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Sculpt, Polyline Trim", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Select Box (fallback)", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:3D View Tool: Select Box:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Select Box", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Select Circle (fallback)", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:3D View Tool: Select Circle:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Select Circle", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Select Lasso (fallback)", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Select Lasso", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:3D View Tool: Shear:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Shear", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:3D View Tool: Transform:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Transform", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Tweak (fallback)", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:3D View Tool: Tweak:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View Tool: Tweak", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:3D View:VIEW_3D:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "3D View", + "spaceType": "VIEW_3D", + "regionType": "WINDOW", + "itemCount": 116 + }, + { + "id": "keymap:Animation Channels:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Animation Channels", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 37 + }, + { + "id": "keymap:Animation:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Animation", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Armature:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Armature", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 52 + }, + { + "id": "keymap:Bevel Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Bevel Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 30 + }, + { + "id": "keymap:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Clip Dopesheet Editor", + "spaceType": "CLIP_EDITOR", + "regionType": "WINDOW", + "itemCount": 4 + }, + { + "id": "keymap:Clip Editor:CLIP_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Clip Editor", + "spaceType": "CLIP_EDITOR", + "regionType": "WINDOW", + "itemCount": 76 + }, + { + "id": "keymap:Clip Graph Editor:CLIP_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Clip Graph Editor", + "spaceType": "CLIP_EDITOR", + "regionType": "WINDOW", + "itemCount": 24 + }, + { + "id": "keymap:Clip Time Scrub:CLIP_EDITOR:PREVIEW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Clip Time Scrub", + "spaceType": "CLIP_EDITOR", + "regionType": "PREVIEW", + "itemCount": 1 + }, + { + "id": "keymap:Clip:CLIP_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Clip", + "spaceType": "CLIP_EDITOR", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Console:CONSOLE:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Console", + "spaceType": "CONSOLE", + "regionType": "WINDOW", + "itemCount": 40 + }, + { + "id": "keymap:Curve Pen Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Curve Pen Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Curve:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Curve", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 45 + }, + { + "id": "keymap:Curves:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Curves", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 34 + }, + { + "id": "keymap:Custom Normals Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Custom Normals Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Dopesheet Generic", + "spaceType": "DOPESHEET_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Dopesheet:DOPESHEET_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Dopesheet", + "spaceType": "DOPESHEET_EDITOR", + "regionType": "WINDOW", + "itemCount": 68 + }, + { + "id": "keymap:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Eyedropper ColorRamp PointSampling Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 7 + }, + { + "id": "keymap:Eyedropper Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Eyedropper Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 7 + }, + { + "id": "keymap:File Browser Buttons:FILE_BROWSER:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "File Browser Buttons", + "spaceType": "FILE_BROWSER", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:File Browser Main:FILE_BROWSER:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "File Browser Main", + "spaceType": "FILE_BROWSER", + "regionType": "WINDOW", + "itemCount": 32 + }, + { + "id": "keymap:File Browser:FILE_BROWSER:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "File Browser", + "spaceType": "FILE_BROWSER", + "regionType": "WINDOW", + "itemCount": 32 + }, + { + "id": "keymap:Fill Tool Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Fill Tool Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Font:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Font", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 49 + }, + { + "id": "keymap:Frames:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Frames", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 17 + }, + { + "id": "keymap:Generic Gizmo Click Drag:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Gizmo Click Drag", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Generic Gizmo Drag:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Gizmo Drag", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Generic Gizmo Maybe Drag:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Gizmo Maybe Drag", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Generic Gizmo Select:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Gizmo Select", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Gizmo Tweak Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 12 + }, + { + "id": "keymap:Generic Gizmo:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Gizmo", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Generic Tool: Annotate Eraser:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Tool: Annotate Eraser", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Generic Tool: Annotate Line:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Tool: Annotate Line", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Generic Tool: Annotate Polygon:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Tool: Annotate Polygon", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Generic Tool: Annotate:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Generic Tool: Annotate", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Gesture Box:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Gesture Box", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:Gesture Lasso:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Gesture Lasso", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Gesture Polyline:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Gesture Polyline", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Gesture Straight Line:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Gesture Straight Line", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 7 + }, + { + "id": "keymap:Gesture Zoom Border:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Gesture Zoom Border", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Graph Editor Generic", + "spaceType": "GRAPH_EDITOR", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:Graph Editor:GRAPH_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Graph Editor", + "spaceType": "GRAPH_EDITOR", + "regionType": "WINDOW", + "itemCount": 71 + }, + { + "id": "keymap:Grease Pencil Brush Stroke:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Brush Stroke", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Grease Pencil Draw Mode:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Draw Mode", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 22 + }, + { + "id": "keymap:Grease Pencil Edit Mode:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Edit Mode", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 57 + }, + { + "id": "keymap:Grease Pencil Fill Tool:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Fill Tool", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Sculpt Mode", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 27 + }, + { + "id": "keymap:Grease Pencil Selection:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Selection", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 10 + }, + { + "id": "keymap:Grease Pencil Vertex Paint:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Vertex Paint", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 22 + }, + { + "id": "keymap:Grease Pencil Weight Paint:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil Weight Paint", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 26 + }, + { + "id": "keymap:Grease Pencil:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Grease Pencil", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Box", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Circle", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Cursor", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Move", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Rotate", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Scale", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Select Box (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Select Box", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Select Circle (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Select Circle", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Select Lasso (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Select Lasso", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Transform", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Tweak (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Mask, Tweak", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Sample", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Cursor", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Grab", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Move", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Pinch", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Relax", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Rip Region", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Rotate", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Scale", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Select Box (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Select Box", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Select Circle (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Select Circle", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Select Lasso (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Select Lasso", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Tweak (fallback)", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Editor Tool: Uv, Tweak", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Image Generic:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Generic", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 11 + }, + { + "id": "keymap:Image Paint:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image Paint", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 26 + }, + { + "id": "keymap:Image:IMAGE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Image", + "spaceType": "IMAGE_EDITOR", + "regionType": "WINDOW", + "itemCount": 51 + }, + { + "id": "keymap:Info:INFO:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Info", + "spaceType": "INFO", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Interpolate Tool Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Interpolate Tool Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 7 + }, + { + "id": "keymap:Knife Tool Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Knife Tool Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 25 + }, + { + "id": "keymap:Lattice:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Lattice", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 21 + }, + { + "id": "keymap:Markers:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Markers", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 25 + }, + { + "id": "keymap:Mask Editing:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Mask Editing", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 48 + }, + { + "id": "keymap:Mesh Filter Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Mesh Filter Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Mesh:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Mesh", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 93 + }, + { + "id": "keymap:Metaball:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Metaball", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 22 + }, + { + "id": "keymap:NLA Editor:NLA_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "NLA Editor", + "spaceType": "NLA_EDITOR", + "regionType": "WINDOW", + "itemCount": 49 + }, + { + "id": "keymap:NLA Generic:NLA_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "NLA Generic", + "spaceType": "NLA_EDITOR", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:NLA Tracks:NLA_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "NLA Tracks", + "spaceType": "NLA_EDITOR", + "regionType": "WINDOW", + "itemCount": 8 + }, + { + "id": "keymap:Node Editor:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Editor", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 104 + }, + { + "id": "keymap:Node Generic:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Generic", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Node Link Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Link Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Node Resize Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Resize Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 7 + }, + { + "id": "keymap:Node Tool: Add Reroute:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Add Reroute", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Node Tool: Links Cut:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Links Cut", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Node Tool: Mute Links:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Mute Links", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Select Box (fallback)", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 12 + }, + { + "id": "keymap:Node Tool: Select Box:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Select Box", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 12 + }, + { + "id": "keymap:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Select Circle (fallback)", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Node Tool: Select Circle:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Select Circle", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Select Lasso (fallback)", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Node Tool: Select Lasso:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Select Lasso", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Tweak (fallback)", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:Node Tool: Tweak:NODE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Node Tool: Tweak", + "spaceType": "NODE_EDITOR", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:Object Mode:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Object Mode", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 59 + }, + { + "id": "keymap:Object Non-modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Object Non-modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Outliner:OUTLINER:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Outliner", + "spaceType": "OUTLINER", + "regionType": "WINDOW", + "itemCount": 103 + }, + { + "id": "keymap:Paint Curve:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Paint Curve", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 15 + }, + { + "id": "keymap:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Paint Face Mask (Weight, Vertex, Texture)", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Paint Stroke Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Paint Stroke Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Paint Vertex Selection (Weight, Vertex)", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 16 + }, + { + "id": "keymap:Particle:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Particle", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 30 + }, + { + "id": "keymap:Pen Tool Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Pen Tool Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Point Cloud:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Point Cloud", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 18 + }, + { + "id": "keymap:Pose:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Pose", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 53 + }, + { + "id": "keymap:Preferences:PREFERENCES:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preferences", + "spaceType": "PREFERENCES", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Preferences_nav:PREFERENCES:UI", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preferences_nav", + "spaceType": "PREFERENCES", + "regionType": "UI", + "itemCount": 2 + }, + { + "id": "keymap:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Cursor", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Move", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Rotate", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Sample", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Scale", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Select Box (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Select Box", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Select Circle (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Select Circle", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Select Lasso (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Select Lasso", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Tweak (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview Tool: Tweak", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Preview:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Preview", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 88 + }, + { + "id": "keymap:Primitive Tool Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Primitive Tool Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Property Editor:PROPERTIES:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Property Editor", + "spaceType": "PROPERTIES", + "regionType": "WINDOW", + "itemCount": 20 + }, + { + "id": "keymap:Region Context Menu:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Region Context Menu", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Screen Editing:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Screen Editing", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:Screen:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Screen", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 26 + }, + { + "id": "keymap:Sculpt Curves:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sculpt Curves", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 16 + }, + { + "id": "keymap:Sculpt Expand Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sculpt Expand Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 25 + }, + { + "id": "keymap:Sculpt:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sculpt", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 67 + }, + { + "id": "keymap:Sequencer Channels:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Channels", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Blade", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Select Box (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Select Box", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Select Circle (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Select Circle", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Select Lasso (fallback)", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Select Lasso", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 3 + }, + { + "id": "keymap:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer Tool: Slip", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 2 + }, + { + "id": "keymap:Sequencer:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Sequencer", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 95 + }, + { + "id": "keymap:Slip Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Slip Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 12 + }, + { + "id": "keymap:Spreadsheet Generic:SPREADSHEET:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Spreadsheet Generic", + "spaceType": "SPREADSHEET", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Standard Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Standard Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 8 + }, + { + "id": "keymap:Text Generic:TEXT_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Text Generic", + "spaceType": "TEXT_EDITOR", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:Text:TEXT_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Text", + "spaceType": "TEXT_EDITOR", + "regionType": "WINDOW", + "itemCount": 71 + }, + { + "id": "keymap:Time Scrub:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Time Scrub", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Toolbar Popup:EMPTY:TEMPORARY", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Toolbar Popup", + "spaceType": "EMPTY", + "regionType": "TEMPORARY", + "itemCount": 5 + }, + { + "id": "keymap:Transform Axis Target Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Transform Axis Target Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 9 + }, + { + "id": "keymap:Transform Modal Map:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Transform Modal Map", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 56 + }, + { + "id": "keymap:UV Editor:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "UV Editor", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 88 + }, + { + "id": "keymap:User Interface:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "User Interface", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 33 + }, + { + "id": "keymap:Vertex Paint:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Vertex Paint", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 26 + }, + { + "id": "keymap:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Video Sequence Editor", + "spaceType": "SEQUENCE_EDITOR", + "regionType": "WINDOW", + "itemCount": 7 + }, + { + "id": "keymap:View2D Buttons List:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View2D Buttons List", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:View2D:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View2D", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 25 + }, + { + "id": "keymap:View3D Dolly Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Dolly Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:View3D Fly Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Fly Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 39 + }, + { + "id": "keymap:View3D Gesture Circle:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Gesture Circle", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 14 + }, + { + "id": "keymap:View3D Move Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Move Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:View3D Placement Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Placement Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 12 + }, + { + "id": "keymap:View3D Rotate Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Rotate Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 5 + }, + { + "id": "keymap:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D VR Location Scouting Capture Review Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 6 + }, + { + "id": "keymap:View3D Walk Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Walk Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 50 + }, + { + "id": "keymap:View3D Zoom Modal:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "View3D Zoom Modal", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 1 + }, + { + "id": "keymap:Weight Paint:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Weight Paint", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 25 + }, + { + "id": "keymap:Window:EMPTY:WINDOW", + "task": "M15-01E", + "ownerFamily": "KEYMAP", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "name": "Window", + "spaceType": "EMPTY", + "regionType": "WINDOW", + "itemCount": 33 + }, + { + "id": "modifier:ARMATURE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ARMATURE" + }, + { + "id": "modifier:ARRAY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ARRAY" + }, + { + "id": "modifier:BEVEL", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "BEVEL" + }, + { + "id": "modifier:BOOLEAN", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "BOOLEAN" + }, + { + "id": "modifier:BUILD", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "BUILD" + }, + { + "id": "modifier:CAST", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CAST" + }, + { + "id": "modifier:CLOTH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CLOTH" + }, + { + "id": "modifier:COLLISION", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "COLLISION" + }, + { + "id": "modifier:CORRECTIVE_SMOOTH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CORRECTIVE_SMOOTH" + }, + { + "id": "modifier:CURVE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CURVE" + }, + { + "id": "modifier:DATA_TRANSFER", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "DATA_TRANSFER" + }, + { + "id": "modifier:DECIMATE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "DECIMATE" + }, + { + "id": "modifier:DISPLACE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "DISPLACE" + }, + { + "id": "modifier:DYNAMIC_PAINT", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "DYNAMIC_PAINT" + }, + { + "id": "modifier:EDGE_SPLIT", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "EDGE_SPLIT" + }, + { + "id": "modifier:EXPLODE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "EXPLODE" + }, + { + "id": "modifier:FLUID", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "FLUID" + }, + { + "id": "modifier:GREASE_PENCIL_ARMATURE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_ARMATURE" + }, + { + "id": "modifier:GREASE_PENCIL_ARRAY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_ARRAY" + }, + { + "id": "modifier:GREASE_PENCIL_BUILD", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_BUILD" + }, + { + "id": "modifier:GREASE_PENCIL_COLOR", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_COLOR" + }, + { + "id": "modifier:GREASE_PENCIL_DASH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_DASH" + }, + { + "id": "modifier:GREASE_PENCIL_ENVELOPE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_ENVELOPE" + }, + { + "id": "modifier:GREASE_PENCIL_HOOK", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_HOOK" + }, + { + "id": "modifier:GREASE_PENCIL_LATTICE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_LATTICE" + }, + { + "id": "modifier:GREASE_PENCIL_LENGTH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_LENGTH" + }, + { + "id": "modifier:GREASE_PENCIL_MIRROR", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_MIRROR" + }, + { + "id": "modifier:GREASE_PENCIL_MULTIPLY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_MULTIPLY" + }, + { + "id": "modifier:GREASE_PENCIL_NOISE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_NOISE" + }, + { + "id": "modifier:GREASE_PENCIL_OFFSET", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_OFFSET" + }, + { + "id": "modifier:GREASE_PENCIL_OPACITY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_OPACITY" + }, + { + "id": "modifier:GREASE_PENCIL_OUTLINE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_OUTLINE" + }, + { + "id": "modifier:GREASE_PENCIL_SHRINKWRAP", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_SHRINKWRAP" + }, + { + "id": "modifier:GREASE_PENCIL_SIMPLIFY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_SIMPLIFY" + }, + { + "id": "modifier:GREASE_PENCIL_SMOOTH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_SMOOTH" + }, + { + "id": "modifier:GREASE_PENCIL_SUBDIV", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_SUBDIV" + }, + { + "id": "modifier:GREASE_PENCIL_TEXTURE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_TEXTURE" + }, + { + "id": "modifier:GREASE_PENCIL_THICKNESS", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_THICKNESS" + }, + { + "id": "modifier:GREASE_PENCIL_TIME", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_TIME" + }, + { + "id": "modifier:GREASE_PENCIL_TINT", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_TINT" + }, + { + "id": "modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE" + }, + { + "id": "modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY" + }, + { + "id": "modifier:HOOK", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "HOOK" + }, + { + "id": "modifier:LAPLACIANDEFORM", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LAPLACIANDEFORM" + }, + { + "id": "modifier:LAPLACIANSMOOTH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LAPLACIANSMOOTH" + }, + { + "id": "modifier:LATTICE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LATTICE" + }, + { + "id": "modifier:LINEART", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "LINEART" + }, + { + "id": "modifier:MASK", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MASK" + }, + { + "id": "modifier:MESH_CACHE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MESH_CACHE" + }, + { + "id": "modifier:MESH_DEFORM", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MESH_DEFORM" + }, + { + "id": "modifier:MESH_SEQUENCE_CACHE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MESH_SEQUENCE_CACHE" + }, + { + "id": "modifier:MESH_TO_VOLUME", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MESH_TO_VOLUME" + }, + { + "id": "modifier:MIRROR", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MIRROR" + }, + { + "id": "modifier:MULTIRES", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "MULTIRES" + }, + { + "id": "modifier:NODES", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "NODES" + }, + { + "id": "modifier:NORMAL_EDIT", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "NORMAL_EDIT" + }, + { + "id": "modifier:OCEAN", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "OCEAN" + }, + { + "id": "modifier:PARTICLE_INSTANCE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "PARTICLE_INSTANCE" + }, + { + "id": "modifier:PARTICLE_SYSTEM", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "PARTICLE_SYSTEM" + }, + { + "id": "modifier:REMESH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "REMESH" + }, + { + "id": "modifier:SCREW", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SCREW" + }, + { + "id": "modifier:SHRINKWRAP", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SHRINKWRAP" + }, + { + "id": "modifier:SIMPLE_DEFORM", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SIMPLE_DEFORM" + }, + { + "id": "modifier:SKIN", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SKIN" + }, + { + "id": "modifier:SMOOTH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SMOOTH" + }, + { + "id": "modifier:SOFT_BODY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SOFT_BODY" + }, + { + "id": "modifier:SOLIDIFY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SOLIDIFY" + }, + { + "id": "modifier:SUBSURF", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SUBSURF" + }, + { + "id": "modifier:SURFACE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SURFACE" + }, + { + "id": "modifier:SURFACE_DEFORM", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "SURFACE_DEFORM" + }, + { + "id": "modifier:TRIANGULATE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "TRIANGULATE" + }, + { + "id": "modifier:UV_PROJECT", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "UV_PROJECT" + }, + { + "id": "modifier:UV_WARP", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "UV_WARP" + }, + { + "id": "modifier:VERTEX_WEIGHT_EDIT", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "VERTEX_WEIGHT_EDIT" + }, + { + "id": "modifier:VERTEX_WEIGHT_MIX", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "VERTEX_WEIGHT_MIX" + }, + { + "id": "modifier:VERTEX_WEIGHT_PROXIMITY", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "VERTEX_WEIGHT_PROXIMITY" + }, + { + "id": "modifier:VOLUME_DISPLACE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "VOLUME_DISPLACE" + }, + { + "id": "modifier:VOLUME_TO_MESH", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "VOLUME_TO_MESH" + }, + { + "id": "modifier:WARP", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "WARP" + }, + { + "id": "modifier:WAVE", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "WAVE" + }, + { + "id": "modifier:WEIGHTED_NORMAL", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "WEIGHTED_NORMAL" + }, + { + "id": "modifier:WELD", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "WELD" + }, + { + "id": "modifier:WIREFRAME", + "task": "M15-01C", + "ownerFamily": "MODIFIER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "WIREFRAME" + }, + { + "id": "node:Compositor:CompositorNodeAlphaOver", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeAlphaOver" + }, + { + "id": "node:Compositor:CompositorNodeAntiAliasing", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeAntiAliasing" + }, + { + "id": "node:Compositor:CompositorNodeBilateralblur", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBilateralblur" + }, + { + "id": "node:Compositor:CompositorNodeBlankImage", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBlankImage" + }, + { + "id": "node:Compositor:CompositorNodeBlur", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBlur" + }, + { + "id": "node:Compositor:CompositorNodeBokehBlur", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBokehBlur" + }, + { + "id": "node:Compositor:CompositorNodeBokehImage", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBokehImage" + }, + { + "id": "node:Compositor:CompositorNodeBoxMask", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBoxMask" + }, + { + "id": "node:Compositor:CompositorNodeBrightContrast", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeBrightContrast" + }, + { + "id": "node:Compositor:CompositorNodeChannelMatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeChannelMatte" + }, + { + "id": "node:Compositor:CompositorNodeChromaMatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeChromaMatte" + }, + { + "id": "node:Compositor:CompositorNodeColorBalance", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeColorBalance" + }, + { + "id": "node:Compositor:CompositorNodeColorCorrection", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeColorCorrection" + }, + { + "id": "node:Compositor:CompositorNodeColorMatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeColorMatte" + }, + { + "id": "node:Compositor:CompositorNodeColorSpill", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeColorSpill" + }, + { + "id": "node:Compositor:CompositorNodeCombineColor", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeCombineColor" + }, + { + "id": "node:Compositor:CompositorNodeConvertColorSpace", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeConvertColorSpace" + }, + { + "id": "node:Compositor:CompositorNodeConvertToDisplay", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeConvertToDisplay" + }, + { + "id": "node:Compositor:CompositorNodeConvolve", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeConvolve" + }, + { + "id": "node:Compositor:CompositorNodeCornerPin", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeCornerPin" + }, + { + "id": "node:Compositor:CompositorNodeCrop", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeCrop" + }, + { + "id": "node:Compositor:CompositorNodeCryptomatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeCryptomatte" + }, + { + "id": "node:Compositor:CompositorNodeCryptomatteV2", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeCryptomatteV2" + }, + { + "id": "node:Compositor:CompositorNodeCurveRGB", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeCurveRGB" + }, + { + "id": "node:Compositor:CompositorNodeDBlur", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDBlur" + }, + { + "id": "node:Compositor:CompositorNodeDefocus", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDefocus" + }, + { + "id": "node:Compositor:CompositorNodeDenoise", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDenoise" + }, + { + "id": "node:Compositor:CompositorNodeDespeckle", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDespeckle" + }, + { + "id": "node:Compositor:CompositorNodeDiffMatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDiffMatte" + }, + { + "id": "node:Compositor:CompositorNodeDilateErode", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDilateErode" + }, + { + "id": "node:Compositor:CompositorNodeDisplace", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDisplace" + }, + { + "id": "node:Compositor:CompositorNodeDistanceMatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDistanceMatte" + }, + { + "id": "node:Compositor:CompositorNodeDoubleEdgeMask", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeDoubleEdgeMask" + }, + { + "id": "node:Compositor:CompositorNodeEllipseMask", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeEllipseMask" + }, + { + "id": "node:Compositor:CompositorNodeExposure", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeExposure" + }, + { + "id": "node:Compositor:CompositorNodeFilter", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeFilter" + }, + { + "id": "node:Compositor:CompositorNodeFlip", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeFlip" + }, + { + "id": "node:Compositor:CompositorNodeGlare", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeGlare" + }, + { + "id": "node:Compositor:CompositorNodeGroup", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeGroup" + }, + { + "id": "node:Compositor:CompositorNodeHueCorrect", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeHueCorrect" + }, + { + "id": "node:Compositor:CompositorNodeHueSat", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeHueSat" + }, + { + "id": "node:Compositor:CompositorNodeIDMask", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeIDMask" + }, + { + "id": "node:Compositor:CompositorNodeImage", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeImage" + }, + { + "id": "node:Compositor:CompositorNodeImageCoordinates", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeImageCoordinates" + }, + { + "id": "node:Compositor:CompositorNodeImageInfo", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeImageInfo" + }, + { + "id": "node:Compositor:CompositorNodeInpaint", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeInpaint" + }, + { + "id": "node:Compositor:CompositorNodeInvert", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeInvert" + }, + { + "id": "node:Compositor:CompositorNodeKeying", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeKeying" + }, + { + "id": "node:Compositor:CompositorNodeKeyingScreen", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeKeyingScreen" + }, + { + "id": "node:Compositor:CompositorNodeKuwahara", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeKuwahara" + }, + { + "id": "node:Compositor:CompositorNodeLensdist", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeLensdist" + }, + { + "id": "node:Compositor:CompositorNodeLevels", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeLevels" + }, + { + "id": "node:Compositor:CompositorNodeLumaMatte", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeLumaMatte" + }, + { + "id": "node:Compositor:CompositorNodeMapUV", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeMapUV" + }, + { + "id": "node:Compositor:CompositorNodeMask", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeMask" + }, + { + "id": "node:Compositor:CompositorNodeMaskToSDF", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeMaskToSDF" + }, + { + "id": "node:Compositor:CompositorNodeMovieClip", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeMovieClip" + }, + { + "id": "node:Compositor:CompositorNodeMovieDistortion", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeMovieDistortion" + }, + { + "id": "node:Compositor:CompositorNodeNormal", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeNormal" + }, + { + "id": "node:Compositor:CompositorNodeNormalize", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeNormalize" + }, + { + "id": "node:Compositor:CompositorNodeOutputFile", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeOutputFile" + }, + { + "id": "node:Compositor:CompositorNodePixelate", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodePixelate" + }, + { + "id": "node:Compositor:CompositorNodePlaneTrackDeform", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodePlaneTrackDeform" + }, + { + "id": "node:Compositor:CompositorNodePosterize", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodePosterize" + }, + { + "id": "node:Compositor:CompositorNodePremulKey", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodePremulKey" + }, + { + "id": "node:Compositor:CompositorNodeRGB", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeRGB" + }, + { + "id": "node:Compositor:CompositorNodeRGBToBW", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeRGBToBW" + }, + { + "id": "node:Compositor:CompositorNodeRLayers", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeRLayers" + }, + { + "id": "node:Compositor:CompositorNodeRelativeToPixel", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeRelativeToPixel" + }, + { + "id": "node:Compositor:CompositorNodeRotate", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeRotate" + }, + { + "id": "node:Compositor:CompositorNodeScale", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeScale" + }, + { + "id": "node:Compositor:CompositorNodeSceneTime", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSceneTime" + }, + { + "id": "node:Compositor:CompositorNodeSeparateColor", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSeparateColor" + }, + { + "id": "node:Compositor:CompositorNodeSequencerStripInfo", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSequencerStripInfo" + }, + { + "id": "node:Compositor:CompositorNodeSetAlpha", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSetAlpha" + }, + { + "id": "node:Compositor:CompositorNodeSplit", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSplit" + }, + { + "id": "node:Compositor:CompositorNodeStabilize", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeStabilize" + }, + { + "id": "node:Compositor:CompositorNodeStringToImage", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeStringToImage" + }, + { + "id": "node:Compositor:CompositorNodeSwitch", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSwitch" + }, + { + "id": "node:Compositor:CompositorNodeSwitchView", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeSwitchView" + }, + { + "id": "node:Compositor:CompositorNodeTime", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeTime" + }, + { + "id": "node:Compositor:CompositorNodeTonemap", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeTonemap" + }, + { + "id": "node:Compositor:CompositorNodeTrackPos", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeTrackPos" + }, + { + "id": "node:Compositor:CompositorNodeTransform", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeTransform" + }, + { + "id": "node:Compositor:CompositorNodeTranslate", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeTranslate" + }, + { + "id": "node:Compositor:CompositorNodeVecBlur", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeVecBlur" + }, + { + "id": "node:Compositor:CompositorNodeViewer", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeViewer" + }, + { + "id": "node:Compositor:CompositorNodeZcombine", + "task": "M15-01C", + "ownerFamily": "COMPOSITOR_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "CompositorNodeZcombine" + }, + { + "id": "node:Geometry:GeometryNodeAccumulateField", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeAccumulateField" + }, + { + "id": "node:Geometry:GeometryNodeAttributeDomainSize", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeAttributeDomainSize" + }, + { + "id": "node:Geometry:GeometryNodeAttributeStatistic", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeAttributeStatistic" + }, + { + "id": "node:Geometry:GeometryNodeBake", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeBake" + }, + { + "id": "node:Geometry:GeometryNodeBlurAttribute", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeBlurAttribute" + }, + { + "id": "node:Geometry:GeometryNodeBoneInfo", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeBoneInfo" + }, + { + "id": "node:Geometry:GeometryNodeBoundBox", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeBoundBox" + }, + { + "id": "node:Geometry:GeometryNodeCameraInfo", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCameraInfo" + }, + { + "id": "node:Geometry:GeometryNodeCaptureAttribute", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCaptureAttribute" + }, + { + "id": "node:Geometry:GeometryNodeClosureToList", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeClosureToList" + }, + { + "id": "node:Geometry:GeometryNodeClusterByConnected", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeClusterByConnected" + }, + { + "id": "node:Geometry:GeometryNodeClusterByDistance", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeClusterByDistance" + }, + { + "id": "node:Geometry:GeometryNodeCollectionChildren", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCollectionChildren" + }, + { + "id": "node:Geometry:GeometryNodeCollectionInfo", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCollectionInfo" + }, + { + "id": "node:Geometry:GeometryNodeConvexHull", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeConvexHull" + }, + { + "id": "node:Geometry:GeometryNodeCornersOfEdge", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCornersOfEdge" + }, + { + "id": "node:Geometry:GeometryNodeCornersOfFace", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCornersOfFace" + }, + { + "id": "node:Geometry:GeometryNodeCornersOfVertex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCornersOfVertex" + }, + { + "id": "node:Geometry:GeometryNodeCubeGridTopology", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCubeGridTopology" + }, + { + "id": "node:Geometry:GeometryNodeCurveArc", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveArc" + }, + { + "id": "node:Geometry:GeometryNodeCurveEndpointSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveEndpointSelection" + }, + { + "id": "node:Geometry:GeometryNodeCurveHandleTypeSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveHandleTypeSelection" + }, + { + "id": "node:Geometry:GeometryNodeCurveLength", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveLength" + }, + { + "id": "node:Geometry:GeometryNodeCurveOfPoint", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveOfPoint" + }, + { + "id": "node:Geometry:GeometryNodeCurvePrimitiveBezierSegment", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurvePrimitiveBezierSegment" + }, + { + "id": "node:Geometry:GeometryNodeCurvePrimitiveCircle", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurvePrimitiveCircle" + }, + { + "id": "node:Geometry:GeometryNodeCurvePrimitiveLine", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurvePrimitiveLine" + }, + { + "id": "node:Geometry:GeometryNodeCurvePrimitiveQuadrilateral", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurvePrimitiveQuadrilateral" + }, + { + "id": "node:Geometry:GeometryNodeCurveQuadraticBezier", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveQuadraticBezier" + }, + { + "id": "node:Geometry:GeometryNodeCurveSetHandles", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveSetHandles" + }, + { + "id": "node:Geometry:GeometryNodeCurveSpiral", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveSpiral" + }, + { + "id": "node:Geometry:GeometryNodeCurveSplineType", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveSplineType" + }, + { + "id": "node:Geometry:GeometryNodeCurveStar", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveStar" + }, + { + "id": "node:Geometry:GeometryNodeCurveToMesh", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveToMesh" + }, + { + "id": "node:Geometry:GeometryNodeCurveToPoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurveToPoints" + }, + { + "id": "node:Geometry:GeometryNodeCurvesToGreasePencil", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeCurvesToGreasePencil" + }, + { + "id": "node:Geometry:GeometryNodeDeformCurvesOnSurface", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDeformCurvesOnSurface" + }, + { + "id": "node:Geometry:GeometryNodeDeleteGeometry", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDeleteGeometry" + }, + { + "id": "node:Geometry:GeometryNodeDistributePointsInGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDistributePointsInGrid" + }, + { + "id": "node:Geometry:GeometryNodeDistributePointsInVolume", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDistributePointsInVolume" + }, + { + "id": "node:Geometry:GeometryNodeDistributePointsOnFaces", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDistributePointsOnFaces" + }, + { + "id": "node:Geometry:GeometryNodeDualMesh", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDualMesh" + }, + { + "id": "node:Geometry:GeometryNodeDuplicateElements", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeDuplicateElements" + }, + { + "id": "node:Geometry:GeometryNodeEdgePathsToCurves", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeEdgePathsToCurves" + }, + { + "id": "node:Geometry:GeometryNodeEdgePathsToSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeEdgePathsToSelection" + }, + { + "id": "node:Geometry:GeometryNodeEdgesOfCorner", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeEdgesOfCorner" + }, + { + "id": "node:Geometry:GeometryNodeEdgesOfVertex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeEdgesOfVertex" + }, + { + "id": "node:Geometry:GeometryNodeEdgesToFaceGroups", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeEdgesToFaceGroups" + }, + { + "id": "node:Geometry:GeometryNodeExtrudeMesh", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeExtrudeMesh" + }, + { + "id": "node:Geometry:GeometryNodeFaceOfCorner", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFaceOfCorner" + }, + { + "id": "node:Geometry:GeometryNodeFieldAtIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldAtIndex" + }, + { + "id": "node:Geometry:GeometryNodeFieldAverage", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldAverage" + }, + { + "id": "node:Geometry:GeometryNodeFieldMinAndMax", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldMinAndMax" + }, + { + "id": "node:Geometry:GeometryNodeFieldOnDomain", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldOnDomain" + }, + { + "id": "node:Geometry:GeometryNodeFieldToGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldToGrid" + }, + { + "id": "node:Geometry:GeometryNodeFieldToList", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldToList" + }, + { + "id": "node:Geometry:GeometryNodeFieldVariance", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFieldVariance" + }, + { + "id": "node:Geometry:GeometryNodeFillCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFillCurve" + }, + { + "id": "node:Geometry:GeometryNodeFilletCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFilletCurve" + }, + { + "id": "node:Geometry:GeometryNodeFilterList", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFilterList" + }, + { + "id": "node:Geometry:GeometryNodeFlipFaces", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeFlipFaces" + }, + { + "id": "node:Geometry:GeometryNodeForeachGeometryElementInput", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeForeachGeometryElementInput" + }, + { + "id": "node:Geometry:GeometryNodeForeachGeometryElementOutput", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeForeachGeometryElementOutput" + }, + { + "id": "node:Geometry:GeometryNodeGeometryToInstance", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGeometryToInstance" + }, + { + "id": "node:Geometry:GeometryNodeGetAttributeNames", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGetAttributeNames" + }, + { + "id": "node:Geometry:GeometryNodeGetGeometryBundle", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGetGeometryBundle" + }, + { + "id": "node:Geometry:GeometryNodeGetGeometryComponent", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGetGeometryComponent" + }, + { + "id": "node:Geometry:GeometryNodeGetNamedGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGetNamedGrid" + }, + { + "id": "node:Geometry:GeometryNodeGizmoDial", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGizmoDial" + }, + { + "id": "node:Geometry:GeometryNodeGizmoLinear", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGizmoLinear" + }, + { + "id": "node:Geometry:GeometryNodeGizmoTransform", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGizmoTransform" + }, + { + "id": "node:Geometry:GeometryNodeGreasePencilToCurves", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGreasePencilToCurves" + }, + { + "id": "node:Geometry:GeometryNodeGridAdvect", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridAdvect" + }, + { + "id": "node:Geometry:GeometryNodeGridClip", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridClip" + }, + { + "id": "node:Geometry:GeometryNodeGridCurl", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridCurl" + }, + { + "id": "node:Geometry:GeometryNodeGridDilateAndErode", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridDilateAndErode" + }, + { + "id": "node:Geometry:GeometryNodeGridDivergence", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridDivergence" + }, + { + "id": "node:Geometry:GeometryNodeGridGradient", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridGradient" + }, + { + "id": "node:Geometry:GeometryNodeGridInfo", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridInfo" + }, + { + "id": "node:Geometry:GeometryNodeGridLaplacian", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridLaplacian" + }, + { + "id": "node:Geometry:GeometryNodeGridMean", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridMean" + }, + { + "id": "node:Geometry:GeometryNodeGridMedian", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridMedian" + }, + { + "id": "node:Geometry:GeometryNodeGridPrune", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridPrune" + }, + { + "id": "node:Geometry:GeometryNodeGridToMesh", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridToMesh" + }, + { + "id": "node:Geometry:GeometryNodeGridToPoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridToPoints" + }, + { + "id": "node:Geometry:GeometryNodeGridVoxelize", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGridVoxelize" + }, + { + "id": "node:Geometry:GeometryNodeGroup", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeGroup" + }, + { + "id": "node:Geometry:GeometryNodeImageInfo", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImageInfo" + }, + { + "id": "node:Geometry:GeometryNodeImageTexture", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImageTexture" + }, + { + "id": "node:Geometry:GeometryNodeImportCSV", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImportCSV" + }, + { + "id": "node:Geometry:GeometryNodeImportOBJ", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImportOBJ" + }, + { + "id": "node:Geometry:GeometryNodeImportPLY", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImportPLY" + }, + { + "id": "node:Geometry:GeometryNodeImportSTL", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImportSTL" + }, + { + "id": "node:Geometry:GeometryNodeImportText", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImportText" + }, + { + "id": "node:Geometry:GeometryNodeImportVDB", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeImportVDB" + }, + { + "id": "node:Geometry:GeometryNodeIndexOfNearest", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeIndexOfNearest" + }, + { + "id": "node:Geometry:GeometryNodeIndexSwitch", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeIndexSwitch" + }, + { + "id": "node:Geometry:GeometryNodeInputActiveCamera", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputActiveCamera" + }, + { + "id": "node:Geometry:GeometryNodeInputCollection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputCollection" + }, + { + "id": "node:Geometry:GeometryNodeInputCurveHandlePositions", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputCurveHandlePositions" + }, + { + "id": "node:Geometry:GeometryNodeInputCurveTilt", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputCurveTilt" + }, + { + "id": "node:Geometry:GeometryNodeInputEdgeSmooth", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputEdgeSmooth" + }, + { + "id": "node:Geometry:GeometryNodeInputFont", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputFont" + }, + { + "id": "node:Geometry:GeometryNodeInputID", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputID" + }, + { + "id": "node:Geometry:GeometryNodeInputImage", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputImage" + }, + { + "id": "node:Geometry:GeometryNodeInputIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputIndex" + }, + { + "id": "node:Geometry:GeometryNodeInputInstanceBounds", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputInstanceBounds" + }, + { + "id": "node:Geometry:GeometryNodeInputInstanceReference", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputInstanceReference" + }, + { + "id": "node:Geometry:GeometryNodeInputInstanceRotation", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputInstanceRotation" + }, + { + "id": "node:Geometry:GeometryNodeInputInstanceScale", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputInstanceScale" + }, + { + "id": "node:Geometry:GeometryNodeInputMaterial", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMaterial" + }, + { + "id": "node:Geometry:GeometryNodeInputMaterialIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMaterialIndex" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshEdgeAngle", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshEdgeAngle" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshEdgeNeighbors", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshEdgeNeighbors" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshEdgeVertices", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshEdgeVertices" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshFaceArea", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshFaceArea" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshFaceIsPlanar", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshFaceIsPlanar" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshFaceNeighbors", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshFaceNeighbors" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshIsland", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshIsland" + }, + { + "id": "node:Geometry:GeometryNodeInputMeshVertexNeighbors", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputMeshVertexNeighbors" + }, + { + "id": "node:Geometry:GeometryNodeInputNamedAttribute", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputNamedAttribute" + }, + { + "id": "node:Geometry:GeometryNodeInputNamedLayerSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputNamedLayerSelection" + }, + { + "id": "node:Geometry:GeometryNodeInputNormal", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputNormal" + }, + { + "id": "node:Geometry:GeometryNodeInputObject", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputObject" + }, + { + "id": "node:Geometry:GeometryNodeInputPosition", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputPosition" + }, + { + "id": "node:Geometry:GeometryNodeInputRadius", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputRadius" + }, + { + "id": "node:Geometry:GeometryNodeInputSceneTime", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputSceneTime" + }, + { + "id": "node:Geometry:GeometryNodeInputShadeSmooth", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputShadeSmooth" + }, + { + "id": "node:Geometry:GeometryNodeInputShortestEdgePaths", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputShortestEdgePaths" + }, + { + "id": "node:Geometry:GeometryNodeInputSplineCyclic", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputSplineCyclic" + }, + { + "id": "node:Geometry:GeometryNodeInputSplineResolution", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputSplineResolution" + }, + { + "id": "node:Geometry:GeometryNodeInputTangent", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputTangent" + }, + { + "id": "node:Geometry:GeometryNodeInputVoxelIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInputVoxelIndex" + }, + { + "id": "node:Geometry:GeometryNodeInstanceOnPoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInstanceOnPoints" + }, + { + "id": "node:Geometry:GeometryNodeInstanceTransform", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInstanceTransform" + }, + { + "id": "node:Geometry:GeometryNodeInstancesToPoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInstancesToPoints" + }, + { + "id": "node:Geometry:GeometryNodeInterpolateCurves", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeInterpolateCurves" + }, + { + "id": "node:Geometry:GeometryNodeIsViewport", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeIsViewport" + }, + { + "id": "node:Geometry:GeometryNodeJoinGeometry", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeJoinGeometry" + }, + { + "id": "node:Geometry:GeometryNodeListGetItem", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeListGetItem" + }, + { + "id": "node:Geometry:GeometryNodeListLength", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeListLength" + }, + { + "id": "node:Geometry:GeometryNodeMaterialSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMaterialSelection" + }, + { + "id": "node:Geometry:GeometryNodeMenuSwitch", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMenuSwitch" + }, + { + "id": "node:Geometry:GeometryNodeMergeByDistance", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMergeByDistance" + }, + { + "id": "node:Geometry:GeometryNodeMergeLayers", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMergeLayers" + }, + { + "id": "node:Geometry:GeometryNodeMergePoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMergePoints" + }, + { + "id": "node:Geometry:GeometryNodeMeshBevel", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshBevel" + }, + { + "id": "node:Geometry:GeometryNodeMeshBoolean", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshBoolean" + }, + { + "id": "node:Geometry:GeometryNodeMeshCircle", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshCircle" + }, + { + "id": "node:Geometry:GeometryNodeMeshCone", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshCone" + }, + { + "id": "node:Geometry:GeometryNodeMeshCube", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshCube" + }, + { + "id": "node:Geometry:GeometryNodeMeshCylinder", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshCylinder" + }, + { + "id": "node:Geometry:GeometryNodeMeshFaceSetBoundaries", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshFaceSetBoundaries" + }, + { + "id": "node:Geometry:GeometryNodeMeshGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshGrid" + }, + { + "id": "node:Geometry:GeometryNodeMeshIcoSphere", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshIcoSphere" + }, + { + "id": "node:Geometry:GeometryNodeMeshLine", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshLine" + }, + { + "id": "node:Geometry:GeometryNodeMeshToCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshToCurve" + }, + { + "id": "node:Geometry:GeometryNodeMeshToDensityGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshToDensityGrid" + }, + { + "id": "node:Geometry:GeometryNodeMeshToPoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshToPoints" + }, + { + "id": "node:Geometry:GeometryNodeMeshToSDFGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshToSDFGrid" + }, + { + "id": "node:Geometry:GeometryNodeMeshToVolume", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshToVolume" + }, + { + "id": "node:Geometry:GeometryNodeMeshUVSphere", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeMeshUVSphere" + }, + { + "id": "node:Geometry:GeometryNodeObjectInfo", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeObjectInfo" + }, + { + "id": "node:Geometry:GeometryNodeOffsetCornerInFace", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeOffsetCornerInFace" + }, + { + "id": "node:Geometry:GeometryNodeOffsetPointInCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeOffsetPointInCurve" + }, + { + "id": "node:Geometry:GeometryNodePoints", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodePoints" + }, + { + "id": "node:Geometry:GeometryNodePointsOfCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodePointsOfCurve" + }, + { + "id": "node:Geometry:GeometryNodePointsToCurves", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodePointsToCurves" + }, + { + "id": "node:Geometry:GeometryNodePointsToSDFGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodePointsToSDFGrid" + }, + { + "id": "node:Geometry:GeometryNodePointsToVertices", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodePointsToVertices" + }, + { + "id": "node:Geometry:GeometryNodePointsToVolume", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodePointsToVolume" + }, + { + "id": "node:Geometry:GeometryNodeProximity", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeProximity" + }, + { + "id": "node:Geometry:GeometryNodeRaycast", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRaycast" + }, + { + "id": "node:Geometry:GeometryNodeRealizeInstances", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRealizeInstances" + }, + { + "id": "node:Geometry:GeometryNodeRemoveAttribute", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRemoveAttribute" + }, + { + "id": "node:Geometry:GeometryNodeRenameAttribute", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRenameAttribute" + }, + { + "id": "node:Geometry:GeometryNodeRepeatInput", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRepeatInput" + }, + { + "id": "node:Geometry:GeometryNodeRepeatOutput", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRepeatOutput" + }, + { + "id": "node:Geometry:GeometryNodeReplaceMaterial", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeReplaceMaterial" + }, + { + "id": "node:Geometry:GeometryNodeResampleCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeResampleCurve" + }, + { + "id": "node:Geometry:GeometryNodeReverseCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeReverseCurve" + }, + { + "id": "node:Geometry:GeometryNodeRotateInstances", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeRotateInstances" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridBoolean", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridBoolean" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridFillet", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridFillet" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridLaplacian", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridLaplacian" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridMean", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridMean" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridMeanCurvature", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridMeanCurvature" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridMedian", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridMedian" + }, + { + "id": "node:Geometry:GeometryNodeSDFGridOffset", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSDFGridOffset" + }, + { + "id": "node:Geometry:GeometryNodeSampleCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleCurve" + }, + { + "id": "node:Geometry:GeometryNodeSampleGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleGrid" + }, + { + "id": "node:Geometry:GeometryNodeSampleGridIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleGridIndex" + }, + { + "id": "node:Geometry:GeometryNodeSampleIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleIndex" + }, + { + "id": "node:Geometry:GeometryNodeSampleNearest", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleNearest" + }, + { + "id": "node:Geometry:GeometryNodeSampleNearestSurface", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleNearestSurface" + }, + { + "id": "node:Geometry:GeometryNodeSampleSoundFrequencies", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleSoundFrequencies" + }, + { + "id": "node:Geometry:GeometryNodeSampleUVSurface", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSampleUVSurface" + }, + { + "id": "node:Geometry:GeometryNodeScaleElements", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeScaleElements" + }, + { + "id": "node:Geometry:GeometryNodeScaleInstances", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeScaleInstances" + }, + { + "id": "node:Geometry:GeometryNodeSelfObject", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSelfObject" + }, + { + "id": "node:Geometry:GeometryNodeSeparateComponents", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSeparateComponents" + }, + { + "id": "node:Geometry:GeometryNodeSeparateGeometry", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSeparateGeometry" + }, + { + "id": "node:Geometry:GeometryNodeSetCurveHandlePositions", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetCurveHandlePositions" + }, + { + "id": "node:Geometry:GeometryNodeSetCurveNormal", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetCurveNormal" + }, + { + "id": "node:Geometry:GeometryNodeSetCurveRadius", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetCurveRadius" + }, + { + "id": "node:Geometry:GeometryNodeSetCurveTilt", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetCurveTilt" + }, + { + "id": "node:Geometry:GeometryNodeSetGeometryBundle", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGeometryBundle" + }, + { + "id": "node:Geometry:GeometryNodeSetGeometryName", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGeometryName" + }, + { + "id": "node:Geometry:GeometryNodeSetGreasePencilColor", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGreasePencilColor" + }, + { + "id": "node:Geometry:GeometryNodeSetGreasePencilDepth", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGreasePencilDepth" + }, + { + "id": "node:Geometry:GeometryNodeSetGreasePencilSoftness", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGreasePencilSoftness" + }, + { + "id": "node:Geometry:GeometryNodeSetGridBackground", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGridBackground" + }, + { + "id": "node:Geometry:GeometryNodeSetGridTransform", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetGridTransform" + }, + { + "id": "node:Geometry:GeometryNodeSetID", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetID" + }, + { + "id": "node:Geometry:GeometryNodeSetInstanceTransform", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetInstanceTransform" + }, + { + "id": "node:Geometry:GeometryNodeSetMaterial", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetMaterial" + }, + { + "id": "node:Geometry:GeometryNodeSetMaterialIndex", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetMaterialIndex" + }, + { + "id": "node:Geometry:GeometryNodeSetMeshNormal", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetMeshNormal" + }, + { + "id": "node:Geometry:GeometryNodeSetNURBSOrder", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetNURBSOrder" + }, + { + "id": "node:Geometry:GeometryNodeSetNURBSWeight", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetNURBSWeight" + }, + { + "id": "node:Geometry:GeometryNodeSetPointRadius", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetPointRadius" + }, + { + "id": "node:Geometry:GeometryNodeSetPosition", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetPosition" + }, + { + "id": "node:Geometry:GeometryNodeSetShadeSmooth", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetShadeSmooth" + }, + { + "id": "node:Geometry:GeometryNodeSetSplineCyclic", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetSplineCyclic" + }, + { + "id": "node:Geometry:GeometryNodeSetSplineResolution", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSetSplineResolution" + }, + { + "id": "node:Geometry:GeometryNodeSimulationInput", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSimulationInput" + }, + { + "id": "node:Geometry:GeometryNodeSimulationOutput", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSimulationOutput" + }, + { + "id": "node:Geometry:GeometryNodeSortElements", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSortElements" + }, + { + "id": "node:Geometry:GeometryNodeSortList", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSortList" + }, + { + "id": "node:Geometry:GeometryNodeSplineLength", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSplineLength" + }, + { + "id": "node:Geometry:GeometryNodeSplineParameter", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSplineParameter" + }, + { + "id": "node:Geometry:GeometryNodeSplitEdges", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSplitEdges" + }, + { + "id": "node:Geometry:GeometryNodeSplitToInstances", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSplitToInstances" + }, + { + "id": "node:Geometry:GeometryNodeStoreNamedAttribute", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeStoreNamedAttribute" + }, + { + "id": "node:Geometry:GeometryNodeStoreNamedGrid", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeStoreNamedGrid" + }, + { + "id": "node:Geometry:GeometryNodeStringJoin", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeStringJoin" + }, + { + "id": "node:Geometry:GeometryNodeStringToCurves", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeStringToCurves" + }, + { + "id": "node:Geometry:GeometryNodeSubdivideCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSubdivideCurve" + }, + { + "id": "node:Geometry:GeometryNodeSubdivideMesh", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSubdivideMesh" + }, + { + "id": "node:Geometry:GeometryNodeSubdivisionSurface", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSubdivisionSurface" + }, + { + "id": "node:Geometry:GeometryNodeSwitch", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeSwitch" + }, + { + "id": "node:Geometry:GeometryNodeTagFilter", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTagFilter" + }, + { + "id": "node:Geometry:GeometryNodeTool3DCursor", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTool3DCursor" + }, + { + "id": "node:Geometry:GeometryNodeToolActiveElement", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeToolActiveElement" + }, + { + "id": "node:Geometry:GeometryNodeToolFaceSet", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeToolFaceSet" + }, + { + "id": "node:Geometry:GeometryNodeToolMousePosition", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeToolMousePosition" + }, + { + "id": "node:Geometry:GeometryNodeToolSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeToolSelection" + }, + { + "id": "node:Geometry:GeometryNodeToolSetFaceSet", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeToolSetFaceSet" + }, + { + "id": "node:Geometry:GeometryNodeToolSetSelection", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeToolSetSelection" + }, + { + "id": "node:Geometry:GeometryNodeTransferAttributes", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTransferAttributes" + }, + { + "id": "node:Geometry:GeometryNodeTransform", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTransform" + }, + { + "id": "node:Geometry:GeometryNodeTranslateInstances", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTranslateInstances" + }, + { + "id": "node:Geometry:GeometryNodeTriangulate", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTriangulate" + }, + { + "id": "node:Geometry:GeometryNodeTrimCurve", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeTrimCurve" + }, + { + "id": "node:Geometry:GeometryNodeUVPackIslands", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeUVPackIslands" + }, + { + "id": "node:Geometry:GeometryNodeUVTangent", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeUVTangent" + }, + { + "id": "node:Geometry:GeometryNodeUVUnwrap", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeUVUnwrap" + }, + { + "id": "node:Geometry:GeometryNodeVertexOfCorner", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeVertexOfCorner" + }, + { + "id": "node:Geometry:GeometryNodeViewer", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeViewer" + }, + { + "id": "node:Geometry:GeometryNodeViewportTransform", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeViewportTransform" + }, + { + "id": "node:Geometry:GeometryNodeVolumeCube", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeVolumeCube" + }, + { + "id": "node:Geometry:GeometryNodeVolumeToMesh", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeVolumeToMesh" + }, + { + "id": "node:Geometry:GeometryNodeWarning", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeWarning" + }, + { + "id": "node:Geometry:GeometryNodeXPBDSolver", + "task": "M15-01C", + "ownerFamily": "GEOMETRY_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "GeometryNodeXPBDSolver" + }, + { + "id": "node:Shader:ShaderNodeAddShader", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeAddShader" + }, + { + "id": "node:Shader:ShaderNodeAmbientOcclusion", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeAmbientOcclusion" + }, + { + "id": "node:Shader:ShaderNodeAttribute", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeAttribute" + }, + { + "id": "node:Shader:ShaderNodeBackground", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBackground" + }, + { + "id": "node:Shader:ShaderNodeBevel", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBevel" + }, + { + "id": "node:Shader:ShaderNodeBlackbody", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBlackbody" + }, + { + "id": "node:Shader:ShaderNodeBrightContrast", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBrightContrast" + }, + { + "id": "node:Shader:ShaderNodeBsdfAnisotropic", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfAnisotropic" + }, + { + "id": "node:Shader:ShaderNodeBsdfDiffuse", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfDiffuse" + }, + { + "id": "node:Shader:ShaderNodeBsdfGlass", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfGlass" + }, + { + "id": "node:Shader:ShaderNodeBsdfHair", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfHair" + }, + { + "id": "node:Shader:ShaderNodeBsdfHairPrincipled", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfHairPrincipled" + }, + { + "id": "node:Shader:ShaderNodeBsdfMetallic", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfMetallic" + }, + { + "id": "node:Shader:ShaderNodeBsdfPrincipled", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfPrincipled" + }, + { + "id": "node:Shader:ShaderNodeBsdfRayPortal", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfRayPortal" + }, + { + "id": "node:Shader:ShaderNodeBsdfRefraction", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfRefraction" + }, + { + "id": "node:Shader:ShaderNodeBsdfSheen", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfSheen" + }, + { + "id": "node:Shader:ShaderNodeBsdfToon", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfToon" + }, + { + "id": "node:Shader:ShaderNodeBsdfTranslucent", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfTranslucent" + }, + { + "id": "node:Shader:ShaderNodeBsdfTransparent", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBsdfTransparent" + }, + { + "id": "node:Shader:ShaderNodeBump", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeBump" + }, + { + "id": "node:Shader:ShaderNodeCameraData", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeCameraData" + }, + { + "id": "node:Shader:ShaderNodeClamp", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeClamp" + }, + { + "id": "node:Shader:ShaderNodeCombineColor", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeCombineColor" + }, + { + "id": "node:Shader:ShaderNodeCombineXYZ", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeCombineXYZ" + }, + { + "id": "node:Shader:ShaderNodeDisplacement", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeDisplacement" + }, + { + "id": "node:Shader:ShaderNodeEeveeSpecular", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeEeveeSpecular" + }, + { + "id": "node:Shader:ShaderNodeEmission", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeEmission" + }, + { + "id": "node:Shader:ShaderNodeFloatCurve", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeFloatCurve" + }, + { + "id": "node:Shader:ShaderNodeFresnel", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeFresnel" + }, + { + "id": "node:Shader:ShaderNodeGamma", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeGamma" + }, + { + "id": "node:Shader:ShaderNodeGroup", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeGroup" + }, + { + "id": "node:Shader:ShaderNodeHairInfo", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeHairInfo" + }, + { + "id": "node:Shader:ShaderNodeHoldout", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeHoldout" + }, + { + "id": "node:Shader:ShaderNodeHueSaturation", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeHueSaturation" + }, + { + "id": "node:Shader:ShaderNodeInvert", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeInvert" + }, + { + "id": "node:Shader:ShaderNodeLayerWeight", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeLayerWeight" + }, + { + "id": "node:Shader:ShaderNodeLightFalloff", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeLightFalloff" + }, + { + "id": "node:Shader:ShaderNodeLightPath", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeLightPath" + }, + { + "id": "node:Shader:ShaderNodeMapRange", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeMapRange" + }, + { + "id": "node:Shader:ShaderNodeMapping", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeMapping" + }, + { + "id": "node:Shader:ShaderNodeMath", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeMath" + }, + { + "id": "node:Shader:ShaderNodeMix", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeMix" + }, + { + "id": "node:Shader:ShaderNodeMixRGB", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeMixRGB" + }, + { + "id": "node:Shader:ShaderNodeMixShader", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeMixShader" + }, + { + "id": "node:Shader:ShaderNodeNewGeometry", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeNewGeometry" + }, + { + "id": "node:Shader:ShaderNodeNormal", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeNormal" + }, + { + "id": "node:Shader:ShaderNodeNormalMap", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeNormalMap" + }, + { + "id": "node:Shader:ShaderNodeObjectInfo", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeObjectInfo" + }, + { + "id": "node:Shader:ShaderNodeOutputAOV", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeOutputAOV" + }, + { + "id": "node:Shader:ShaderNodeOutputLight", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeOutputLight" + }, + { + "id": "node:Shader:ShaderNodeOutputLineStyle", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeOutputLineStyle" + }, + { + "id": "node:Shader:ShaderNodeOutputMaterial", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeOutputMaterial" + }, + { + "id": "node:Shader:ShaderNodeOutputWorld", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeOutputWorld" + }, + { + "id": "node:Shader:ShaderNodeParticleInfo", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeParticleInfo" + }, + { + "id": "node:Shader:ShaderNodePointInfo", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodePointInfo" + }, + { + "id": "node:Shader:ShaderNodeRGB", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeRGB" + }, + { + "id": "node:Shader:ShaderNodeRGBCurve", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeRGBCurve" + }, + { + "id": "node:Shader:ShaderNodeRGBToBW", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeRGBToBW" + }, + { + "id": "node:Shader:ShaderNodeRadialTiling", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeRadialTiling" + }, + { + "id": "node:Shader:ShaderNodeRaycast", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeRaycast" + }, + { + "id": "node:Shader:ShaderNodeScript", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeScript" + }, + { + "id": "node:Shader:ShaderNodeSeparateColor", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeSeparateColor" + }, + { + "id": "node:Shader:ShaderNodeSeparateXYZ", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeSeparateXYZ" + }, + { + "id": "node:Shader:ShaderNodeShaderToRGB", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeShaderToRGB" + }, + { + "id": "node:Shader:ShaderNodeSqueeze", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeSqueeze" + }, + { + "id": "node:Shader:ShaderNodeSubsurfaceScattering", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeSubsurfaceScattering" + }, + { + "id": "node:Shader:ShaderNodeTangent", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTangent" + }, + { + "id": "node:Shader:ShaderNodeTexBrick", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexBrick" + }, + { + "id": "node:Shader:ShaderNodeTexChecker", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexChecker" + }, + { + "id": "node:Shader:ShaderNodeTexCoord", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexCoord" + }, + { + "id": "node:Shader:ShaderNodeTexEnvironment", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexEnvironment" + }, + { + "id": "node:Shader:ShaderNodeTexGabor", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexGabor" + }, + { + "id": "node:Shader:ShaderNodeTexGradient", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexGradient" + }, + { + "id": "node:Shader:ShaderNodeTexIES", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexIES" + }, + { + "id": "node:Shader:ShaderNodeTexImage", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexImage" + }, + { + "id": "node:Shader:ShaderNodeTexMagic", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexMagic" + }, + { + "id": "node:Shader:ShaderNodeTexNoise", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexNoise" + }, + { + "id": "node:Shader:ShaderNodeTexSky", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexSky" + }, + { + "id": "node:Shader:ShaderNodeTexVoronoi", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexVoronoi" + }, + { + "id": "node:Shader:ShaderNodeTexWave", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexWave" + }, + { + "id": "node:Shader:ShaderNodeTexWhiteNoise", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeTexWhiteNoise" + }, + { + "id": "node:Shader:ShaderNodeUVAlongStroke", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeUVAlongStroke" + }, + { + "id": "node:Shader:ShaderNodeUVMap", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeUVMap" + }, + { + "id": "node:Shader:ShaderNodeValToRGB", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeValToRGB" + }, + { + "id": "node:Shader:ShaderNodeValue", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeValue" + }, + { + "id": "node:Shader:ShaderNodeVectorCurve", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVectorCurve" + }, + { + "id": "node:Shader:ShaderNodeVectorDisplacement", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVectorDisplacement" + }, + { + "id": "node:Shader:ShaderNodeVectorMath", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVectorMath" + }, + { + "id": "node:Shader:ShaderNodeVectorRotate", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVectorRotate" + }, + { + "id": "node:Shader:ShaderNodeVectorTransform", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVectorTransform" + }, + { + "id": "node:Shader:ShaderNodeVertexColor", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVertexColor" + }, + { + "id": "node:Shader:ShaderNodeVolumeAbsorption", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVolumeAbsorption" + }, + { + "id": "node:Shader:ShaderNodeVolumeCoefficients", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVolumeCoefficients" + }, + { + "id": "node:Shader:ShaderNodeVolumeInfo", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVolumeInfo" + }, + { + "id": "node:Shader:ShaderNodeVolumePrincipled", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVolumePrincipled" + }, + { + "id": "node:Shader:ShaderNodeVolumeScatter", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeVolumeScatter" + }, + { + "id": "node:Shader:ShaderNodeWavelength", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeWavelength" + }, + { + "id": "node:Shader:ShaderNodeWireframe", + "task": "M15-01C", + "ownerFamily": "SHADER_NODE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-family-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01C/manifest.json" + ], + "source": "tests/golden/M15-01C/blender-family-inventory.json", + "identifier": "ShaderNodeWireframe" + }, + { + "id": "operator:action.bake_keys", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.bake_keys", + "poll": false + }, + { + "id": "operator:action.clean", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.clean", + "poll": false + }, + { + "id": "operator:action.clickselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.clickselect", + "poll": false + }, + { + "id": "operator:action.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.copy", + "poll": false + }, + { + "id": "operator:action.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.delete", + "poll": false + }, + { + "id": "operator:action.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.duplicate", + "poll": false + }, + { + "id": "operator:action.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.duplicate_move", + "poll": false + }, + { + "id": "operator:action.easing_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.easing_type", + "poll": false + }, + { + "id": "operator:action.extrapolation_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.extrapolation_type", + "poll": false + }, + { + "id": "operator:action.frame_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.frame_jump", + "poll": false + }, + { + "id": "operator:action.handle_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.handle_type", + "poll": false + }, + { + "id": "operator:action.interpolation_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.interpolation_type", + "poll": false + }, + { + "id": "operator:action.keyframe_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.keyframe_insert", + "poll": false + }, + { + "id": "operator:action.keyframe_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.keyframe_type", + "poll": false + }, + { + "id": "operator:action.markers_make_local", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.markers_make_local", + "poll": false + }, + { + "id": "operator:action.mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.mirror", + "poll": false + }, + { + "id": "operator:action.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.new", + "poll": false + }, + { + "id": "operator:action.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.paste", + "poll": false + }, + { + "id": "operator:action.previewrange_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.previewrange_set", + "poll": false + }, + { + "id": "operator:action.push_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.push_down", + "poll": false + }, + { + "id": "operator:action.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_all", + "poll": false + }, + { + "id": "operator:action.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_box", + "poll": false + }, + { + "id": "operator:action.select_by_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_by_type", + "poll": false + }, + { + "id": "operator:action.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_circle", + "poll": false + }, + { + "id": "operator:action.select_column", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_column", + "poll": false + }, + { + "id": "operator:action.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_lasso", + "poll": false + }, + { + "id": "operator:action.select_leftright", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_leftright", + "poll": false + }, + { + "id": "operator:action.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_less", + "poll": false + }, + { + "id": "operator:action.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_linked", + "poll": false + }, + { + "id": "operator:action.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.select_more", + "poll": false + }, + { + "id": "operator:action.snap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.snap", + "poll": false + }, + { + "id": "operator:action.stash", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.stash", + "poll": false + }, + { + "id": "operator:action.stash_and_create", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.stash_and_create", + "poll": false + }, + { + "id": "operator:action.unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.unlink", + "poll": false + }, + { + "id": "operator:action.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.view_all", + "poll": false + }, + { + "id": "operator:action.view_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.view_frame", + "poll": false + }, + { + "id": "operator:action.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "action.view_selected", + "poll": false + }, + { + "id": "operator:anim.change_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.change_frame", + "poll": false + }, + { + "id": "operator:anim.channel_select_keys", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channel_select_keys", + "poll": false + }, + { + "id": "operator:anim.channel_view_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channel_view_pick", + "poll": false + }, + { + "id": "operator:anim.channels_bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_bake", + "poll": false + }, + { + "id": "operator:anim.channels_clean_empty", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_clean_empty", + "poll": false + }, + { + "id": "operator:anim.channels_click", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_click", + "poll": false + }, + { + "id": "operator:anim.channels_collapse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_collapse", + "poll": false + }, + { + "id": "operator:anim.channels_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_delete", + "poll": false + }, + { + "id": "operator:anim.channels_editable_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_editable_toggle", + "poll": false + }, + { + "id": "operator:anim.channels_expand", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_expand", + "poll": false + }, + { + "id": "operator:anim.channels_fcurves_enable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_fcurves_enable", + "poll": false + }, + { + "id": "operator:anim.channels_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_group", + "poll": false + }, + { + "id": "operator:anim.channels_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_move", + "poll": false + }, + { + "id": "operator:anim.channels_rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_rename", + "poll": false + }, + { + "id": "operator:anim.channels_select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_select_all", + "poll": false + }, + { + "id": "operator:anim.channels_select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_select_box", + "poll": false + }, + { + "id": "operator:anim.channels_select_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_select_filter", + "poll": false + }, + { + "id": "operator:anim.channels_setting_disable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_setting_disable", + "poll": false + }, + { + "id": "operator:anim.channels_setting_enable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_setting_enable", + "poll": false + }, + { + "id": "operator:anim.channels_setting_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_setting_toggle", + "poll": false + }, + { + "id": "operator:anim.channels_ungroup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_ungroup", + "poll": false + }, + { + "id": "operator:anim.channels_view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.channels_view_selected", + "poll": false + }, + { + "id": "operator:anim.clear_useless_actions", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.clear_useless_actions", + "poll": false + }, + { + "id": "operator:anim.copy_driver_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.copy_driver_button", + "poll": true + }, + { + "id": "operator:anim.driver_button_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.driver_button_add", + "poll": false + }, + { + "id": "operator:anim.driver_button_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.driver_button_edit", + "poll": true + }, + { + "id": "operator:anim.driver_button_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.driver_button_remove", + "poll": true + }, + { + "id": "operator:anim.end_frame_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.end_frame_set", + "poll": false + }, + { + "id": "operator:anim.keyframe_clear_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_clear_button", + "poll": false + }, + { + "id": "operator:anim.keyframe_clear_v3d", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_clear_v3d", + "poll": false + }, + { + "id": "operator:anim.keyframe_clear_vse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_clear_vse", + "poll": false + }, + { + "id": "operator:anim.keyframe_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_delete", + "poll": false + }, + { + "id": "operator:anim.keyframe_delete_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_delete_button", + "poll": false + }, + { + "id": "operator:anim.keyframe_delete_by_name", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_delete_by_name", + "poll": false + }, + { + "id": "operator:anim.keyframe_delete_v3d", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_delete_v3d", + "poll": false + }, + { + "id": "operator:anim.keyframe_delete_vse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_delete_vse", + "poll": false + }, + { + "id": "operator:anim.keyframe_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_insert", + "poll": false + }, + { + "id": "operator:anim.keyframe_insert_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_insert_button", + "poll": false + }, + { + "id": "operator:anim.keyframe_insert_by_name", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_insert_by_name", + "poll": false + }, + { + "id": "operator:anim.keyframe_insert_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyframe_insert_menu", + "poll": false + }, + { + "id": "operator:anim.keying_set_active_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keying_set_active_set", + "poll": false + }, + { + "id": "operator:anim.keying_set_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keying_set_add", + "poll": true + }, + { + "id": "operator:anim.keying_set_export", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keying_set_export", + "poll": true + }, + { + "id": "operator:anim.keying_set_path_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keying_set_path_add", + "poll": false + }, + { + "id": "operator:anim.keying_set_path_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keying_set_path_remove", + "poll": false + }, + { + "id": "operator:anim.keying_set_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keying_set_remove", + "poll": false + }, + { + "id": "operator:anim.keyingset_button_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyingset_button_add", + "poll": true + }, + { + "id": "operator:anim.keyingset_button_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.keyingset_button_remove", + "poll": true + }, + { + "id": "operator:anim.merge_animation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.merge_animation", + "poll": false + }, + { + "id": "operator:anim.paste_driver_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.paste_driver_button", + "poll": true + }, + { + "id": "operator:anim.previewrange_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.previewrange_clear", + "poll": false + }, + { + "id": "operator:anim.previewrange_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.previewrange_set", + "poll": false + }, + { + "id": "operator:anim.replace_action", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.replace_action", + "poll": false + }, + { + "id": "operator:anim.replace_action_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.replace_action_new", + "poll": false + }, + { + "id": "operator:anim.scene_range_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.scene_range_frame", + "poll": false + }, + { + "id": "operator:anim.separate_slots", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.separate_slots", + "poll": false + }, + { + "id": "operator:anim.slot_channels_move_to_new_action", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.slot_channels_move_to_new_action", + "poll": false + }, + { + "id": "operator:anim.slot_new_for_id", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.slot_new_for_id", + "poll": false + }, + { + "id": "operator:anim.slot_unassign_from_constraint", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.slot_unassign_from_constraint", + "poll": false + }, + { + "id": "operator:anim.slot_unassign_from_id", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.slot_unassign_from_id", + "poll": false + }, + { + "id": "operator:anim.slot_unassign_from_nla_strip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.slot_unassign_from_nla_strip", + "poll": false + }, + { + "id": "operator:anim.start_frame_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.start_frame_set", + "poll": false + }, + { + "id": "operator:anim.update_animated_transform_constraints", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.update_animated_transform_constraints", + "poll": true + }, + { + "id": "operator:anim.version_bone_hide_property", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.version_bone_hide_property", + "poll": true + }, + { + "id": "operator:anim.view_curve_in_graph_editor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "anim.view_curve_in_graph_editor", + "poll": true + }, + { + "id": "operator:armature.align", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.align", + "poll": false + }, + { + "id": "operator:armature.assign_to_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.assign_to_collection", + "poll": false + }, + { + "id": "operator:armature.autoside_names", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.autoside_names", + "poll": false + }, + { + "id": "operator:armature.bone_primitive_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.bone_primitive_add", + "poll": false + }, + { + "id": "operator:armature.calculate_roll", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.calculate_roll", + "poll": false + }, + { + "id": "operator:armature.click_extrude", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.click_extrude", + "poll": false + }, + { + "id": "operator:armature.collection_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_add", + "poll": false + }, + { + "id": "operator:armature.collection_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_assign", + "poll": false + }, + { + "id": "operator:armature.collection_create_and_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_create_and_assign", + "poll": false + }, + { + "id": "operator:armature.collection_deselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_deselect", + "poll": false + }, + { + "id": "operator:armature.collection_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_move", + "poll": false + }, + { + "id": "operator:armature.collection_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_remove", + "poll": false + }, + { + "id": "operator:armature.collection_remove_unused", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_remove_unused", + "poll": false + }, + { + "id": "operator:armature.collection_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_select", + "poll": false + }, + { + "id": "operator:armature.collection_show_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_show_all", + "poll": false + }, + { + "id": "operator:armature.collection_unassign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_unassign", + "poll": false + }, + { + "id": "operator:armature.collection_unassign_named", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_unassign_named", + "poll": false + }, + { + "id": "operator:armature.collection_unsolo_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.collection_unsolo_all", + "poll": false + }, + { + "id": "operator:armature.copy_bone_color_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.copy_bone_color_to_selected", + "poll": false + }, + { + "id": "operator:armature.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.delete", + "poll": false + }, + { + "id": "operator:armature.dissolve", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.dissolve", + "poll": false + }, + { + "id": "operator:armature.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.duplicate", + "poll": false + }, + { + "id": "operator:armature.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.duplicate_move", + "poll": false + }, + { + "id": "operator:armature.duplicate_rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.duplicate_rename", + "poll": false + }, + { + "id": "operator:armature.extrude", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.extrude", + "poll": false + }, + { + "id": "operator:armature.extrude_forked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.extrude_forked", + "poll": false + }, + { + "id": "operator:armature.extrude_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.extrude_move", + "poll": false + }, + { + "id": "operator:armature.fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.fill", + "poll": false + }, + { + "id": "operator:armature.flip_names", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.flip_names", + "poll": false + }, + { + "id": "operator:armature.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.hide", + "poll": false + }, + { + "id": "operator:armature.move_to_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.move_to_collection", + "poll": false + }, + { + "id": "operator:armature.parent_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.parent_clear", + "poll": false + }, + { + "id": "operator:armature.parent_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.parent_set", + "poll": false + }, + { + "id": "operator:armature.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.reveal", + "poll": false + }, + { + "id": "operator:armature.roll_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.roll_clear", + "poll": false + }, + { + "id": "operator:armature.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_all", + "poll": false + }, + { + "id": "operator:armature.select_hierarchy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_hierarchy", + "poll": false + }, + { + "id": "operator:armature.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_less", + "poll": false + }, + { + "id": "operator:armature.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_linked", + "poll": false + }, + { + "id": "operator:armature.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_linked_pick", + "poll": false + }, + { + "id": "operator:armature.select_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_mirror", + "poll": false + }, + { + "id": "operator:armature.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_more", + "poll": false + }, + { + "id": "operator:armature.select_similar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.select_similar", + "poll": false + }, + { + "id": "operator:armature.separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.separate", + "poll": false + }, + { + "id": "operator:armature.shortest_path_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.shortest_path_pick", + "poll": false + }, + { + "id": "operator:armature.split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.split", + "poll": false + }, + { + "id": "operator:armature.subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.subdivide", + "poll": false + }, + { + "id": "operator:armature.switch_direction", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.switch_direction", + "poll": false + }, + { + "id": "operator:armature.symmetrize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "armature.symmetrize", + "poll": false + }, + { + "id": "operator:asset.asset_download", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.asset_download", + "poll": false + }, + { + "id": "operator:asset.assets_download", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.assets_download", + "poll": false + }, + { + "id": "operator:asset.assign_action", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.assign_action", + "poll": false + }, + { + "id": "operator:asset.browse_containing_blend_file", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.browse_containing_blend_file", + "poll": false + }, + { + "id": "operator:asset.bundle_install", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.bundle_install", + "poll": false + }, + { + "id": "operator:asset.catalog_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.catalog_delete", + "poll": false + }, + { + "id": "operator:asset.catalog_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.catalog_new", + "poll": false + }, + { + "id": "operator:asset.catalog_redo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.catalog_redo", + "poll": false + }, + { + "id": "operator:asset.catalog_undo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.catalog_undo", + "poll": false + }, + { + "id": "operator:asset.catalog_undo_push", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.catalog_undo_push", + "poll": false + }, + { + "id": "operator:asset.catalogs_save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.catalogs_save", + "poll": false + }, + { + "id": "operator:asset.clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.clear", + "poll": false + }, + { + "id": "operator:asset.clear_single", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.clear_single", + "poll": false + }, + { + "id": "operator:asset.library_refresh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.library_refresh", + "poll": false + }, + { + "id": "operator:asset.library_reload_listing", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.library_reload_listing", + "poll": false + }, + { + "id": "operator:asset.mark", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.mark", + "poll": false + }, + { + "id": "operator:asset.mark_single", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.mark_single", + "poll": false + }, + { + "id": "operator:asset.open_containing_blend_file", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.open_containing_blend_file", + "poll": false + }, + { + "id": "operator:asset.screenshot_preview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.screenshot_preview", + "poll": false + }, + { + "id": "operator:asset.tag_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.tag_add", + "poll": false + }, + { + "id": "operator:asset.tag_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "asset.tag_remove", + "poll": false + }, + { + "id": "operator:boid.rule_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.rule_add", + "poll": true + }, + { + "id": "operator:boid.rule_del", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.rule_del", + "poll": true + }, + { + "id": "operator:boid.rule_move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.rule_move_down", + "poll": true + }, + { + "id": "operator:boid.rule_move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.rule_move_up", + "poll": true + }, + { + "id": "operator:boid.state_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.state_add", + "poll": true + }, + { + "id": "operator:boid.state_del", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.state_del", + "poll": true + }, + { + "id": "operator:boid.state_move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.state_move_down", + "poll": true + }, + { + "id": "operator:boid.state_move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "boid.state_move_up", + "poll": true + }, + { + "id": "operator:brush.asset_activate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_activate", + "poll": true + }, + { + "id": "operator:brush.asset_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_delete", + "poll": false + }, + { + "id": "operator:brush.asset_edit_metadata", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_edit_metadata", + "poll": false + }, + { + "id": "operator:brush.asset_load_preview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_load_preview", + "poll": false + }, + { + "id": "operator:brush.asset_revert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_revert", + "poll": false + }, + { + "id": "operator:brush.asset_save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_save", + "poll": false + }, + { + "id": "operator:brush.asset_save_as", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.asset_save_as", + "poll": false + }, + { + "id": "operator:brush.scale_size", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.scale_size", + "poll": true + }, + { + "id": "operator:brush.stencil_control", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.stencil_control", + "poll": false + }, + { + "id": "operator:brush.stencil_fit_image_aspect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.stencil_fit_image_aspect", + "poll": false + }, + { + "id": "operator:brush.stencil_reset_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "brush.stencil_reset_transform", + "poll": false + }, + { + "id": "operator:buttons.clear_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "buttons.clear_filter", + "poll": false + }, + { + "id": "operator:buttons.context_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "buttons.context_menu", + "poll": false + }, + { + "id": "operator:buttons.directory_browse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "buttons.directory_browse", + "poll": true + }, + { + "id": "operator:buttons.file_browse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "buttons.file_browse", + "poll": true + }, + { + "id": "operator:buttons.start_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "buttons.start_filter", + "poll": false + }, + { + "id": "operator:buttons.toggle_pin", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "buttons.toggle_pin", + "poll": false + }, + { + "id": "operator:cachefile.layer_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cachefile.layer_add", + "poll": true + }, + { + "id": "operator:cachefile.layer_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cachefile.layer_move", + "poll": true + }, + { + "id": "operator:cachefile.layer_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cachefile.layer_remove", + "poll": true + }, + { + "id": "operator:cachefile.open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cachefile.open", + "poll": true + }, + { + "id": "operator:cachefile.reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cachefile.reload", + "poll": true + }, + { + "id": "operator:camera.preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "camera.preset_add", + "poll": true + }, + { + "id": "operator:camera.safe_areas_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "camera.safe_areas_preset_add", + "poll": true + }, + { + "id": "operator:clip.add_marker", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.add_marker", + "poll": false + }, + { + "id": "operator:clip.add_marker_at_click", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.add_marker_at_click", + "poll": false + }, + { + "id": "operator:clip.add_marker_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.add_marker_move", + "poll": false + }, + { + "id": "operator:clip.add_marker_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.add_marker_slide", + "poll": false + }, + { + "id": "operator:clip.apply_solution_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.apply_solution_scale", + "poll": false + }, + { + "id": "operator:clip.average_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.average_tracks", + "poll": false + }, + { + "id": "operator:clip.bundles_to_mesh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.bundles_to_mesh", + "poll": false + }, + { + "id": "operator:clip.camera_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.camera_preset_add", + "poll": true + }, + { + "id": "operator:clip.change_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.change_frame", + "poll": false + }, + { + "id": "operator:clip.clean_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.clean_tracks", + "poll": false + }, + { + "id": "operator:clip.clear_solution", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.clear_solution", + "poll": false + }, + { + "id": "operator:clip.clear_track_path", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.clear_track_path", + "poll": false + }, + { + "id": "operator:clip.constraint_to_fcurve", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.constraint_to_fcurve", + "poll": true + }, + { + "id": "operator:clip.copy_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.copy_tracks", + "poll": false + }, + { + "id": "operator:clip.create_plane_track", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.create_plane_track", + "poll": false + }, + { + "id": "operator:clip.cursor_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.cursor_set", + "poll": false + }, + { + "id": "operator:clip.delete_marker", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.delete_marker", + "poll": false + }, + { + "id": "operator:clip.delete_proxy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.delete_proxy", + "poll": false + }, + { + "id": "operator:clip.delete_track", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.delete_track", + "poll": false + }, + { + "id": "operator:clip.detect_features", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.detect_features", + "poll": false + }, + { + "id": "operator:clip.disable_markers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.disable_markers", + "poll": false + }, + { + "id": "operator:clip.dopesheet_select_channel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.dopesheet_select_channel", + "poll": false + }, + { + "id": "operator:clip.dopesheet_view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.dopesheet_view_all", + "poll": false + }, + { + "id": "operator:clip.filter_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.filter_tracks", + "poll": false + }, + { + "id": "operator:clip.frame_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.frame_jump", + "poll": false + }, + { + "id": "operator:clip.graph_center_current_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_center_current_frame", + "poll": false + }, + { + "id": "operator:clip.graph_delete_curve", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_delete_curve", + "poll": false + }, + { + "id": "operator:clip.graph_delete_knot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_delete_knot", + "poll": false + }, + { + "id": "operator:clip.graph_disable_markers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_disable_markers", + "poll": false + }, + { + "id": "operator:clip.graph_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_select", + "poll": false + }, + { + "id": "operator:clip.graph_select_all_markers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_select_all_markers", + "poll": false + }, + { + "id": "operator:clip.graph_select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_select_box", + "poll": false + }, + { + "id": "operator:clip.graph_view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.graph_view_all", + "poll": false + }, + { + "id": "operator:clip.hide_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.hide_tracks", + "poll": false + }, + { + "id": "operator:clip.hide_tracks_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.hide_tracks_clear", + "poll": false + }, + { + "id": "operator:clip.join_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.join_tracks", + "poll": false + }, + { + "id": "operator:clip.keyframe_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.keyframe_delete", + "poll": false + }, + { + "id": "operator:clip.keyframe_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.keyframe_insert", + "poll": false + }, + { + "id": "operator:clip.lock_selection_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.lock_selection_toggle", + "poll": false + }, + { + "id": "operator:clip.lock_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.lock_tracks", + "poll": false + }, + { + "id": "operator:clip.mode_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.mode_set", + "poll": false + }, + { + "id": "operator:clip.new_image_from_plane_marker", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.new_image_from_plane_marker", + "poll": false + }, + { + "id": "operator:clip.open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.open", + "poll": true + }, + { + "id": "operator:clip.paste_tracks", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.paste_tracks", + "poll": false + }, + { + "id": "operator:clip.prefetch", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.prefetch", + "poll": false + }, + { + "id": "operator:clip.rebuild_proxy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.rebuild_proxy", + "poll": false + }, + { + "id": "operator:clip.refine_markers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.refine_markers", + "poll": false + }, + { + "id": "operator:clip.reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.reload", + "poll": true + }, + { + "id": "operator:clip.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.select", + "poll": false + }, + { + "id": "operator:clip.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.select_all", + "poll": false + }, + { + "id": "operator:clip.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.select_box", + "poll": false + }, + { + "id": "operator:clip.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.select_circle", + "poll": false + }, + { + "id": "operator:clip.select_grouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.select_grouped", + "poll": false + }, + { + "id": "operator:clip.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.select_lasso", + "poll": false + }, + { + "id": "operator:clip.set_active_clip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_active_clip", + "poll": false + }, + { + "id": "operator:clip.set_axis", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_axis", + "poll": false + }, + { + "id": "operator:clip.set_origin", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_origin", + "poll": false + }, + { + "id": "operator:clip.set_plane", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_plane", + "poll": false + }, + { + "id": "operator:clip.set_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_scale", + "poll": false + }, + { + "id": "operator:clip.set_scene_frames", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_scene_frames", + "poll": false + }, + { + "id": "operator:clip.set_solution_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_solution_scale", + "poll": false + }, + { + "id": "operator:clip.set_solver_keyframe", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_solver_keyframe", + "poll": false + }, + { + "id": "operator:clip.set_viewport_background", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.set_viewport_background", + "poll": false + }, + { + "id": "operator:clip.setup_tracking_scene", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.setup_tracking_scene", + "poll": false + }, + { + "id": "operator:clip.slide_marker", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.slide_marker", + "poll": false + }, + { + "id": "operator:clip.slide_plane_marker", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.slide_plane_marker", + "poll": false + }, + { + "id": "operator:clip.solve_camera", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.solve_camera", + "poll": false + }, + { + "id": "operator:clip.stabilize_2d_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.stabilize_2d_add", + "poll": false + }, + { + "id": "operator:clip.stabilize_2d_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.stabilize_2d_remove", + "poll": false + }, + { + "id": "operator:clip.stabilize_2d_rotation_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.stabilize_2d_rotation_add", + "poll": false + }, + { + "id": "operator:clip.stabilize_2d_rotation_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.stabilize_2d_rotation_remove", + "poll": false + }, + { + "id": "operator:clip.stabilize_2d_rotation_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.stabilize_2d_rotation_select", + "poll": false + }, + { + "id": "operator:clip.stabilize_2d_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.stabilize_2d_select", + "poll": false + }, + { + "id": "operator:clip.track_color_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.track_color_preset_add", + "poll": true + }, + { + "id": "operator:clip.track_copy_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.track_copy_color", + "poll": false + }, + { + "id": "operator:clip.track_markers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.track_markers", + "poll": false + }, + { + "id": "operator:clip.track_settings_as_default", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.track_settings_as_default", + "poll": false + }, + { + "id": "operator:clip.track_settings_to_track", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.track_settings_to_track", + "poll": false + }, + { + "id": "operator:clip.track_to_empty", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.track_to_empty", + "poll": false + }, + { + "id": "operator:clip.tracking_object_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.tracking_object_new", + "poll": false + }, + { + "id": "operator:clip.tracking_object_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.tracking_object_remove", + "poll": false + }, + { + "id": "operator:clip.tracking_settings_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.tracking_settings_preset_add", + "poll": true + }, + { + "id": "operator:clip.update_image_from_plane_marker", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.update_image_from_plane_marker", + "poll": false + }, + { + "id": "operator:clip.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_all", + "poll": false + }, + { + "id": "operator:clip.view_center_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_center_cursor", + "poll": false + }, + { + "id": "operator:clip.view_ndof", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_ndof", + "poll": false + }, + { + "id": "operator:clip.view_pan", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_pan", + "poll": false + }, + { + "id": "operator:clip.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_selected", + "poll": false + }, + { + "id": "operator:clip.view_zoom", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_zoom", + "poll": false + }, + { + "id": "operator:clip.view_zoom_in", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_zoom_in", + "poll": false + }, + { + "id": "operator:clip.view_zoom_out", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_zoom_out", + "poll": false + }, + { + "id": "operator:clip.view_zoom_ratio", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "clip.view_zoom_ratio", + "poll": false + }, + { + "id": "operator:cloth.preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cloth.preset_add", + "poll": true + }, + { + "id": "operator:collection.create", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.create", + "poll": true + }, + { + "id": "operator:collection.export_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.export_all", + "poll": true + }, + { + "id": "operator:collection.exporter_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.exporter_add", + "poll": true + }, + { + "id": "operator:collection.exporter_export", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.exporter_export", + "poll": true + }, + { + "id": "operator:collection.exporter_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.exporter_move", + "poll": true + }, + { + "id": "operator:collection.exporter_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.exporter_remove", + "poll": false + }, + { + "id": "operator:collection.importer_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.importer_add", + "poll": false + }, + { + "id": "operator:collection.importer_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.importer_remove", + "poll": false + }, + { + "id": "operator:collection.objects_add_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.objects_add_active", + "poll": true + }, + { + "id": "operator:collection.objects_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.objects_remove", + "poll": true + }, + { + "id": "operator:collection.objects_remove_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.objects_remove_active", + "poll": true + }, + { + "id": "operator:collection.objects_remove_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "collection.objects_remove_all", + "poll": true + }, + { + "id": "operator:console.autocomplete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.autocomplete", + "poll": false + }, + { + "id": "operator:console.banner", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.banner", + "poll": false + }, + { + "id": "operator:console.clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.clear", + "poll": false + }, + { + "id": "operator:console.clear_line", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.clear_line", + "poll": false + }, + { + "id": "operator:console.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.copy", + "poll": false + }, + { + "id": "operator:console.copy_as_script", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.copy_as_script", + "poll": false + }, + { + "id": "operator:console.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.delete", + "poll": false + }, + { + "id": "operator:console.execute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.execute", + "poll": false + }, + { + "id": "operator:console.history_append", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.history_append", + "poll": false + }, + { + "id": "operator:console.history_cycle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.history_cycle", + "poll": false + }, + { + "id": "operator:console.indent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.indent", + "poll": false + }, + { + "id": "operator:console.indent_or_autocomplete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.indent_or_autocomplete", + "poll": false + }, + { + "id": "operator:console.insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.insert", + "poll": false + }, + { + "id": "operator:console.language", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.language", + "poll": false + }, + { + "id": "operator:console.move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.move", + "poll": false + }, + { + "id": "operator:console.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.paste", + "poll": false + }, + { + "id": "operator:console.scrollback_append", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.scrollback_append", + "poll": false + }, + { + "id": "operator:console.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.select_all", + "poll": false + }, + { + "id": "operator:console.select_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.select_set", + "poll": false + }, + { + "id": "operator:console.select_word", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.select_word", + "poll": false + }, + { + "id": "operator:console.unindent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "console.unindent", + "poll": false + }, + { + "id": "operator:constraint.add_target", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.add_target", + "poll": false + }, + { + "id": "operator:constraint.apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.apply", + "poll": true + }, + { + "id": "operator:constraint.childof_clear_inverse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.childof_clear_inverse", + "poll": true + }, + { + "id": "operator:constraint.childof_set_inverse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.childof_set_inverse", + "poll": true + }, + { + "id": "operator:constraint.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.copy", + "poll": true + }, + { + "id": "operator:constraint.copy_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.copy_to_selected", + "poll": false + }, + { + "id": "operator:constraint.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.delete", + "poll": true + }, + { + "id": "operator:constraint.disable_keep_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.disable_keep_transform", + "poll": false + }, + { + "id": "operator:constraint.followpath_path_animate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.followpath_path_animate", + "poll": true + }, + { + "id": "operator:constraint.limitdistance_reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.limitdistance_reset", + "poll": true + }, + { + "id": "operator:constraint.move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.move_down", + "poll": true + }, + { + "id": "operator:constraint.move_to_index", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.move_to_index", + "poll": true + }, + { + "id": "operator:constraint.move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.move_up", + "poll": true + }, + { + "id": "operator:constraint.normalize_target_weights", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.normalize_target_weights", + "poll": false + }, + { + "id": "operator:constraint.objectsolver_clear_inverse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.objectsolver_clear_inverse", + "poll": true + }, + { + "id": "operator:constraint.objectsolver_set_inverse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.objectsolver_set_inverse", + "poll": true + }, + { + "id": "operator:constraint.remove_target", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.remove_target", + "poll": false + }, + { + "id": "operator:constraint.stretchto_reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "constraint.stretchto_reset", + "poll": true + }, + { + "id": "operator:curve.cyclic_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.cyclic_toggle", + "poll": false + }, + { + "id": "operator:curve.de_select_first", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.de_select_first", + "poll": false + }, + { + "id": "operator:curve.de_select_last", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.de_select_last", + "poll": false + }, + { + "id": "operator:curve.decimate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.decimate", + "poll": false + }, + { + "id": "operator:curve.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.delete", + "poll": false + }, + { + "id": "operator:curve.dissolve_verts", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.dissolve_verts", + "poll": false + }, + { + "id": "operator:curve.draw", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.draw", + "poll": false + }, + { + "id": "operator:curve.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.duplicate", + "poll": false + }, + { + "id": "operator:curve.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.duplicate_move", + "poll": false + }, + { + "id": "operator:curve.extrude", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.extrude", + "poll": false + }, + { + "id": "operator:curve.extrude_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.extrude_move", + "poll": false + }, + { + "id": "operator:curve.handle_type_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.handle_type_set", + "poll": false + }, + { + "id": "operator:curve.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.hide", + "poll": false + }, + { + "id": "operator:curve.make_segment", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.make_segment", + "poll": false + }, + { + "id": "operator:curve.match_texture_space", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.match_texture_space", + "poll": false + }, + { + "id": "operator:curve.normals_make_consistent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.normals_make_consistent", + "poll": false + }, + { + "id": "operator:curve.pen", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.pen", + "poll": false + }, + { + "id": "operator:curve.primitive_bezier_circle_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.primitive_bezier_circle_add", + "poll": true + }, + { + "id": "operator:curve.primitive_bezier_curve_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.primitive_bezier_curve_add", + "poll": true + }, + { + "id": "operator:curve.primitive_nurbs_circle_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.primitive_nurbs_circle_add", + "poll": true + }, + { + "id": "operator:curve.primitive_nurbs_curve_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.primitive_nurbs_curve_add", + "poll": true + }, + { + "id": "operator:curve.primitive_nurbs_path_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.primitive_nurbs_path_add", + "poll": true + }, + { + "id": "operator:curve.radius_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.radius_set", + "poll": false + }, + { + "id": "operator:curve.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.reveal", + "poll": false + }, + { + "id": "operator:curve.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_all", + "poll": false + }, + { + "id": "operator:curve.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_less", + "poll": false + }, + { + "id": "operator:curve.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_linked", + "poll": false + }, + { + "id": "operator:curve.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_linked_pick", + "poll": false + }, + { + "id": "operator:curve.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_more", + "poll": false + }, + { + "id": "operator:curve.select_next", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_next", + "poll": false + }, + { + "id": "operator:curve.select_nth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_nth", + "poll": false + }, + { + "id": "operator:curve.select_previous", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_previous", + "poll": false + }, + { + "id": "operator:curve.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_random", + "poll": false + }, + { + "id": "operator:curve.select_row", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_row", + "poll": false + }, + { + "id": "operator:curve.select_similar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.select_similar", + "poll": false + }, + { + "id": "operator:curve.separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.separate", + "poll": false + }, + { + "id": "operator:curve.shade_flat", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.shade_flat", + "poll": false + }, + { + "id": "operator:curve.shade_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.shade_smooth", + "poll": false + }, + { + "id": "operator:curve.shortest_path_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.shortest_path_pick", + "poll": false + }, + { + "id": "operator:curve.smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.smooth", + "poll": false + }, + { + "id": "operator:curve.smooth_radius", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.smooth_radius", + "poll": false + }, + { + "id": "operator:curve.smooth_tilt", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.smooth_tilt", + "poll": false + }, + { + "id": "operator:curve.smooth_weight", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.smooth_weight", + "poll": false + }, + { + "id": "operator:curve.spin", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.spin", + "poll": false + }, + { + "id": "operator:curve.spline_type_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.spline_type_set", + "poll": false + }, + { + "id": "operator:curve.spline_weight_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.spline_weight_set", + "poll": false + }, + { + "id": "operator:curve.split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.split", + "poll": false + }, + { + "id": "operator:curve.subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.subdivide", + "poll": false + }, + { + "id": "operator:curve.switch_direction", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.switch_direction", + "poll": false + }, + { + "id": "operator:curve.tilt_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.tilt_clear", + "poll": false + }, + { + "id": "operator:curve.vertex_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curve.vertex_add", + "poll": false + }, + { + "id": "operator:curves.add_bezier", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.add_bezier", + "poll": false + }, + { + "id": "operator:curves.add_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.add_circle", + "poll": false + }, + { + "id": "operator:curves.attribute_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.attribute_set", + "poll": false + }, + { + "id": "operator:curves.convert_from_particle_system", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.convert_from_particle_system", + "poll": true + }, + { + "id": "operator:curves.convert_to_particle_system", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.convert_to_particle_system", + "poll": false + }, + { + "id": "operator:curves.curve_type_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.curve_type_set", + "poll": false + }, + { + "id": "operator:curves.cyclic_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.cyclic_toggle", + "poll": false + }, + { + "id": "operator:curves.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.delete", + "poll": false + }, + { + "id": "operator:curves.draw", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.draw", + "poll": false + }, + { + "id": "operator:curves.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.duplicate", + "poll": false + }, + { + "id": "operator:curves.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.duplicate_move", + "poll": false + }, + { + "id": "operator:curves.extrude", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.extrude", + "poll": false + }, + { + "id": "operator:curves.extrude_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.extrude_move", + "poll": false + }, + { + "id": "operator:curves.handle_type_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.handle_type_set", + "poll": false + }, + { + "id": "operator:curves.pen", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.pen", + "poll": true + }, + { + "id": "operator:curves.sculptmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.sculptmode_toggle", + "poll": false + }, + { + "id": "operator:curves.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_all", + "poll": false + }, + { + "id": "operator:curves.select_ends", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_ends", + "poll": false + }, + { + "id": "operator:curves.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_less", + "poll": false + }, + { + "id": "operator:curves.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_linked", + "poll": false + }, + { + "id": "operator:curves.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_linked_pick", + "poll": false + }, + { + "id": "operator:curves.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_more", + "poll": false + }, + { + "id": "operator:curves.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.select_random", + "poll": false + }, + { + "id": "operator:curves.separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.separate", + "poll": false + }, + { + "id": "operator:curves.set_selection_domain", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.set_selection_domain", + "poll": false + }, + { + "id": "operator:curves.snap_curves_to_surface", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.snap_curves_to_surface", + "poll": false + }, + { + "id": "operator:curves.split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.split", + "poll": false + }, + { + "id": "operator:curves.subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.subdivide", + "poll": false + }, + { + "id": "operator:curves.surface_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.surface_set", + "poll": true + }, + { + "id": "operator:curves.switch_direction", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.switch_direction", + "poll": false + }, + { + "id": "operator:curves.tilt_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "curves.tilt_clear", + "poll": false + }, + { + "id": "operator:cycles.denoise_animation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cycles.denoise_animation", + "poll": true + }, + { + "id": "operator:cycles.merge_images", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cycles.merge_images", + "poll": true + }, + { + "id": "operator:cycles.use_shading_nodes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "cycles.use_shading_nodes", + "poll": false + }, + { + "id": "operator:dpaint.bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "dpaint.bake", + "poll": true + }, + { + "id": "operator:dpaint.output_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "dpaint.output_toggle", + "poll": true + }, + { + "id": "operator:dpaint.surface_slot_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "dpaint.surface_slot_add", + "poll": true + }, + { + "id": "operator:dpaint.surface_slot_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "dpaint.surface_slot_remove", + "poll": true + }, + { + "id": "operator:dpaint.type_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "dpaint.type_toggle", + "poll": true + }, + { + "id": "operator:ed.flush_edits", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.flush_edits", + "poll": true + }, + { + "id": "operator:ed.lib_id_fake_user_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_fake_user_toggle", + "poll": true + }, + { + "id": "operator:ed.lib_id_generate_preview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_generate_preview", + "poll": false + }, + { + "id": "operator:ed.lib_id_generate_preview_from_object", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_generate_preview_from_object", + "poll": false + }, + { + "id": "operator:ed.lib_id_load_custom_preview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_load_custom_preview", + "poll": false + }, + { + "id": "operator:ed.lib_id_override_editable_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_override_editable_toggle", + "poll": false + }, + { + "id": "operator:ed.lib_id_remove_preview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_remove_preview", + "poll": false + }, + { + "id": "operator:ed.lib_id_unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.lib_id_unlink", + "poll": true + }, + { + "id": "operator:ed.redo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.redo", + "poll": false + }, + { + "id": "operator:ed.undo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.undo", + "poll": false + }, + { + "id": "operator:ed.undo_history", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.undo_history", + "poll": false + }, + { + "id": "operator:ed.undo_push", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.undo_push", + "poll": true + }, + { + "id": "operator:ed.undo_redo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ed.undo_redo", + "poll": false + }, + { + "id": "operator:export_anim.bvh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "export_anim.bvh", + "poll": false + }, + { + "id": "operator:export_scene.fbx", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "export_scene.fbx", + "poll": true + }, + { + "id": "operator:export_scene.gltf", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "export_scene.gltf", + "poll": true + }, + { + "id": "operator:extensions.package_disable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_disable", + "poll": true + }, + { + "id": "operator:extensions.package_install", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_install", + "poll": false + }, + { + "id": "operator:extensions.package_install_files", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_install_files", + "poll": true + }, + { + "id": "operator:extensions.package_install_marked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_install_marked", + "poll": true + }, + { + "id": "operator:extensions.package_mark_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_mark_clear", + "poll": true + }, + { + "id": "operator:extensions.package_mark_clear_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_mark_clear_all", + "poll": true + }, + { + "id": "operator:extensions.package_mark_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_mark_set", + "poll": true + }, + { + "id": "operator:extensions.package_mark_set_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_mark_set_all", + "poll": true + }, + { + "id": "operator:extensions.package_obsolete_marked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_obsolete_marked", + "poll": true + }, + { + "id": "operator:extensions.package_show_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_show_clear", + "poll": true + }, + { + "id": "operator:extensions.package_show_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_show_set", + "poll": true + }, + { + "id": "operator:extensions.package_show_settings", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_show_settings", + "poll": true + }, + { + "id": "operator:extensions.package_theme_disable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_theme_disable", + "poll": true + }, + { + "id": "operator:extensions.package_theme_enable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_theme_enable", + "poll": true + }, + { + "id": "operator:extensions.package_uninstall", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_uninstall", + "poll": true + }, + { + "id": "operator:extensions.package_uninstall_marked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_uninstall_marked", + "poll": true + }, + { + "id": "operator:extensions.package_uninstall_system", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_uninstall_system", + "poll": false + }, + { + "id": "operator:extensions.package_upgrade_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.package_upgrade_all", + "poll": false + }, + { + "id": "operator:extensions.repo_enable_from_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_enable_from_drop", + "poll": true + }, + { + "id": "operator:extensions.repo_lock_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_lock_all", + "poll": true + }, + { + "id": "operator:extensions.repo_refresh_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_refresh_all", + "poll": true + }, + { + "id": "operator:extensions.repo_sync", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_sync", + "poll": true + }, + { + "id": "operator:extensions.repo_sync_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_sync_all", + "poll": false + }, + { + "id": "operator:extensions.repo_unlock", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_unlock", + "poll": false + }, + { + "id": "operator:extensions.repo_unlock_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.repo_unlock_all", + "poll": true + }, + { + "id": "operator:extensions.status_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.status_clear", + "poll": true + }, + { + "id": "operator:extensions.status_clear_errors", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.status_clear_errors", + "poll": true + }, + { + "id": "operator:extensions.userpref_allow_online", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.userpref_allow_online", + "poll": true + }, + { + "id": "operator:extensions.userpref_allow_online_popup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.userpref_allow_online_popup", + "poll": true + }, + { + "id": "operator:extensions.userpref_show_for_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.userpref_show_for_update", + "poll": true + }, + { + "id": "operator:extensions.userpref_show_online", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.userpref_show_online", + "poll": true + }, + { + "id": "operator:extensions.userpref_tags_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "extensions.userpref_tags_set", + "poll": true + }, + { + "id": "operator:file.autopack_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.autopack_toggle", + "poll": true + }, + { + "id": "operator:file.bookmark_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.bookmark_add", + "poll": false + }, + { + "id": "operator:file.bookmark_cleanup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.bookmark_cleanup", + "poll": false + }, + { + "id": "operator:file.bookmark_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.bookmark_delete", + "poll": false + }, + { + "id": "operator:file.bookmark_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.bookmark_move", + "poll": false + }, + { + "id": "operator:file.cancel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.cancel", + "poll": false + }, + { + "id": "operator:file.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.delete", + "poll": false + }, + { + "id": "operator:file.directory_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.directory_new", + "poll": false + }, + { + "id": "operator:file.edit_directory_path", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.edit_directory_path", + "poll": false + }, + { + "id": "operator:file.execute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.execute", + "poll": false + }, + { + "id": "operator:file.external_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.external_operation", + "poll": true + }, + { + "id": "operator:file.filenum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.filenum", + "poll": false + }, + { + "id": "operator:file.filepath_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.filepath_drop", + "poll": false + }, + { + "id": "operator:file.find_missing_files", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.find_missing_files", + "poll": true + }, + { + "id": "operator:file.hidedot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.hidedot", + "poll": false + }, + { + "id": "operator:file.highlight", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.highlight", + "poll": false + }, + { + "id": "operator:file.make_paths_absolute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.make_paths_absolute", + "poll": true + }, + { + "id": "operator:file.make_paths_relative", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.make_paths_relative", + "poll": true + }, + { + "id": "operator:file.mouse_execute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.mouse_execute", + "poll": false + }, + { + "id": "operator:file.next", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.next", + "poll": false + }, + { + "id": "operator:file.pack_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.pack_all", + "poll": true + }, + { + "id": "operator:file.pack_libraries", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.pack_libraries", + "poll": true + }, + { + "id": "operator:file.parent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.parent", + "poll": false + }, + { + "id": "operator:file.previous", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.previous", + "poll": false + }, + { + "id": "operator:file.refresh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.refresh", + "poll": false + }, + { + "id": "operator:file.rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.rename", + "poll": false + }, + { + "id": "operator:file.report_missing_files", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.report_missing_files", + "poll": true + }, + { + "id": "operator:file.reset_recent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.reset_recent", + "poll": false + }, + { + "id": "operator:file.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.select", + "poll": false + }, + { + "id": "operator:file.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.select_all", + "poll": false + }, + { + "id": "operator:file.select_bookmark", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.select_bookmark", + "poll": false + }, + { + "id": "operator:file.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.select_box", + "poll": false + }, + { + "id": "operator:file.select_walk", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.select_walk", + "poll": false + }, + { + "id": "operator:file.smoothscroll", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.smoothscroll", + "poll": false + }, + { + "id": "operator:file.sort_column_ui_context", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.sort_column_ui_context", + "poll": false + }, + { + "id": "operator:file.start_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.start_filter", + "poll": false + }, + { + "id": "operator:file.unpack_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.unpack_all", + "poll": true + }, + { + "id": "operator:file.unpack_item", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.unpack_item", + "poll": true + }, + { + "id": "operator:file.unpack_libraries", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.unpack_libraries", + "poll": true + }, + { + "id": "operator:file.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "file.view_selected", + "poll": false + }, + { + "id": "operator:fluid.bake_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.bake_all", + "poll": true + }, + { + "id": "operator:fluid.bake_data", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.bake_data", + "poll": true + }, + { + "id": "operator:fluid.bake_guides", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.bake_guides", + "poll": true + }, + { + "id": "operator:fluid.bake_mesh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.bake_mesh", + "poll": true + }, + { + "id": "operator:fluid.bake_noise", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.bake_noise", + "poll": true + }, + { + "id": "operator:fluid.bake_particles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.bake_particles", + "poll": true + }, + { + "id": "operator:fluid.free_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.free_all", + "poll": true + }, + { + "id": "operator:fluid.free_data", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.free_data", + "poll": true + }, + { + "id": "operator:fluid.free_guides", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.free_guides", + "poll": true + }, + { + "id": "operator:fluid.free_mesh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.free_mesh", + "poll": true + }, + { + "id": "operator:fluid.free_noise", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.free_noise", + "poll": true + }, + { + "id": "operator:fluid.free_particles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.free_particles", + "poll": true + }, + { + "id": "operator:fluid.pause_bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.pause_bake", + "poll": true + }, + { + "id": "operator:fluid.preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "fluid.preset_add", + "poll": true + }, + { + "id": "operator:font.case_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.case_set", + "poll": false + }, + { + "id": "operator:font.case_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.case_toggle", + "poll": false + }, + { + "id": "operator:font.change_character", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.change_character", + "poll": false + }, + { + "id": "operator:font.change_spacing", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.change_spacing", + "poll": false + }, + { + "id": "operator:font.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.delete", + "poll": false + }, + { + "id": "operator:font.line_break", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.line_break", + "poll": false + }, + { + "id": "operator:font.move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.move", + "poll": false + }, + { + "id": "operator:font.move_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.move_select", + "poll": false + }, + { + "id": "operator:font.open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.open", + "poll": true + }, + { + "id": "operator:font.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.select_all", + "poll": false + }, + { + "id": "operator:font.select_word", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.select_word", + "poll": false + }, + { + "id": "operator:font.selection_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.selection_set", + "poll": false + }, + { + "id": "operator:font.style_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.style_set", + "poll": false + }, + { + "id": "operator:font.style_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.style_toggle", + "poll": false + }, + { + "id": "operator:font.text_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.text_copy", + "poll": false + }, + { + "id": "operator:font.text_cut", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.text_cut", + "poll": false + }, + { + "id": "operator:font.text_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.text_insert", + "poll": false + }, + { + "id": "operator:font.text_insert_unicode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.text_insert_unicode", + "poll": false + }, + { + "id": "operator:font.text_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.text_paste", + "poll": false + }, + { + "id": "operator:font.text_paste_from_file", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.text_paste_from_file", + "poll": false + }, + { + "id": "operator:font.textbox_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.textbox_add", + "poll": false + }, + { + "id": "operator:font.textbox_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.textbox_remove", + "poll": false + }, + { + "id": "operator:font.unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "font.unlink", + "poll": true + }, + { + "id": "operator:geometry.attribute_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.attribute_add", + "poll": true + }, + { + "id": "operator:geometry.attribute_convert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.attribute_convert", + "poll": true + }, + { + "id": "operator:geometry.attribute_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.attribute_remove", + "poll": true + }, + { + "id": "operator:geometry.color_attribute_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.color_attribute_add", + "poll": true + }, + { + "id": "operator:geometry.color_attribute_convert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.color_attribute_convert", + "poll": false + }, + { + "id": "operator:geometry.color_attribute_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.color_attribute_duplicate", + "poll": false + }, + { + "id": "operator:geometry.color_attribute_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.color_attribute_remove", + "poll": false + }, + { + "id": "operator:geometry.color_attribute_render_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.color_attribute_render_set", + "poll": true + }, + { + "id": "operator:geometry.geometry_randomization", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "geometry.geometry_randomization", + "poll": true + }, + { + "id": "operator:gizmogroup.gizmo_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gizmogroup.gizmo_select", + "poll": false + }, + { + "id": "operator:gizmogroup.gizmo_tweak", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gizmogroup.gizmo_tweak", + "poll": false + }, + { + "id": "operator:gpencil.annotate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.annotate", + "poll": false + }, + { + "id": "operator:gpencil.annotation_active_frame_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.annotation_active_frame_delete", + "poll": false + }, + { + "id": "operator:gpencil.annotation_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.annotation_add", + "poll": false + }, + { + "id": "operator:gpencil.data_unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.data_unlink", + "poll": false + }, + { + "id": "operator:gpencil.layer_annotation_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.layer_annotation_add", + "poll": false + }, + { + "id": "operator:gpencil.layer_annotation_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.layer_annotation_move", + "poll": false + }, + { + "id": "operator:gpencil.layer_annotation_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "gpencil.layer_annotation_remove", + "poll": false + }, + { + "id": "operator:graph.bake_keys", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.bake_keys", + "poll": false + }, + { + "id": "operator:graph.blend_offset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.blend_offset", + "poll": false + }, + { + "id": "operator:graph.blend_to_default", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.blend_to_default", + "poll": false + }, + { + "id": "operator:graph.blend_to_ease", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.blend_to_ease", + "poll": false + }, + { + "id": "operator:graph.blend_to_neighbor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.blend_to_neighbor", + "poll": false + }, + { + "id": "operator:graph.breakdown", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.breakdown", + "poll": false + }, + { + "id": "operator:graph.butterworth_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.butterworth_smooth", + "poll": false + }, + { + "id": "operator:graph.clean", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.clean", + "poll": false + }, + { + "id": "operator:graph.click_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.click_insert", + "poll": false + }, + { + "id": "operator:graph.clickselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.clickselect", + "poll": false + }, + { + "id": "operator:graph.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.copy", + "poll": false + }, + { + "id": "operator:graph.cursor_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.cursor_set", + "poll": false + }, + { + "id": "operator:graph.decimate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.decimate", + "poll": false + }, + { + "id": "operator:graph.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.delete", + "poll": false + }, + { + "id": "operator:graph.driver_delete_invalid", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.driver_delete_invalid", + "poll": false + }, + { + "id": "operator:graph.driver_variables_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.driver_variables_copy", + "poll": false + }, + { + "id": "operator:graph.driver_variables_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.driver_variables_paste", + "poll": false + }, + { + "id": "operator:graph.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.duplicate", + "poll": false + }, + { + "id": "operator:graph.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.duplicate_move", + "poll": false + }, + { + "id": "operator:graph.ease", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.ease", + "poll": false + }, + { + "id": "operator:graph.easing_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.easing_type", + "poll": false + }, + { + "id": "operator:graph.equalize_handles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.equalize_handles", + "poll": false + }, + { + "id": "operator:graph.euler_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.euler_filter", + "poll": false + }, + { + "id": "operator:graph.extrapolation_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.extrapolation_type", + "poll": false + }, + { + "id": "operator:graph.fmodifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.fmodifier_add", + "poll": false + }, + { + "id": "operator:graph.fmodifier_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.fmodifier_copy", + "poll": false + }, + { + "id": "operator:graph.fmodifier_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.fmodifier_delete", + "poll": false + }, + { + "id": "operator:graph.fmodifier_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.fmodifier_paste", + "poll": false + }, + { + "id": "operator:graph.frame_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.frame_jump", + "poll": false + }, + { + "id": "operator:graph.gaussian_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.gaussian_smooth", + "poll": false + }, + { + "id": "operator:graph.ghost_curves_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.ghost_curves_clear", + "poll": false + }, + { + "id": "operator:graph.ghost_curves_create", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.ghost_curves_create", + "poll": false + }, + { + "id": "operator:graph.handle_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.handle_type", + "poll": false + }, + { + "id": "operator:graph.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.hide", + "poll": false + }, + { + "id": "operator:graph.interpolation_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.interpolation_type", + "poll": false + }, + { + "id": "operator:graph.keyframe_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.keyframe_insert", + "poll": false + }, + { + "id": "operator:graph.keyframe_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.keyframe_jump", + "poll": false + }, + { + "id": "operator:graph.keys_to_samples", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.keys_to_samples", + "poll": false + }, + { + "id": "operator:graph.local_view", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.local_view", + "poll": false + }, + { + "id": "operator:graph.match_slope", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.match_slope", + "poll": false + }, + { + "id": "operator:graph.mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.mirror", + "poll": false + }, + { + "id": "operator:graph.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.paste", + "poll": false + }, + { + "id": "operator:graph.previewrange_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.previewrange_set", + "poll": false + }, + { + "id": "operator:graph.push_pull", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.push_pull", + "poll": false + }, + { + "id": "operator:graph.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.reveal", + "poll": false + }, + { + "id": "operator:graph.samples_to_keys", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.samples_to_keys", + "poll": false + }, + { + "id": "operator:graph.scale_average", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.scale_average", + "poll": false + }, + { + "id": "operator:graph.scale_from_neighbor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.scale_from_neighbor", + "poll": false + }, + { + "id": "operator:graph.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_all", + "poll": false + }, + { + "id": "operator:graph.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_box", + "poll": false + }, + { + "id": "operator:graph.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_circle", + "poll": false + }, + { + "id": "operator:graph.select_column", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_column", + "poll": false + }, + { + "id": "operator:graph.select_key_handles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_key_handles", + "poll": false + }, + { + "id": "operator:graph.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_lasso", + "poll": false + }, + { + "id": "operator:graph.select_leftright", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_leftright", + "poll": false + }, + { + "id": "operator:graph.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_less", + "poll": false + }, + { + "id": "operator:graph.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_linked", + "poll": false + }, + { + "id": "operator:graph.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.select_more", + "poll": false + }, + { + "id": "operator:graph.shear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.shear", + "poll": false + }, + { + "id": "operator:graph.smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.smooth", + "poll": false + }, + { + "id": "operator:graph.snap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.snap", + "poll": false + }, + { + "id": "operator:graph.snap_cursor_value", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.snap_cursor_value", + "poll": false + }, + { + "id": "operator:graph.sound_to_samples", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.sound_to_samples", + "poll": false + }, + { + "id": "operator:graph.time_offset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.time_offset", + "poll": false + }, + { + "id": "operator:graph.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.view_all", + "poll": false + }, + { + "id": "operator:graph.view_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.view_frame", + "poll": false + }, + { + "id": "operator:graph.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "graph.view_selected", + "poll": false + }, + { + "id": "operator:grease_pencil.active_frame_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.active_frame_delete", + "poll": false + }, + { + "id": "operator:grease_pencil.bake_grease_pencil_animation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.bake_grease_pencil_animation", + "poll": false + }, + { + "id": "operator:grease_pencil.brush_stroke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.brush_stroke", + "poll": false + }, + { + "id": "operator:grease_pencil.caps_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.caps_set", + "poll": false + }, + { + "id": "operator:grease_pencil.clean_loose", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.clean_loose", + "poll": false + }, + { + "id": "operator:grease_pencil.convert_curve_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.convert_curve_type", + "poll": false + }, + { + "id": "operator:grease_pencil.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.copy", + "poll": false + }, + { + "id": "operator:grease_pencil.cyclical_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.cyclical_set", + "poll": false + }, + { + "id": "operator:grease_pencil.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.delete", + "poll": false + }, + { + "id": "operator:grease_pencil.delete_breakdown", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.delete_breakdown", + "poll": false + }, + { + "id": "operator:grease_pencil.delete_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.delete_frame", + "poll": false + }, + { + "id": "operator:grease_pencil.dissolve", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.dissolve", + "poll": false + }, + { + "id": "operator:grease_pencil.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.duplicate", + "poll": false + }, + { + "id": "operator:grease_pencil.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.duplicate_move", + "poll": false + }, + { + "id": "operator:grease_pencil.erase_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.erase_box", + "poll": false + }, + { + "id": "operator:grease_pencil.erase_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.erase_lasso", + "poll": false + }, + { + "id": "operator:grease_pencil.extrude", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.extrude", + "poll": false + }, + { + "id": "operator:grease_pencil.extrude_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.extrude_move", + "poll": false + }, + { + "id": "operator:grease_pencil.fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.fill", + "poll": false + }, + { + "id": "operator:grease_pencil.frame_clean_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.frame_clean_duplicate", + "poll": false + }, + { + "id": "operator:grease_pencil.frame_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.frame_duplicate", + "poll": false + }, + { + "id": "operator:grease_pencil.insert_blank_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.insert_blank_frame", + "poll": false + }, + { + "id": "operator:grease_pencil.interpolate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.interpolate", + "poll": false + }, + { + "id": "operator:grease_pencil.interpolate_sequence", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.interpolate_sequence", + "poll": false + }, + { + "id": "operator:grease_pencil.join_fills", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.join_fills", + "poll": false + }, + { + "id": "operator:grease_pencil.join_selection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.join_selection", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_active", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_add", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_duplicate", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_duplicate_object", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_duplicate_object", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_group_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_group_add", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_group_color_tag", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_group_color_tag", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_group_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_group_remove", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_hide", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_isolate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_isolate", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_lock_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_lock_all", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_mask_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_mask_add", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_mask_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_mask_remove", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_mask_reorder", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_mask_reorder", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_merge", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_merge", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_move", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_remove", + "poll": false + }, + { + "id": "operator:grease_pencil.layer_reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.layer_reveal", + "poll": false + }, + { + "id": "operator:grease_pencil.material_copy_to_object", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_copy_to_object", + "poll": false + }, + { + "id": "operator:grease_pencil.material_hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_hide", + "poll": false + }, + { + "id": "operator:grease_pencil.material_isolate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_isolate", + "poll": false + }, + { + "id": "operator:grease_pencil.material_lock_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_lock_all", + "poll": false + }, + { + "id": "operator:grease_pencil.material_lock_unselected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_lock_unselected", + "poll": false + }, + { + "id": "operator:grease_pencil.material_lock_unused", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_lock_unused", + "poll": false + }, + { + "id": "operator:grease_pencil.material_reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_reveal", + "poll": false + }, + { + "id": "operator:grease_pencil.material_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_select", + "poll": false + }, + { + "id": "operator:grease_pencil.material_unlock_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.material_unlock_all", + "poll": false + }, + { + "id": "operator:grease_pencil.move_to_layer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.move_to_layer", + "poll": false + }, + { + "id": "operator:grease_pencil.outline", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.outline", + "poll": false + }, + { + "id": "operator:grease_pencil.paintmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.paintmode_toggle", + "poll": false + }, + { + "id": "operator:grease_pencil.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.paste", + "poll": false + }, + { + "id": "operator:grease_pencil.pen", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.pen", + "poll": true + }, + { + "id": "operator:grease_pencil.primitive_arc", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.primitive_arc", + "poll": true + }, + { + "id": "operator:grease_pencil.primitive_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.primitive_box", + "poll": true + }, + { + "id": "operator:grease_pencil.primitive_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.primitive_circle", + "poll": true + }, + { + "id": "operator:grease_pencil.primitive_curve", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.primitive_curve", + "poll": true + }, + { + "id": "operator:grease_pencil.primitive_line", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.primitive_line", + "poll": true + }, + { + "id": "operator:grease_pencil.primitive_polyline", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.primitive_polyline", + "poll": true + }, + { + "id": "operator:grease_pencil.relative_layer_mask_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.relative_layer_mask_add", + "poll": false + }, + { + "id": "operator:grease_pencil.remove_fill_guides", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.remove_fill_guides", + "poll": false + }, + { + "id": "operator:grease_pencil.reorder", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.reorder", + "poll": false + }, + { + "id": "operator:grease_pencil.reproject", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.reproject", + "poll": false + }, + { + "id": "operator:grease_pencil.reset_uvs", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.reset_uvs", + "poll": false + }, + { + "id": "operator:grease_pencil.sculpt_paint", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.sculpt_paint", + "poll": false + }, + { + "id": "operator:grease_pencil.sculptmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.sculptmode_toggle", + "poll": false + }, + { + "id": "operator:grease_pencil.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_all", + "poll": false + }, + { + "id": "operator:grease_pencil.select_alternate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_alternate", + "poll": false + }, + { + "id": "operator:grease_pencil.select_by_stroke_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_by_stroke_type", + "poll": false + }, + { + "id": "operator:grease_pencil.select_ends", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_ends", + "poll": false + }, + { + "id": "operator:grease_pencil.select_fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_fill", + "poll": false + }, + { + "id": "operator:grease_pencil.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_less", + "poll": false + }, + { + "id": "operator:grease_pencil.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_linked", + "poll": false + }, + { + "id": "operator:grease_pencil.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_more", + "poll": false + }, + { + "id": "operator:grease_pencil.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_random", + "poll": false + }, + { + "id": "operator:grease_pencil.select_similar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.select_similar", + "poll": false + }, + { + "id": "operator:grease_pencil.separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.separate", + "poll": false + }, + { + "id": "operator:grease_pencil.separate_fills", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.separate_fills", + "poll": false + }, + { + "id": "operator:grease_pencil.set_active_material", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_active_material", + "poll": false + }, + { + "id": "operator:grease_pencil.set_corner_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_corner_type", + "poll": false + }, + { + "id": "operator:grease_pencil.set_curve_resolution", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_curve_resolution", + "poll": false + }, + { + "id": "operator:grease_pencil.set_curve_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_curve_type", + "poll": false + }, + { + "id": "operator:grease_pencil.set_handle_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_handle_type", + "poll": false + }, + { + "id": "operator:grease_pencil.set_material", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_material", + "poll": false + }, + { + "id": "operator:grease_pencil.set_selection_mode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_selection_mode", + "poll": false + }, + { + "id": "operator:grease_pencil.set_start_point", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_start_point", + "poll": false + }, + { + "id": "operator:grease_pencil.set_stroke_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_stroke_type", + "poll": false + }, + { + "id": "operator:grease_pencil.set_uniform_opacity", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_uniform_opacity", + "poll": false + }, + { + "id": "operator:grease_pencil.set_uniform_thickness", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.set_uniform_thickness", + "poll": false + }, + { + "id": "operator:grease_pencil.snap_cursor_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.snap_cursor_to_selected", + "poll": false + }, + { + "id": "operator:grease_pencil.snap_to_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.snap_to_cursor", + "poll": false + }, + { + "id": "operator:grease_pencil.snap_to_grid", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.snap_to_grid", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_material_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_material_set", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_merge_by_distance", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_merge_by_distance", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_reset_vertex_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_reset_vertex_color", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_simplify", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_simplify", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_smooth", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_split", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_subdivide", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_subdivide_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_subdivide_smooth", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_switch_direction", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_switch_direction", + "poll": false + }, + { + "id": "operator:grease_pencil.stroke_trim", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.stroke_trim", + "poll": false + }, + { + "id": "operator:grease_pencil.texture_gradient", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.texture_gradient", + "poll": false + }, + { + "id": "operator:grease_pencil.trace_image", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.trace_image", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_brush_stroke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_brush_stroke", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_color_brightness_contrast", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_color_brightness_contrast", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_color_hsv", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_color_hsv", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_color_invert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_color_invert", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_color_levels", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_color_levels", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_color_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_color_set", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_group_normalize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_group_normalize", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_group_normalize_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_group_normalize_all", + "poll": false + }, + { + "id": "operator:grease_pencil.vertex_group_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertex_group_smooth", + "poll": false + }, + { + "id": "operator:grease_pencil.vertexmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.vertexmode_toggle", + "poll": false + }, + { + "id": "operator:grease_pencil.weight_brush_stroke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.weight_brush_stroke", + "poll": false + }, + { + "id": "operator:grease_pencil.weight_invert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.weight_invert", + "poll": false + }, + { + "id": "operator:grease_pencil.weight_sample", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.weight_sample", + "poll": false + }, + { + "id": "operator:grease_pencil.weight_toggle_direction", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.weight_toggle_direction", + "poll": false + }, + { + "id": "operator:grease_pencil.weightmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "grease_pencil.weightmode_toggle", + "poll": false + }, + { + "id": "operator:image.add_render_slot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.add_render_slot", + "poll": false + }, + { + "id": "operator:image.change_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.change_frame", + "poll": false + }, + { + "id": "operator:image.clear_render_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.clear_render_border", + "poll": false + }, + { + "id": "operator:image.clear_render_slot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.clear_render_slot", + "poll": false + }, + { + "id": "operator:image.clipboard_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.clipboard_copy", + "poll": false + }, + { + "id": "operator:image.clipboard_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.clipboard_paste", + "poll": false + }, + { + "id": "operator:image.convert_to_mesh_plane", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.convert_to_mesh_plane", + "poll": false + }, + { + "id": "operator:image.curves_point_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.curves_point_set", + "poll": false + }, + { + "id": "operator:image.cycle_render_slot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.cycle_render_slot", + "poll": false + }, + { + "id": "operator:image.external_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.external_edit", + "poll": true + }, + { + "id": "operator:image.file_browse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.file_browse", + "poll": false + }, + { + "id": "operator:image.flip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.flip", + "poll": false + }, + { + "id": "operator:image.import_as_mesh_planes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.import_as_mesh_planes", + "poll": true + }, + { + "id": "operator:image.invert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.invert", + "poll": false + }, + { + "id": "operator:image.match_movie_length", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.match_movie_length", + "poll": true + }, + { + "id": "operator:image.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.new", + "poll": true + }, + { + "id": "operator:image.open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.open", + "poll": true + }, + { + "id": "operator:image.open_images", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.open_images", + "poll": false + }, + { + "id": "operator:image.pack", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.pack", + "poll": false + }, + { + "id": "operator:image.project_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.project_apply", + "poll": true + }, + { + "id": "operator:image.project_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.project_edit", + "poll": true + }, + { + "id": "operator:image.read_viewlayers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.read_viewlayers", + "poll": false + }, + { + "id": "operator:image.reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.reload", + "poll": true + }, + { + "id": "operator:image.remove_render_slot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.remove_render_slot", + "poll": false + }, + { + "id": "operator:image.render_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.render_border", + "poll": false + }, + { + "id": "operator:image.replace", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.replace", + "poll": false + }, + { + "id": "operator:image.resize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.resize", + "poll": false + }, + { + "id": "operator:image.rotate_orthogonal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.rotate_orthogonal", + "poll": false + }, + { + "id": "operator:image.sample", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.sample", + "poll": false + }, + { + "id": "operator:image.sample_line", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.sample_line", + "poll": false + }, + { + "id": "operator:image.save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.save", + "poll": false + }, + { + "id": "operator:image.save_all_modified", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.save_all_modified", + "poll": false + }, + { + "id": "operator:image.save_as", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.save_as", + "poll": false + }, + { + "id": "operator:image.save_sequence", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.save_sequence", + "poll": false + }, + { + "id": "operator:image.tile_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.tile_add", + "poll": false + }, + { + "id": "operator:image.tile_fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.tile_fill", + "poll": false + }, + { + "id": "operator:image.tile_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.tile_remove", + "poll": false + }, + { + "id": "operator:image.unpack", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.unpack", + "poll": false + }, + { + "id": "operator:image.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_all", + "poll": false + }, + { + "id": "operator:image.view_center_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_center_cursor", + "poll": false + }, + { + "id": "operator:image.view_cursor_center", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_cursor_center", + "poll": false + }, + { + "id": "operator:image.view_ndof", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_ndof", + "poll": false + }, + { + "id": "operator:image.view_pan", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_pan", + "poll": false + }, + { + "id": "operator:image.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_selected", + "poll": false + }, + { + "id": "operator:image.view_zoom", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_zoom", + "poll": false + }, + { + "id": "operator:image.view_zoom_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_zoom_border", + "poll": false + }, + { + "id": "operator:image.view_zoom_in", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_zoom_in", + "poll": false + }, + { + "id": "operator:image.view_zoom_out", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_zoom_out", + "poll": false + }, + { + "id": "operator:image.view_zoom_ratio", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "image.view_zoom_ratio", + "poll": false + }, + { + "id": "operator:import_anim.bvh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "import_anim.bvh", + "poll": true + }, + { + "id": "operator:import_curve.svg", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "import_curve.svg", + "poll": true + }, + { + "id": "operator:import_scene.fbx", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "import_scene.fbx", + "poll": true + }, + { + "id": "operator:import_scene.gltf", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "import_scene.gltf", + "poll": true + }, + { + "id": "operator:info.report_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.report_copy", + "poll": false + }, + { + "id": "operator:info.report_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.report_delete", + "poll": false + }, + { + "id": "operator:info.report_replay", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.report_replay", + "poll": false + }, + { + "id": "operator:info.reports_display_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.reports_display_update", + "poll": true + }, + { + "id": "operator:info.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.select_all", + "poll": false + }, + { + "id": "operator:info.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.select_box", + "poll": false + }, + { + "id": "operator:info.select_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "info.select_pick", + "poll": false + }, + { + "id": "operator:lattice.flip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.flip", + "poll": false + }, + { + "id": "operator:lattice.make_regular", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.make_regular", + "poll": false + }, + { + "id": "operator:lattice.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.select_all", + "poll": false + }, + { + "id": "operator:lattice.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.select_less", + "poll": false + }, + { + "id": "operator:lattice.select_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.select_mirror", + "poll": false + }, + { + "id": "operator:lattice.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.select_more", + "poll": false + }, + { + "id": "operator:lattice.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.select_random", + "poll": false + }, + { + "id": "operator:lattice.select_ungrouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "lattice.select_ungrouped", + "poll": false + }, + { + "id": "operator:marker.add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.add", + "poll": false + }, + { + "id": "operator:marker.camera_bind", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.camera_bind", + "poll": false + }, + { + "id": "operator:marker.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.delete", + "poll": false + }, + { + "id": "operator:marker.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.duplicate", + "poll": false + }, + { + "id": "operator:marker.make_links_scene", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.make_links_scene", + "poll": false + }, + { + "id": "operator:marker.move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.move", + "poll": false + }, + { + "id": "operator:marker.rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.rename", + "poll": false + }, + { + "id": "operator:marker.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.select", + "poll": false + }, + { + "id": "operator:marker.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.select_all", + "poll": false + }, + { + "id": "operator:marker.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.select_box", + "poll": false + }, + { + "id": "operator:marker.select_leftright", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "marker.select_leftright", + "poll": false + }, + { + "id": "operator:mask.add_feather_vertex", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.add_feather_vertex", + "poll": false + }, + { + "id": "operator:mask.add_feather_vertex_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.add_feather_vertex_slide", + "poll": false + }, + { + "id": "operator:mask.add_vertex", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.add_vertex", + "poll": false + }, + { + "id": "operator:mask.add_vertex_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.add_vertex_slide", + "poll": false + }, + { + "id": "operator:mask.copy_splines", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.copy_splines", + "poll": false + }, + { + "id": "operator:mask.cyclic_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.cyclic_toggle", + "poll": false + }, + { + "id": "operator:mask.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.delete", + "poll": false + }, + { + "id": "operator:mask.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.duplicate", + "poll": false + }, + { + "id": "operator:mask.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.duplicate_move", + "poll": false + }, + { + "id": "operator:mask.feather_weight_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.feather_weight_clear", + "poll": false + }, + { + "id": "operator:mask.handle_type_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.handle_type_set", + "poll": false + }, + { + "id": "operator:mask.hide_view_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.hide_view_clear", + "poll": false + }, + { + "id": "operator:mask.hide_view_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.hide_view_set", + "poll": false + }, + { + "id": "operator:mask.layer_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.layer_move", + "poll": false + }, + { + "id": "operator:mask.layer_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.layer_new", + "poll": false + }, + { + "id": "operator:mask.layer_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.layer_remove", + "poll": false + }, + { + "id": "operator:mask.move_to_layer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.move_to_layer", + "poll": false + }, + { + "id": "operator:mask.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.new", + "poll": false + }, + { + "id": "operator:mask.normals_make_consistent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.normals_make_consistent", + "poll": false + }, + { + "id": "operator:mask.parent_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.parent_clear", + "poll": false + }, + { + "id": "operator:mask.parent_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.parent_set", + "poll": false + }, + { + "id": "operator:mask.paste_splines", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.paste_splines", + "poll": false + }, + { + "id": "operator:mask.primitive_circle_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.primitive_circle_add", + "poll": false + }, + { + "id": "operator:mask.primitive_square_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.primitive_square_add", + "poll": false + }, + { + "id": "operator:mask.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select", + "poll": false + }, + { + "id": "operator:mask.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_all", + "poll": false + }, + { + "id": "operator:mask.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_box", + "poll": false + }, + { + "id": "operator:mask.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_circle", + "poll": false + }, + { + "id": "operator:mask.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_lasso", + "poll": false + }, + { + "id": "operator:mask.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_less", + "poll": false + }, + { + "id": "operator:mask.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_linked", + "poll": false + }, + { + "id": "operator:mask.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_linked_pick", + "poll": false + }, + { + "id": "operator:mask.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.select_more", + "poll": false + }, + { + "id": "operator:mask.shape_key_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.shape_key_clear", + "poll": false + }, + { + "id": "operator:mask.shape_key_feather_reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.shape_key_feather_reset", + "poll": false + }, + { + "id": "operator:mask.shape_key_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.shape_key_insert", + "poll": false + }, + { + "id": "operator:mask.shape_key_rekey", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.shape_key_rekey", + "poll": false + }, + { + "id": "operator:mask.slide_point", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.slide_point", + "poll": false + }, + { + "id": "operator:mask.slide_spline_curvature", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.slide_spline_curvature", + "poll": false + }, + { + "id": "operator:mask.switch_direction", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mask.switch_direction", + "poll": false + }, + { + "id": "operator:material.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "material.copy", + "poll": true + }, + { + "id": "operator:material.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "material.new", + "poll": true + }, + { + "id": "operator:material.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "material.paste", + "poll": true + }, + { + "id": "operator:mball.delete_metaelems", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.delete_metaelems", + "poll": false + }, + { + "id": "operator:mball.duplicate_metaelems", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.duplicate_metaelems", + "poll": false + }, + { + "id": "operator:mball.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.duplicate_move", + "poll": false + }, + { + "id": "operator:mball.hide_metaelems", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.hide_metaelems", + "poll": false + }, + { + "id": "operator:mball.reveal_metaelems", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.reveal_metaelems", + "poll": false + }, + { + "id": "operator:mball.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.select_all", + "poll": false + }, + { + "id": "operator:mball.select_random_metaelems", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.select_random_metaelems", + "poll": false + }, + { + "id": "operator:mball.select_similar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mball.select_similar", + "poll": false + }, + { + "id": "operator:mesh.attribute_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.attribute_set", + "poll": false + }, + { + "id": "operator:mesh.average_normals", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.average_normals", + "poll": false + }, + { + "id": "operator:mesh.beautify_fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.beautify_fill", + "poll": false + }, + { + "id": "operator:mesh.bevel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.bevel", + "poll": false + }, + { + "id": "operator:mesh.bisect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.bisect", + "poll": false + }, + { + "id": "operator:mesh.blend_from_shape", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.blend_from_shape", + "poll": false + }, + { + "id": "operator:mesh.bridge_edge_loops", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.bridge_edge_loops", + "poll": false + }, + { + "id": "operator:mesh.circularize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.circularize", + "poll": false + }, + { + "id": "operator:mesh.colors_reverse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.colors_reverse", + "poll": false + }, + { + "id": "operator:mesh.colors_rotate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.colors_rotate", + "poll": false + }, + { + "id": "operator:mesh.convex_hull", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.convex_hull", + "poll": false + }, + { + "id": "operator:mesh.customdata_custom_splitnormals_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.customdata_custom_splitnormals_add", + "poll": true + }, + { + "id": "operator:mesh.customdata_custom_splitnormals_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.customdata_custom_splitnormals_clear", + "poll": true + }, + { + "id": "operator:mesh.customdata_face_sets_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.customdata_face_sets_clear", + "poll": false + }, + { + "id": "operator:mesh.customdata_mask_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.customdata_mask_clear", + "poll": false + }, + { + "id": "operator:mesh.customdata_skin_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.customdata_skin_add", + "poll": true + }, + { + "id": "operator:mesh.customdata_skin_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.customdata_skin_clear", + "poll": false + }, + { + "id": "operator:mesh.decimate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.decimate", + "poll": false + }, + { + "id": "operator:mesh.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.delete", + "poll": false + }, + { + "id": "operator:mesh.delete_edgeloop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.delete_edgeloop", + "poll": false + }, + { + "id": "operator:mesh.delete_loose", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.delete_loose", + "poll": false + }, + { + "id": "operator:mesh.dissolve_degenerate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dissolve_degenerate", + "poll": false + }, + { + "id": "operator:mesh.dissolve_edges", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dissolve_edges", + "poll": false + }, + { + "id": "operator:mesh.dissolve_faces", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dissolve_faces", + "poll": false + }, + { + "id": "operator:mesh.dissolve_limited", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dissolve_limited", + "poll": false + }, + { + "id": "operator:mesh.dissolve_mode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dissolve_mode", + "poll": false + }, + { + "id": "operator:mesh.dissolve_verts", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dissolve_verts", + "poll": false + }, + { + "id": "operator:mesh.dupli_extrude_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.dupli_extrude_cursor", + "poll": false + }, + { + "id": "operator:mesh.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.duplicate", + "poll": false + }, + { + "id": "operator:mesh.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.duplicate_move", + "poll": false + }, + { + "id": "operator:mesh.edge_collapse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.edge_collapse", + "poll": false + }, + { + "id": "operator:mesh.edge_face_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.edge_face_add", + "poll": false + }, + { + "id": "operator:mesh.edge_rotate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.edge_rotate", + "poll": false + }, + { + "id": "operator:mesh.edge_split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.edge_split", + "poll": false + }, + { + "id": "operator:mesh.edgering_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.edgering_select", + "poll": false + }, + { + "id": "operator:mesh.edges_select_sharp", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.edges_select_sharp", + "poll": false + }, + { + "id": "operator:mesh.extrude_context", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_context", + "poll": false + }, + { + "id": "operator:mesh.extrude_context_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_context_move", + "poll": false + }, + { + "id": "operator:mesh.extrude_edges_indiv", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_edges_indiv", + "poll": false + }, + { + "id": "operator:mesh.extrude_edges_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_edges_move", + "poll": false + }, + { + "id": "operator:mesh.extrude_faces_indiv", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_faces_indiv", + "poll": false + }, + { + "id": "operator:mesh.extrude_faces_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_faces_move", + "poll": false + }, + { + "id": "operator:mesh.extrude_manifold", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_manifold", + "poll": false + }, + { + "id": "operator:mesh.extrude_region", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_region", + "poll": false + }, + { + "id": "operator:mesh.extrude_region_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_region_move", + "poll": false + }, + { + "id": "operator:mesh.extrude_region_shrink_fatten", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_region_shrink_fatten", + "poll": false + }, + { + "id": "operator:mesh.extrude_repeat", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_repeat", + "poll": false + }, + { + "id": "operator:mesh.extrude_vertices_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_vertices_move", + "poll": false + }, + { + "id": "operator:mesh.extrude_verts_indiv", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.extrude_verts_indiv", + "poll": false + }, + { + "id": "operator:mesh.face_make_planar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.face_make_planar", + "poll": false + }, + { + "id": "operator:mesh.face_split_by_edges", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.face_split_by_edges", + "poll": false + }, + { + "id": "operator:mesh.faces_select_linked_flat", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.faces_select_linked_flat", + "poll": false + }, + { + "id": "operator:mesh.faces_shade_flat", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.faces_shade_flat", + "poll": false + }, + { + "id": "operator:mesh.faces_shade_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.faces_shade_smooth", + "poll": false + }, + { + "id": "operator:mesh.fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.fill", + "poll": false + }, + { + "id": "operator:mesh.fill_grid", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.fill_grid", + "poll": false + }, + { + "id": "operator:mesh.fill_holes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.fill_holes", + "poll": false + }, + { + "id": "operator:mesh.flatten", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.flatten", + "poll": false + }, + { + "id": "operator:mesh.flip_normals", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.flip_normals", + "poll": false + }, + { + "id": "operator:mesh.flip_quad_tessellation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.flip_quad_tessellation", + "poll": false + }, + { + "id": "operator:mesh.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.hide", + "poll": false + }, + { + "id": "operator:mesh.inset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.inset", + "poll": false + }, + { + "id": "operator:mesh.intersect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.intersect", + "poll": false + }, + { + "id": "operator:mesh.intersect_boolean", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.intersect_boolean", + "poll": false + }, + { + "id": "operator:mesh.knife_project", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.knife_project", + "poll": false + }, + { + "id": "operator:mesh.knife_tool", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.knife_tool", + "poll": false + }, + { + "id": "operator:mesh.loop_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.loop_select", + "poll": false + }, + { + "id": "operator:mesh.loop_to_region", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.loop_to_region", + "poll": false + }, + { + "id": "operator:mesh.loopcut", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.loopcut", + "poll": false + }, + { + "id": "operator:mesh.loopcut_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.loopcut_slide", + "poll": false + }, + { + "id": "operator:mesh.mark_freestyle_edge", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.mark_freestyle_edge", + "poll": false + }, + { + "id": "operator:mesh.mark_freestyle_face", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.mark_freestyle_face", + "poll": false + }, + { + "id": "operator:mesh.mark_seam", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.mark_seam", + "poll": false + }, + { + "id": "operator:mesh.mark_sharp", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.mark_sharp", + "poll": false + }, + { + "id": "operator:mesh.merge", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.merge", + "poll": false + }, + { + "id": "operator:mesh.merge_normals", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.merge_normals", + "poll": false + }, + { + "id": "operator:mesh.mod_weighted_strength", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.mod_weighted_strength", + "poll": false + }, + { + "id": "operator:mesh.normals_make_consistent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.normals_make_consistent", + "poll": false + }, + { + "id": "operator:mesh.normals_tools", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.normals_tools", + "poll": false + }, + { + "id": "operator:mesh.offset_edge_loops", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.offset_edge_loops", + "poll": false + }, + { + "id": "operator:mesh.offset_edge_loops_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.offset_edge_loops_slide", + "poll": false + }, + { + "id": "operator:mesh.point_normals", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.point_normals", + "poll": false + }, + { + "id": "operator:mesh.poke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.poke", + "poll": false + }, + { + "id": "operator:mesh.polybuild_delete_at_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_delete_at_cursor", + "poll": false + }, + { + "id": "operator:mesh.polybuild_dissolve_at_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_dissolve_at_cursor", + "poll": false + }, + { + "id": "operator:mesh.polybuild_extrude_at_cursor_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_extrude_at_cursor_move", + "poll": false + }, + { + "id": "operator:mesh.polybuild_face_at_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_face_at_cursor", + "poll": false + }, + { + "id": "operator:mesh.polybuild_face_at_cursor_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_face_at_cursor_move", + "poll": false + }, + { + "id": "operator:mesh.polybuild_split_at_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_split_at_cursor", + "poll": false + }, + { + "id": "operator:mesh.polybuild_split_at_cursor_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_split_at_cursor_move", + "poll": false + }, + { + "id": "operator:mesh.polybuild_transform_at_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_transform_at_cursor", + "poll": false + }, + { + "id": "operator:mesh.polybuild_transform_at_cursor_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.polybuild_transform_at_cursor_move", + "poll": false + }, + { + "id": "operator:mesh.primitive_circle_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_circle_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_cone_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_cone_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_cube_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_cube_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_cube_add_gizmo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_cube_add_gizmo", + "poll": false + }, + { + "id": "operator:mesh.primitive_cylinder_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_cylinder_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_grid_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_grid_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_ico_sphere_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_ico_sphere_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_monkey_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_monkey_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_plane_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_plane_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_torus_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_torus_add", + "poll": true + }, + { + "id": "operator:mesh.primitive_uv_sphere_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.primitive_uv_sphere_add", + "poll": true + }, + { + "id": "operator:mesh.quads_convert_to_tris", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.quads_convert_to_tris", + "poll": false + }, + { + "id": "operator:mesh.region_to_loop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.region_to_loop", + "poll": false + }, + { + "id": "operator:mesh.remove_doubles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.remove_doubles", + "poll": false + }, + { + "id": "operator:mesh.reorder_vertices_spatial", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.reorder_vertices_spatial", + "poll": true + }, + { + "id": "operator:mesh.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.reveal", + "poll": false + }, + { + "id": "operator:mesh.rip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.rip", + "poll": false + }, + { + "id": "operator:mesh.rip_edge", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.rip_edge", + "poll": false + }, + { + "id": "operator:mesh.rip_edge_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.rip_edge_move", + "poll": false + }, + { + "id": "operator:mesh.rip_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.rip_move", + "poll": false + }, + { + "id": "operator:mesh.screw", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.screw", + "poll": false + }, + { + "id": "operator:mesh.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_all", + "poll": false + }, + { + "id": "operator:mesh.select_axis", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_axis", + "poll": false + }, + { + "id": "operator:mesh.select_boundary_loop_multi", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_boundary_loop_multi", + "poll": false + }, + { + "id": "operator:mesh.select_by_attribute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_by_attribute", + "poll": false + }, + { + "id": "operator:mesh.select_by_pole_count", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_by_pole_count", + "poll": false + }, + { + "id": "operator:mesh.select_edge_loop_multi", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_edge_loop_multi", + "poll": false + }, + { + "id": "operator:mesh.select_edge_ring_multi", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_edge_ring_multi", + "poll": false + }, + { + "id": "operator:mesh.select_face_by_sides", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_face_by_sides", + "poll": false + }, + { + "id": "operator:mesh.select_interior_faces", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_interior_faces", + "poll": false + }, + { + "id": "operator:mesh.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_less", + "poll": false + }, + { + "id": "operator:mesh.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_linked", + "poll": false + }, + { + "id": "operator:mesh.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_linked_pick", + "poll": false + }, + { + "id": "operator:mesh.select_loose", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_loose", + "poll": false + }, + { + "id": "operator:mesh.select_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_mirror", + "poll": false + }, + { + "id": "operator:mesh.select_mode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_mode", + "poll": false + }, + { + "id": "operator:mesh.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_more", + "poll": false + }, + { + "id": "operator:mesh.select_next_item", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_next_item", + "poll": false + }, + { + "id": "operator:mesh.select_non_manifold", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_non_manifold", + "poll": false + }, + { + "id": "operator:mesh.select_nth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_nth", + "poll": false + }, + { + "id": "operator:mesh.select_prev_item", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_prev_item", + "poll": false + }, + { + "id": "operator:mesh.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_random", + "poll": false + }, + { + "id": "operator:mesh.select_similar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_similar", + "poll": false + }, + { + "id": "operator:mesh.select_similar_region", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_similar_region", + "poll": false + }, + { + "id": "operator:mesh.select_ungrouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.select_ungrouped", + "poll": false + }, + { + "id": "operator:mesh.separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.separate", + "poll": true + }, + { + "id": "operator:mesh.set_normals_from_faces", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.set_normals_from_faces", + "poll": false + }, + { + "id": "operator:mesh.set_sharpness_by_angle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.set_sharpness_by_angle", + "poll": false + }, + { + "id": "operator:mesh.shape_propagate_to_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.shape_propagate_to_all", + "poll": false + }, + { + "id": "operator:mesh.shortest_path_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.shortest_path_pick", + "poll": false + }, + { + "id": "operator:mesh.shortest_path_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.shortest_path_select", + "poll": false + }, + { + "id": "operator:mesh.smooth_normals", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.smooth_normals", + "poll": false + }, + { + "id": "operator:mesh.solidify", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.solidify", + "poll": false + }, + { + "id": "operator:mesh.sort_elements", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.sort_elements", + "poll": false + }, + { + "id": "operator:mesh.space_edge_loops_evenly", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.space_edge_loops_evenly", + "poll": false + }, + { + "id": "operator:mesh.spin", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.spin", + "poll": false + }, + { + "id": "operator:mesh.split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.split", + "poll": false + }, + { + "id": "operator:mesh.split_normals", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.split_normals", + "poll": false + }, + { + "id": "operator:mesh.subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.subdivide", + "poll": false + }, + { + "id": "operator:mesh.subdivide_edgering", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.subdivide_edgering", + "poll": false + }, + { + "id": "operator:mesh.symmetrize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.symmetrize", + "poll": false + }, + { + "id": "operator:mesh.symmetry_snap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.symmetry_snap", + "poll": false + }, + { + "id": "operator:mesh.tris_convert_to_quads", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.tris_convert_to_quads", + "poll": false + }, + { + "id": "operator:mesh.unsubdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.unsubdivide", + "poll": false + }, + { + "id": "operator:mesh.uv_texture_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.uv_texture_add", + "poll": true + }, + { + "id": "operator:mesh.uv_texture_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.uv_texture_remove", + "poll": true + }, + { + "id": "operator:mesh.uvs_reverse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.uvs_reverse", + "poll": false + }, + { + "id": "operator:mesh.uvs_rotate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.uvs_rotate", + "poll": false + }, + { + "id": "operator:mesh.vert_connect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.vert_connect", + "poll": false + }, + { + "id": "operator:mesh.vert_connect_concave", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.vert_connect_concave", + "poll": false + }, + { + "id": "operator:mesh.vert_connect_nonplanar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.vert_connect_nonplanar", + "poll": false + }, + { + "id": "operator:mesh.vert_connect_path", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.vert_connect_path", + "poll": false + }, + { + "id": "operator:mesh.vertices_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.vertices_smooth", + "poll": false + }, + { + "id": "operator:mesh.vertices_smooth_laplacian", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.vertices_smooth_laplacian", + "poll": false + }, + { + "id": "operator:mesh.wireframe", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "mesh.wireframe", + "poll": false + }, + { + "id": "operator:nla.action_pushdown", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.action_pushdown", + "poll": false + }, + { + "id": "operator:nla.action_sync_length", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.action_sync_length", + "poll": false + }, + { + "id": "operator:nla.action_unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.action_unlink", + "poll": false + }, + { + "id": "operator:nla.actionclip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.actionclip_add", + "poll": false + }, + { + "id": "operator:nla.apply_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.apply_scale", + "poll": false + }, + { + "id": "operator:nla.bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.bake", + "poll": true + }, + { + "id": "operator:nla.channels_click", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.channels_click", + "poll": false + }, + { + "id": "operator:nla.clear_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.clear_scale", + "poll": false + }, + { + "id": "operator:nla.click_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.click_select", + "poll": false + }, + { + "id": "operator:nla.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.delete", + "poll": false + }, + { + "id": "operator:nla.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.duplicate", + "poll": false + }, + { + "id": "operator:nla.duplicate_linked_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.duplicate_linked_move", + "poll": false + }, + { + "id": "operator:nla.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.duplicate_move", + "poll": false + }, + { + "id": "operator:nla.fmodifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.fmodifier_add", + "poll": false + }, + { + "id": "operator:nla.fmodifier_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.fmodifier_copy", + "poll": false + }, + { + "id": "operator:nla.fmodifier_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.fmodifier_paste", + "poll": false + }, + { + "id": "operator:nla.make_single_user", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.make_single_user", + "poll": false + }, + { + "id": "operator:nla.meta_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.meta_add", + "poll": false + }, + { + "id": "operator:nla.meta_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.meta_remove", + "poll": false + }, + { + "id": "operator:nla.move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.move_down", + "poll": false + }, + { + "id": "operator:nla.move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.move_up", + "poll": false + }, + { + "id": "operator:nla.mute_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.mute_toggle", + "poll": false + }, + { + "id": "operator:nla.previewrange_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.previewrange_set", + "poll": false + }, + { + "id": "operator:nla.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.select_all", + "poll": false + }, + { + "id": "operator:nla.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.select_box", + "poll": false + }, + { + "id": "operator:nla.select_leftright", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.select_leftright", + "poll": false + }, + { + "id": "operator:nla.selected_objects_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.selected_objects_add", + "poll": false + }, + { + "id": "operator:nla.snap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.snap", + "poll": false + }, + { + "id": "operator:nla.soundclip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.soundclip_add", + "poll": false + }, + { + "id": "operator:nla.split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.split", + "poll": false + }, + { + "id": "operator:nla.swap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.swap", + "poll": false + }, + { + "id": "operator:nla.tracks_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.tracks_add", + "poll": false + }, + { + "id": "operator:nla.tracks_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.tracks_delete", + "poll": false + }, + { + "id": "operator:nla.transition_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.transition_add", + "poll": false + }, + { + "id": "operator:nla.tweakmode_enter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.tweakmode_enter", + "poll": false + }, + { + "id": "operator:nla.tweakmode_exit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.tweakmode_exit", + "poll": false + }, + { + "id": "operator:nla.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.view_all", + "poll": false + }, + { + "id": "operator:nla.view_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.view_frame", + "poll": false + }, + { + "id": "operator:nla.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "nla.view_selected", + "poll": false + }, + { + "id": "operator:node.activate_viewer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.activate_viewer", + "poll": false + }, + { + "id": "operator:node.add_closure_zone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_closure_zone", + "poll": false + }, + { + "id": "operator:node.add_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_collection", + "poll": false + }, + { + "id": "operator:node.add_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_color", + "poll": false + }, + { + "id": "operator:node.add_empty_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_empty_group", + "poll": false + }, + { + "id": "operator:node.add_foreach_geometry_element_zone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_foreach_geometry_element_zone", + "poll": false + }, + { + "id": "operator:node.add_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_group", + "poll": false + }, + { + "id": "operator:node.add_group_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_group_asset", + "poll": false + }, + { + "id": "operator:node.add_group_input_node", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_group_input_node", + "poll": false + }, + { + "id": "operator:node.add_image", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_image", + "poll": false + }, + { + "id": "operator:node.add_import_node", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_import_node", + "poll": false + }, + { + "id": "operator:node.add_mask", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_mask", + "poll": false + }, + { + "id": "operator:node.add_material", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_material", + "poll": false + }, + { + "id": "operator:node.add_node", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_node", + "poll": false + }, + { + "id": "operator:node.add_object", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_object", + "poll": false + }, + { + "id": "operator:node.add_repeat_zone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_repeat_zone", + "poll": false + }, + { + "id": "operator:node.add_reroute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_reroute", + "poll": false + }, + { + "id": "operator:node.add_simulation_zone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_simulation_zone", + "poll": false + }, + { + "id": "operator:node.add_typed_bundle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_typed_bundle", + "poll": false + }, + { + "id": "operator:node.add_zone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.add_zone", + "poll": false + }, + { + "id": "operator:node.attach", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.attach", + "poll": false + }, + { + "id": "operator:node.backimage_fit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.backimage_fit", + "poll": false + }, + { + "id": "operator:node.backimage_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.backimage_move", + "poll": false + }, + { + "id": "operator:node.backimage_sample", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.backimage_sample", + "poll": false + }, + { + "id": "operator:node.backimage_zoom", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.backimage_zoom", + "poll": false + }, + { + "id": "operator:node.bake_node_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.bake_node_item_add", + "poll": false + }, + { + "id": "operator:node.bake_node_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.bake_node_item_move", + "poll": false + }, + { + "id": "operator:node.bake_node_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.bake_node_item_remove", + "poll": false + }, + { + "id": "operator:node.capture_attribute_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.capture_attribute_item_add", + "poll": false + }, + { + "id": "operator:node.capture_attribute_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.capture_attribute_item_move", + "poll": false + }, + { + "id": "operator:node.capture_attribute_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.capture_attribute_item_remove", + "poll": false + }, + { + "id": "operator:node.clear_viewer_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.clear_viewer_border", + "poll": false + }, + { + "id": "operator:node.clipboard_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.clipboard_copy", + "poll": false + }, + { + "id": "operator:node.clipboard_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.clipboard_paste", + "poll": false + }, + { + "id": "operator:node.closure_input_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_input_item_add", + "poll": false + }, + { + "id": "operator:node.closure_input_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_input_item_move", + "poll": false + }, + { + "id": "operator:node.closure_input_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_input_item_remove", + "poll": false + }, + { + "id": "operator:node.closure_output_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_output_item_add", + "poll": false + }, + { + "id": "operator:node.closure_output_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_output_item_move", + "poll": false + }, + { + "id": "operator:node.closure_output_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_output_item_remove", + "poll": false + }, + { + "id": "operator:node.closure_to_list_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_to_list_item_add", + "poll": false + }, + { + "id": "operator:node.closure_to_list_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_to_list_item_move", + "poll": false + }, + { + "id": "operator:node.closure_to_list_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.closure_to_list_item_remove", + "poll": false + }, + { + "id": "operator:node.collapse_hide_unused_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.collapse_hide_unused_toggle", + "poll": false + }, + { + "id": "operator:node.combine_bundle_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.combine_bundle_item_add", + "poll": false + }, + { + "id": "operator:node.combine_bundle_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.combine_bundle_item_move", + "poll": false + }, + { + "id": "operator:node.combine_bundle_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.combine_bundle_item_remove", + "poll": false + }, + { + "id": "operator:node.connect_to_output", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.connect_to_output", + "poll": false + }, + { + "id": "operator:node.cryptomatte_layer_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.cryptomatte_layer_add", + "poll": false + }, + { + "id": "operator:node.cryptomatte_layer_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.cryptomatte_layer_remove", + "poll": false + }, + { + "id": "operator:node.deactivate_viewer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.deactivate_viewer", + "poll": false + }, + { + "id": "operator:node.default_group_width_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.default_group_width_set", + "poll": false + }, + { + "id": "operator:node.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.delete", + "poll": false + }, + { + "id": "operator:node.delete_copy_reconnect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.delete_copy_reconnect", + "poll": false + }, + { + "id": "operator:node.delete_reconnect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.delete_reconnect", + "poll": false + }, + { + "id": "operator:node.detach", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.detach", + "poll": false + }, + { + "id": "operator:node.detach_translate_attach", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.detach_translate_attach", + "poll": false + }, + { + "id": "operator:node.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.duplicate", + "poll": false + }, + { + "id": "operator:node.duplicate_compositing_modifier_node_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.duplicate_compositing_modifier_node_group", + "poll": true + }, + { + "id": "operator:node.duplicate_compositing_node_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.duplicate_compositing_node_group", + "poll": true + }, + { + "id": "operator:node.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.duplicate_move", + "poll": false + }, + { + "id": "operator:node.duplicate_move_keep_inputs", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.duplicate_move_keep_inputs", + "poll": false + }, + { + "id": "operator:node.duplicate_move_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.duplicate_move_linked", + "poll": false + }, + { + "id": "operator:node.enum_definition_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.enum_definition_item_add", + "poll": false + }, + { + "id": "operator:node.enum_definition_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.enum_definition_item_move", + "poll": false + }, + { + "id": "operator:node.enum_definition_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.enum_definition_item_remove", + "poll": false + }, + { + "id": "operator:node.evaluate_closure_input_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.evaluate_closure_input_item_add", + "poll": false + }, + { + "id": "operator:node.evaluate_closure_input_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.evaluate_closure_input_item_move", + "poll": false + }, + { + "id": "operator:node.evaluate_closure_input_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.evaluate_closure_input_item_remove", + "poll": false + }, + { + "id": "operator:node.evaluate_closure_output_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.evaluate_closure_output_item_add", + "poll": false + }, + { + "id": "operator:node.evaluate_closure_output_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.evaluate_closure_output_item_move", + "poll": false + }, + { + "id": "operator:node.evaluate_closure_output_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.evaluate_closure_output_item_remove", + "poll": false + }, + { + "id": "operator:node.field_to_grid_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.field_to_grid_item_add", + "poll": false + }, + { + "id": "operator:node.field_to_grid_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.field_to_grid_item_move", + "poll": false + }, + { + "id": "operator:node.field_to_grid_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.field_to_grid_item_remove", + "poll": false + }, + { + "id": "operator:node.field_to_list_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.field_to_list_item_add", + "poll": false + }, + { + "id": "operator:node.field_to_list_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.field_to_list_item_move", + "poll": false + }, + { + "id": "operator:node.field_to_list_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.field_to_list_item_remove", + "poll": false + }, + { + "id": "operator:node.file_output_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.file_output_item_add", + "poll": false + }, + { + "id": "operator:node.file_output_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.file_output_item_move", + "poll": false + }, + { + "id": "operator:node.file_output_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.file_output_item_remove", + "poll": false + }, + { + "id": "operator:node.find_node", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.find_node", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_generation_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_generation_item_add", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_generation_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_generation_item_move", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_generation_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_generation_item_remove", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_input_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_input_item_add", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_input_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_input_item_move", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_input_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_input_item_remove", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_main_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_main_item_add", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_main_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_main_item_move", + "poll": false + }, + { + "id": "operator:node.foreach_geometry_element_zone_main_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.foreach_geometry_element_zone_main_item_remove", + "poll": false + }, + { + "id": "operator:node.format_string_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.format_string_item_add", + "poll": false + }, + { + "id": "operator:node.format_string_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.format_string_item_move", + "poll": false + }, + { + "id": "operator:node.format_string_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.format_string_item_remove", + "poll": false + }, + { + "id": "operator:node.geometry_nodes_viewer_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.geometry_nodes_viewer_item_add", + "poll": false + }, + { + "id": "operator:node.geometry_nodes_viewer_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.geometry_nodes_viewer_item_move", + "poll": false + }, + { + "id": "operator:node.geometry_nodes_viewer_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.geometry_nodes_viewer_item_remove", + "poll": false + }, + { + "id": "operator:node.gltf_settings_node_operator", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.gltf_settings_node_operator", + "poll": false + }, + { + "id": "operator:node.group_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.group_edit", + "poll": false + }, + { + "id": "operator:node.group_enter_exit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.group_enter_exit", + "poll": false + }, + { + "id": "operator:node.group_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.group_insert", + "poll": false + }, + { + "id": "operator:node.group_make", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.group_make", + "poll": false + }, + { + "id": "operator:node.group_separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.group_separate", + "poll": false + }, + { + "id": "operator:node.group_ungroup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.group_ungroup", + "poll": false + }, + { + "id": "operator:node.hide_socket_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.hide_socket_toggle", + "poll": false + }, + { + "id": "operator:node.hide_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.hide_toggle", + "poll": false + }, + { + "id": "operator:node.index_switch_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.index_switch_item_add", + "poll": false + }, + { + "id": "operator:node.index_switch_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.index_switch_item_move", + "poll": false + }, + { + "id": "operator:node.index_switch_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.index_switch_item_remove", + "poll": false + }, + { + "id": "operator:node.insert_offset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.insert_offset", + "poll": false + }, + { + "id": "operator:node.interface_item_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.interface_item_duplicate", + "poll": false + }, + { + "id": "operator:node.interface_item_make_panel_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.interface_item_make_panel_toggle", + "poll": false + }, + { + "id": "operator:node.interface_item_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.interface_item_new", + "poll": false + }, + { + "id": "operator:node.interface_item_new_panel_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.interface_item_new_panel_toggle", + "poll": false + }, + { + "id": "operator:node.interface_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.interface_item_remove", + "poll": false + }, + { + "id": "operator:node.interface_item_unlink_panel_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.interface_item_unlink_panel_toggle", + "poll": false + }, + { + "id": "operator:node.join", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.join", + "poll": false + }, + { + "id": "operator:node.join_named", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.join_named", + "poll": false + }, + { + "id": "operator:node.join_nodes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.join_nodes", + "poll": false + }, + { + "id": "operator:node.link", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.link", + "poll": false + }, + { + "id": "operator:node.link_drag_operation_test", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.link_drag_operation_test", + "poll": false + }, + { + "id": "operator:node.link_make", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.link_make", + "poll": false + }, + { + "id": "operator:node.link_viewer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.link_viewer", + "poll": false + }, + { + "id": "operator:node.links_cut", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.links_cut", + "poll": false + }, + { + "id": "operator:node.links_detach", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.links_detach", + "poll": false + }, + { + "id": "operator:node.links_mute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.links_mute", + "poll": false + }, + { + "id": "operator:node.move_detach_links", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.move_detach_links", + "poll": false + }, + { + "id": "operator:node.move_detach_links_release", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.move_detach_links_release", + "poll": false + }, + { + "id": "operator:node.mute_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.mute_toggle", + "poll": false + }, + { + "id": "operator:node.new_compositing_node_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.new_compositing_node_group", + "poll": true + }, + { + "id": "operator:node.new_compositor_sequencer_node_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.new_compositor_sequencer_node_group", + "poll": true + }, + { + "id": "operator:node.new_geometry_node_group_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.new_geometry_node_group_assign", + "poll": true + }, + { + "id": "operator:node.new_geometry_node_group_tool", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.new_geometry_node_group_tool", + "poll": false + }, + { + "id": "operator:node.new_geometry_nodes_modifier", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.new_geometry_nodes_modifier", + "poll": true + }, + { + "id": "operator:node.new_node_tree", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.new_node_tree", + "poll": true + }, + { + "id": "operator:node.node_color_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.node_color_preset_add", + "poll": true + }, + { + "id": "operator:node.node_copy_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.node_copy_color", + "poll": false + }, + { + "id": "operator:node.options_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.options_toggle", + "poll": false + }, + { + "id": "operator:node.parent_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.parent_set", + "poll": false + }, + { + "id": "operator:node.preview_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.preview_toggle", + "poll": false + }, + { + "id": "operator:node.read_viewlayers", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.read_viewlayers", + "poll": false + }, + { + "id": "operator:node.render_changed", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.render_changed", + "poll": false + }, + { + "id": "operator:node.repeat_zone_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.repeat_zone_item_add", + "poll": false + }, + { + "id": "operator:node.repeat_zone_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.repeat_zone_item_move", + "poll": false + }, + { + "id": "operator:node.repeat_zone_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.repeat_zone_item_remove", + "poll": false + }, + { + "id": "operator:node.resize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.resize", + "poll": false + }, + { + "id": "operator:node.sample_attribute_items_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.sample_attribute_items_item_add", + "poll": false + }, + { + "id": "operator:node.sample_attribute_items_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.sample_attribute_items_item_move", + "poll": false + }, + { + "id": "operator:node.sample_attribute_items_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.sample_attribute_items_item_remove", + "poll": false + }, + { + "id": "operator:node.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select", + "poll": false + }, + { + "id": "operator:node.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_all", + "poll": false + }, + { + "id": "operator:node.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_box", + "poll": false + }, + { + "id": "operator:node.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_circle", + "poll": false + }, + { + "id": "operator:node.select_grouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_grouped", + "poll": false + }, + { + "id": "operator:node.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_lasso", + "poll": false + }, + { + "id": "operator:node.select_link_viewer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_link_viewer", + "poll": false + }, + { + "id": "operator:node.select_linked_from", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_linked_from", + "poll": false + }, + { + "id": "operator:node.select_linked_to", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_linked_to", + "poll": false + }, + { + "id": "operator:node.select_same_type_step", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.select_same_type_step", + "poll": false + }, + { + "id": "operator:node.separate_bundle_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.separate_bundle_item_add", + "poll": false + }, + { + "id": "operator:node.separate_bundle_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.separate_bundle_item_move", + "poll": false + }, + { + "id": "operator:node.separate_bundle_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.separate_bundle_item_remove", + "poll": false + }, + { + "id": "operator:node.shader_script_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.shader_script_update", + "poll": false + }, + { + "id": "operator:node.simulation_zone_item_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.simulation_zone_item_add", + "poll": false + }, + { + "id": "operator:node.simulation_zone_item_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.simulation_zone_item_move", + "poll": false + }, + { + "id": "operator:node.simulation_zone_item_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.simulation_zone_item_remove", + "poll": false + }, + { + "id": "operator:node.sockets_sync", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.sockets_sync", + "poll": false + }, + { + "id": "operator:node.swap_empty_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.swap_empty_group", + "poll": false + }, + { + "id": "operator:node.swap_group_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.swap_group_asset", + "poll": false + }, + { + "id": "operator:node.swap_node", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.swap_node", + "poll": false + }, + { + "id": "operator:node.swap_typed_bundle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.swap_typed_bundle", + "poll": false + }, + { + "id": "operator:node.swap_zone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.swap_zone", + "poll": false + }, + { + "id": "operator:node.test_inlining_shader_nodes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.test_inlining_shader_nodes", + "poll": false + }, + { + "id": "operator:node.toggle_viewer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.toggle_viewer", + "poll": false + }, + { + "id": "operator:node.translate_attach", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.translate_attach", + "poll": false + }, + { + "id": "operator:node.translate_attach_remove_on_cancel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.translate_attach_remove_on_cancel", + "poll": false + }, + { + "id": "operator:node.tree_path_parent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.tree_path_parent", + "poll": false + }, + { + "id": "operator:node.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.view_all", + "poll": false + }, + { + "id": "operator:node.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.view_selected", + "poll": false + }, + { + "id": "operator:node.viewer_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.viewer_border", + "poll": false + }, + { + "id": "operator:node.viewer_shortcut_get", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.viewer_shortcut_get", + "poll": false + }, + { + "id": "operator:node.viewer_shortcut_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "node.viewer_shortcut_set", + "poll": false + }, + { + "id": "operator:object.add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.add", + "poll": true + }, + { + "id": "operator:object.add_modifier_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.add_modifier_menu", + "poll": false + }, + { + "id": "operator:object.add_named", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.add_named", + "poll": true + }, + { + "id": "operator:object.align", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.align", + "poll": true + }, + { + "id": "operator:object.anim_transforms_to_deltas", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.anim_transforms_to_deltas", + "poll": true + }, + { + "id": "operator:object.armature_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.armature_add", + "poll": true + }, + { + "id": "operator:object.assign_property_defaults", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.assign_property_defaults", + "poll": true + }, + { + "id": "operator:object.bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.bake", + "poll": true + }, + { + "id": "operator:object.bake_image", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.bake_image", + "poll": true + }, + { + "id": "operator:object.camera_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.camera_add", + "poll": true + }, + { + "id": "operator:object.camera_custom_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.camera_custom_update", + "poll": false + }, + { + "id": "operator:object.clear_override_library", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.clear_override_library", + "poll": false + }, + { + "id": "operator:object.collection_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_add", + "poll": true + }, + { + "id": "operator:object.collection_external_asset_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_external_asset_drop", + "poll": true + }, + { + "id": "operator:object.collection_instance_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_instance_add", + "poll": true + }, + { + "id": "operator:object.collection_link", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_link", + "poll": true + }, + { + "id": "operator:object.collection_objects_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_objects_select", + "poll": true + }, + { + "id": "operator:object.collection_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_remove", + "poll": true + }, + { + "id": "operator:object.collection_unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.collection_unlink", + "poll": true + }, + { + "id": "operator:object.constraint_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.constraint_add", + "poll": true + }, + { + "id": "operator:object.constraint_add_with_targets", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.constraint_add_with_targets", + "poll": true + }, + { + "id": "operator:object.constraints_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.constraints_clear", + "poll": true + }, + { + "id": "operator:object.constraints_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.constraints_copy", + "poll": true + }, + { + "id": "operator:object.convert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.convert", + "poll": true + }, + { + "id": "operator:object.copy_global_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.copy_global_transform", + "poll": true + }, + { + "id": "operator:object.copy_relative_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.copy_relative_transform", + "poll": true + }, + { + "id": "operator:object.correctivesmooth_bind", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.correctivesmooth_bind", + "poll": true + }, + { + "id": "operator:object.curves_empty_hair_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.curves_empty_hair_add", + "poll": true + }, + { + "id": "operator:object.curves_random_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.curves_random_add", + "poll": true + }, + { + "id": "operator:object.data_instance_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.data_instance_add", + "poll": true + }, + { + "id": "operator:object.data_transfer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.data_transfer", + "poll": true + }, + { + "id": "operator:object.datalayout_transfer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.datalayout_transfer", + "poll": true + }, + { + "id": "operator:object.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.delete", + "poll": true + }, + { + "id": "operator:object.delete_fix_to_camera_keys", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.delete_fix_to_camera_keys", + "poll": true + }, + { + "id": "operator:object.drop_geometry_nodes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.drop_geometry_nodes", + "poll": false + }, + { + "id": "operator:object.drop_named_material", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.drop_named_material", + "poll": false + }, + { + "id": "operator:object.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.duplicate", + "poll": true + }, + { + "id": "operator:object.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.duplicate_move", + "poll": true + }, + { + "id": "operator:object.duplicate_move_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.duplicate_move_linked", + "poll": true + }, + { + "id": "operator:object.duplicates_make_real", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.duplicates_make_real", + "poll": true + }, + { + "id": "operator:object.editmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.editmode_toggle", + "poll": true + }, + { + "id": "operator:object.effector_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.effector_add", + "poll": true + }, + { + "id": "operator:object.empty_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.empty_add", + "poll": true + }, + { + "id": "operator:object.empty_image_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.empty_image_add", + "poll": false + }, + { + "id": "operator:object.explode_refresh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.explode_refresh", + "poll": true + }, + { + "id": "operator:object.fix_to_camera", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.fix_to_camera", + "poll": true + }, + { + "id": "operator:object.forcefield_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.forcefield_toggle", + "poll": true + }, + { + "id": "operator:object.geometry_node_bake_delete_single", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_node_bake_delete_single", + "poll": true + }, + { + "id": "operator:object.geometry_node_bake_pack_single", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_node_bake_pack_single", + "poll": true + }, + { + "id": "operator:object.geometry_node_bake_single", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_node_bake_single", + "poll": true + }, + { + "id": "operator:object.geometry_node_bake_unpack_single", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_node_bake_unpack_single", + "poll": true + }, + { + "id": "operator:object.geometry_node_tree_copy_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_node_tree_copy_assign", + "poll": true + }, + { + "id": "operator:object.geometry_nodes_input_attribute_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_nodes_input_attribute_toggle", + "poll": true + }, + { + "id": "operator:object.geometry_nodes_move_to_nodes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.geometry_nodes_move_to_nodes", + "poll": false + }, + { + "id": "operator:object.grease_pencil_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_add", + "poll": true + }, + { + "id": "operator:object.grease_pencil_dash_modifier_segment_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_dash_modifier_segment_add", + "poll": true + }, + { + "id": "operator:object.grease_pencil_dash_modifier_segment_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_dash_modifier_segment_move", + "poll": true + }, + { + "id": "operator:object.grease_pencil_dash_modifier_segment_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_dash_modifier_segment_remove", + "poll": true + }, + { + "id": "operator:object.grease_pencil_time_modifier_segment_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_time_modifier_segment_add", + "poll": true + }, + { + "id": "operator:object.grease_pencil_time_modifier_segment_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_time_modifier_segment_move", + "poll": true + }, + { + "id": "operator:object.grease_pencil_time_modifier_segment_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.grease_pencil_time_modifier_segment_remove", + "poll": true + }, + { + "id": "operator:object.hide_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hide_collection", + "poll": true + }, + { + "id": "operator:object.hide_render_clear_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hide_render_clear_all", + "poll": true + }, + { + "id": "operator:object.hide_view_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hide_view_clear", + "poll": false + }, + { + "id": "operator:object.hide_view_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hide_view_set", + "poll": false + }, + { + "id": "operator:object.hook_add_newob", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_add_newob", + "poll": false + }, + { + "id": "operator:object.hook_add_selob", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_add_selob", + "poll": false + }, + { + "id": "operator:object.hook_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_assign", + "poll": false + }, + { + "id": "operator:object.hook_recenter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_recenter", + "poll": false + }, + { + "id": "operator:object.hook_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_remove", + "poll": false + }, + { + "id": "operator:object.hook_reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_reset", + "poll": false + }, + { + "id": "operator:object.hook_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.hook_select", + "poll": false + }, + { + "id": "operator:object.instance_offset_from_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.instance_offset_from_cursor", + "poll": true + }, + { + "id": "operator:object.instance_offset_from_object", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.instance_offset_from_object", + "poll": true + }, + { + "id": "operator:object.instance_offset_to_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.instance_offset_to_cursor", + "poll": true + }, + { + "id": "operator:object.isolate_type_render", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.isolate_type_render", + "poll": true + }, + { + "id": "operator:object.join", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.join", + "poll": true + }, + { + "id": "operator:object.join_shapes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.join_shapes", + "poll": true + }, + { + "id": "operator:object.join_uvs", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.join_uvs", + "poll": true + }, + { + "id": "operator:object.laplaciandeform_bind", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.laplaciandeform_bind", + "poll": true + }, + { + "id": "operator:object.lattice_add_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.lattice_add_to_selected", + "poll": true + }, + { + "id": "operator:object.light_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_add", + "poll": true + }, + { + "id": "operator:object.light_linking_blocker_collection_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_blocker_collection_new", + "poll": true + }, + { + "id": "operator:object.light_linking_blockers_link", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_blockers_link", + "poll": true + }, + { + "id": "operator:object.light_linking_blockers_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_blockers_select", + "poll": true + }, + { + "id": "operator:object.light_linking_receiver_collection_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_receiver_collection_new", + "poll": true + }, + { + "id": "operator:object.light_linking_receivers_link", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_receivers_link", + "poll": true + }, + { + "id": "operator:object.light_linking_receivers_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_receivers_select", + "poll": true + }, + { + "id": "operator:object.light_linking_unlink_from_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.light_linking_unlink_from_collection", + "poll": true + }, + { + "id": "operator:object.lightprobe_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.lightprobe_add", + "poll": true + }, + { + "id": "operator:object.lightprobe_cache_bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.lightprobe_cache_bake", + "poll": true + }, + { + "id": "operator:object.lightprobe_cache_free", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.lightprobe_cache_free", + "poll": true + }, + { + "id": "operator:object.lineart_bake_strokes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.lineart_bake_strokes", + "poll": false + }, + { + "id": "operator:object.lineart_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.lineart_clear", + "poll": false + }, + { + "id": "operator:object.link_to_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.link_to_collection", + "poll": true + }, + { + "id": "operator:object.location_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.location_clear", + "poll": true + }, + { + "id": "operator:object.make_dupli_face", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.make_dupli_face", + "poll": true + }, + { + "id": "operator:object.make_links_data", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.make_links_data", + "poll": true + }, + { + "id": "operator:object.make_links_scene", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.make_links_scene", + "poll": true + }, + { + "id": "operator:object.make_local", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.make_local", + "poll": true + }, + { + "id": "operator:object.make_override_library", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.make_override_library", + "poll": false + }, + { + "id": "operator:object.make_single_user", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.make_single_user", + "poll": true + }, + { + "id": "operator:object.material_slot_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_add", + "poll": true + }, + { + "id": "operator:object.material_slot_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_assign", + "poll": true + }, + { + "id": "operator:object.material_slot_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_copy", + "poll": true + }, + { + "id": "operator:object.material_slot_deselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_deselect", + "poll": true + }, + { + "id": "operator:object.material_slot_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_move", + "poll": true + }, + { + "id": "operator:object.material_slot_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_remove", + "poll": true + }, + { + "id": "operator:object.material_slot_remove_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_remove_all", + "poll": true + }, + { + "id": "operator:object.material_slot_remove_unused", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_remove_unused", + "poll": true + }, + { + "id": "operator:object.material_slot_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.material_slot_select", + "poll": true + }, + { + "id": "operator:object.meshdeform_bind", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.meshdeform_bind", + "poll": true + }, + { + "id": "operator:object.metaball_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.metaball_add", + "poll": true + }, + { + "id": "operator:object.mode_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.mode_set", + "poll": true + }, + { + "id": "operator:object.mode_set_with_submode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.mode_set_with_submode", + "poll": true + }, + { + "id": "operator:object.modifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_add", + "poll": true + }, + { + "id": "operator:object.modifier_add_node_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_add_node_group", + "poll": true + }, + { + "id": "operator:object.modifier_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_apply", + "poll": true + }, + { + "id": "operator:object.modifier_apply_as_shapekey", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_apply_as_shapekey", + "poll": true + }, + { + "id": "operator:object.modifier_convert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_convert", + "poll": true + }, + { + "id": "operator:object.modifier_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_copy", + "poll": true + }, + { + "id": "operator:object.modifier_copy_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_copy_to_selected", + "poll": false + }, + { + "id": "operator:object.modifier_move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_move_down", + "poll": true + }, + { + "id": "operator:object.modifier_move_to_index", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_move_to_index", + "poll": true + }, + { + "id": "operator:object.modifier_move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_move_up", + "poll": true + }, + { + "id": "operator:object.modifier_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_remove", + "poll": true + }, + { + "id": "operator:object.modifier_set_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifier_set_active", + "poll": true + }, + { + "id": "operator:object.modifiers_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifiers_clear", + "poll": true + }, + { + "id": "operator:object.modifiers_copy_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.modifiers_copy_to_selected", + "poll": false + }, + { + "id": "operator:object.move_to_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.move_to_collection", + "poll": true + }, + { + "id": "operator:object.multires_base_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_base_apply", + "poll": true + }, + { + "id": "operator:object.multires_external_pack", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_external_pack", + "poll": true + }, + { + "id": "operator:object.multires_external_save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_external_save", + "poll": true + }, + { + "id": "operator:object.multires_higher_levels_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_higher_levels_delete", + "poll": true + }, + { + "id": "operator:object.multires_rebuild_subdiv", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_rebuild_subdiv", + "poll": true + }, + { + "id": "operator:object.multires_reshape", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_reshape", + "poll": true + }, + { + "id": "operator:object.multires_subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_subdivide", + "poll": true + }, + { + "id": "operator:object.multires_unsubdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.multires_unsubdivide", + "poll": true + }, + { + "id": "operator:object.ocean_bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.ocean_bake", + "poll": true + }, + { + "id": "operator:object.origin_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.origin_clear", + "poll": true + }, + { + "id": "operator:object.origin_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.origin_set", + "poll": true + }, + { + "id": "operator:object.parent_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.parent_clear", + "poll": true + }, + { + "id": "operator:object.parent_inverse_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.parent_inverse_apply", + "poll": true + }, + { + "id": "operator:object.parent_no_inverse_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.parent_no_inverse_set", + "poll": true + }, + { + "id": "operator:object.parent_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.parent_set", + "poll": true + }, + { + "id": "operator:object.particle_system_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.particle_system_add", + "poll": true + }, + { + "id": "operator:object.particle_system_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.particle_system_remove", + "poll": true + }, + { + "id": "operator:object.paste_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.paste_transform", + "poll": true + }, + { + "id": "operator:object.paths_calculate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.paths_calculate", + "poll": true + }, + { + "id": "operator:object.paths_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.paths_clear", + "poll": true + }, + { + "id": "operator:object.paths_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.paths_update", + "poll": false + }, + { + "id": "operator:object.paths_update_visible", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.paths_update_visible", + "poll": true + }, + { + "id": "operator:object.pointcloud_random_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.pointcloud_random_add", + "poll": true + }, + { + "id": "operator:object.posemode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.posemode_toggle", + "poll": true + }, + { + "id": "operator:object.quadriflow_remesh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.quadriflow_remesh", + "poll": true + }, + { + "id": "operator:object.quick_explode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.quick_explode", + "poll": true + }, + { + "id": "operator:object.quick_fur", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.quick_fur", + "poll": true + }, + { + "id": "operator:object.quick_liquid", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.quick_liquid", + "poll": true + }, + { + "id": "operator:object.quick_smoke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.quick_smoke", + "poll": true + }, + { + "id": "operator:object.randomize_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.randomize_transform", + "poll": true + }, + { + "id": "operator:object.reset_override_library", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.reset_override_library", + "poll": false + }, + { + "id": "operator:object.rotation_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.rotation_clear", + "poll": true + }, + { + "id": "operator:object.scale_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.scale_clear", + "poll": true + }, + { + "id": "operator:object.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_all", + "poll": true + }, + { + "id": "operator:object.select_by_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_by_type", + "poll": true + }, + { + "id": "operator:object.select_camera", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_camera", + "poll": true + }, + { + "id": "operator:object.select_grouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_grouped", + "poll": false + }, + { + "id": "operator:object.select_hierarchy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_hierarchy", + "poll": true + }, + { + "id": "operator:object.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_less", + "poll": true + }, + { + "id": "operator:object.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_linked", + "poll": true + }, + { + "id": "operator:object.select_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_mirror", + "poll": true + }, + { + "id": "operator:object.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_more", + "poll": true + }, + { + "id": "operator:object.select_pattern", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_pattern", + "poll": true + }, + { + "id": "operator:object.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_random", + "poll": true + }, + { + "id": "operator:object.select_same_collection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.select_same_collection", + "poll": true + }, + { + "id": "operator:object.shade_auto_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shade_auto_smooth", + "poll": true + }, + { + "id": "operator:object.shade_flat", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shade_flat", + "poll": true + }, + { + "id": "operator:object.shade_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shade_smooth", + "poll": true + }, + { + "id": "operator:object.shade_smooth_by_angle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shade_smooth_by_angle", + "poll": true + }, + { + "id": "operator:object.shaderfx_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shaderfx_add", + "poll": true + }, + { + "id": "operator:object.shaderfx_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shaderfx_copy", + "poll": true + }, + { + "id": "operator:object.shaderfx_move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shaderfx_move_down", + "poll": true + }, + { + "id": "operator:object.shaderfx_move_to_index", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shaderfx_move_to_index", + "poll": true + }, + { + "id": "operator:object.shaderfx_move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shaderfx_move_up", + "poll": true + }, + { + "id": "operator:object.shaderfx_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shaderfx_remove", + "poll": true + }, + { + "id": "operator:object.shape_key_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_add", + "poll": true + }, + { + "id": "operator:object.shape_key_apply_to_basis", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_apply_to_basis", + "poll": false + }, + { + "id": "operator:object.shape_key_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_clear", + "poll": true + }, + { + "id": "operator:object.shape_key_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_copy", + "poll": false + }, + { + "id": "operator:object.shape_key_lock", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_lock", + "poll": false + }, + { + "id": "operator:object.shape_key_make_basis", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_make_basis", + "poll": false + }, + { + "id": "operator:object.shape_key_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_mirror", + "poll": false + }, + { + "id": "operator:object.shape_key_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_move", + "poll": false + }, + { + "id": "operator:object.shape_key_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_remove", + "poll": false + }, + { + "id": "operator:object.shape_key_retime", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_retime", + "poll": true + }, + { + "id": "operator:object.shape_key_transfer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.shape_key_transfer", + "poll": true + }, + { + "id": "operator:object.simulation_nodes_cache_bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.simulation_nodes_cache_bake", + "poll": true + }, + { + "id": "operator:object.simulation_nodes_cache_calculate_to_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.simulation_nodes_cache_calculate_to_frame", + "poll": true + }, + { + "id": "operator:object.simulation_nodes_cache_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.simulation_nodes_cache_delete", + "poll": true + }, + { + "id": "operator:object.skin_armature_create", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.skin_armature_create", + "poll": true + }, + { + "id": "operator:object.skin_loose_mark_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.skin_loose_mark_clear", + "poll": false + }, + { + "id": "operator:object.skin_radii_equalize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.skin_radii_equalize", + "poll": false + }, + { + "id": "operator:object.skin_root_mark", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.skin_root_mark", + "poll": false + }, + { + "id": "operator:object.speaker_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.speaker_add", + "poll": true + }, + { + "id": "operator:object.subdivision_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.subdivision_set", + "poll": true + }, + { + "id": "operator:object.surfacedeform_bind", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.surfacedeform_bind", + "poll": true + }, + { + "id": "operator:object.text_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.text_add", + "poll": true + }, + { + "id": "operator:object.track_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.track_clear", + "poll": true + }, + { + "id": "operator:object.track_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.track_set", + "poll": true + }, + { + "id": "operator:object.transfer_mode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.transfer_mode", + "poll": false + }, + { + "id": "operator:object.transform_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.transform_apply", + "poll": true + }, + { + "id": "operator:object.transform_axis_target", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.transform_axis_target", + "poll": false + }, + { + "id": "operator:object.transform_to_mouse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.transform_to_mouse", + "poll": true + }, + { + "id": "operator:object.transforms_to_deltas", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.transforms_to_deltas", + "poll": true + }, + { + "id": "operator:object.unlink_data", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.unlink_data", + "poll": true + }, + { + "id": "operator:object.update_shapes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.update_shapes", + "poll": false + }, + { + "id": "operator:object.vertex_group_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_add", + "poll": true + }, + { + "id": "operator:object.vertex_group_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_assign", + "poll": false + }, + { + "id": "operator:object.vertex_group_assign_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_assign_new", + "poll": false + }, + { + "id": "operator:object.vertex_group_clean", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_clean", + "poll": false + }, + { + "id": "operator:object.vertex_group_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_copy", + "poll": false + }, + { + "id": "operator:object.vertex_group_copy_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_copy_to_selected", + "poll": false + }, + { + "id": "operator:object.vertex_group_deselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_deselect", + "poll": false + }, + { + "id": "operator:object.vertex_group_invert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_invert", + "poll": false + }, + { + "id": "operator:object.vertex_group_levels", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_levels", + "poll": false + }, + { + "id": "operator:object.vertex_group_limit_total", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_limit_total", + "poll": false + }, + { + "id": "operator:object.vertex_group_lock", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_lock", + "poll": false + }, + { + "id": "operator:object.vertex_group_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_mirror", + "poll": false + }, + { + "id": "operator:object.vertex_group_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_move", + "poll": false + }, + { + "id": "operator:object.vertex_group_normalize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_normalize", + "poll": false + }, + { + "id": "operator:object.vertex_group_normalize_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_normalize_all", + "poll": false + }, + { + "id": "operator:object.vertex_group_quantize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_quantize", + "poll": false + }, + { + "id": "operator:object.vertex_group_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_remove", + "poll": false + }, + { + "id": "operator:object.vertex_group_remove_from", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_remove_from", + "poll": false + }, + { + "id": "operator:object.vertex_group_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_select", + "poll": false + }, + { + "id": "operator:object.vertex_group_set_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_set_active", + "poll": false + }, + { + "id": "operator:object.vertex_group_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_smooth", + "poll": false + }, + { + "id": "operator:object.vertex_group_sort", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_group_sort", + "poll": false + }, + { + "id": "operator:object.vertex_parent_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_parent_set", + "poll": false + }, + { + "id": "operator:object.vertex_weight_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_weight_copy", + "poll": false + }, + { + "id": "operator:object.vertex_weight_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_weight_delete", + "poll": false + }, + { + "id": "operator:object.vertex_weight_normalize_active_vertex", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_weight_normalize_active_vertex", + "poll": false + }, + { + "id": "operator:object.vertex_weight_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_weight_paste", + "poll": false + }, + { + "id": "operator:object.vertex_weight_set_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.vertex_weight_set_active", + "poll": false + }, + { + "id": "operator:object.visual_geometry_to_objects", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.visual_geometry_to_objects", + "poll": true + }, + { + "id": "operator:object.visual_transform_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.visual_transform_apply", + "poll": true + }, + { + "id": "operator:object.volume_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.volume_add", + "poll": true + }, + { + "id": "operator:object.volume_import", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.volume_import", + "poll": true + }, + { + "id": "operator:object.voxel_remesh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.voxel_remesh", + "poll": true + }, + { + "id": "operator:object.voxel_size_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "object.voxel_size_edit", + "poll": false + }, + { + "id": "operator:outliner.action_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.action_set", + "poll": false + }, + { + "id": "operator:outliner.animdata_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.animdata_operation", + "poll": false + }, + { + "id": "operator:outliner.clear_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.clear_filter", + "poll": false + }, + { + "id": "operator:outliner.collection_color_tag_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_color_tag_set", + "poll": false + }, + { + "id": "operator:outliner.collection_disable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_disable", + "poll": false + }, + { + "id": "operator:outliner.collection_disable_render", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_disable_render", + "poll": false + }, + { + "id": "operator:outliner.collection_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_drop", + "poll": false + }, + { + "id": "operator:outliner.collection_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_duplicate", + "poll": false + }, + { + "id": "operator:outliner.collection_duplicate_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_duplicate_linked", + "poll": false + }, + { + "id": "operator:outliner.collection_enable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_enable", + "poll": false + }, + { + "id": "operator:outliner.collection_enable_render", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_enable_render", + "poll": false + }, + { + "id": "operator:outliner.collection_exclude_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_exclude_clear", + "poll": false + }, + { + "id": "operator:outliner.collection_exclude_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_exclude_set", + "poll": false + }, + { + "id": "operator:outliner.collection_hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_hide", + "poll": false + }, + { + "id": "operator:outliner.collection_hide_inside", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_hide_inside", + "poll": false + }, + { + "id": "operator:outliner.collection_hierarchy_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_hierarchy_delete", + "poll": false + }, + { + "id": "operator:outliner.collection_holdout_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_holdout_clear", + "poll": false + }, + { + "id": "operator:outliner.collection_holdout_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_holdout_set", + "poll": false + }, + { + "id": "operator:outliner.collection_indirect_only_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_indirect_only_clear", + "poll": false + }, + { + "id": "operator:outliner.collection_indirect_only_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_indirect_only_set", + "poll": false + }, + { + "id": "operator:outliner.collection_instance", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_instance", + "poll": false + }, + { + "id": "operator:outliner.collection_isolate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_isolate", + "poll": false + }, + { + "id": "operator:outliner.collection_link", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_link", + "poll": false + }, + { + "id": "operator:outliner.collection_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_new", + "poll": false + }, + { + "id": "operator:outliner.collection_objects_deselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_objects_deselect", + "poll": false + }, + { + "id": "operator:outliner.collection_objects_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_objects_select", + "poll": false + }, + { + "id": "operator:outliner.collection_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_show", + "poll": false + }, + { + "id": "operator:outliner.collection_show_inside", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.collection_show_inside", + "poll": false + }, + { + "id": "operator:outliner.constraint_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.constraint_operation", + "poll": false + }, + { + "id": "operator:outliner.data_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.data_operation", + "poll": false + }, + { + "id": "operator:outliner.datastack_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.datastack_drop", + "poll": false + }, + { + "id": "operator:outliner.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.delete", + "poll": false + }, + { + "id": "operator:outliner.drivers_add_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.drivers_add_selected", + "poll": false + }, + { + "id": "operator:outliner.drivers_delete_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.drivers_delete_selected", + "poll": false + }, + { + "id": "operator:outliner.expanded_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.expanded_toggle", + "poll": false + }, + { + "id": "operator:outliner.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.hide", + "poll": false + }, + { + "id": "operator:outliner.highlight_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.highlight_update", + "poll": false + }, + { + "id": "operator:outliner.id_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.id_copy", + "poll": false + }, + { + "id": "operator:outliner.id_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.id_delete", + "poll": false + }, + { + "id": "operator:outliner.id_linked_relocate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.id_linked_relocate", + "poll": false + }, + { + "id": "operator:outliner.id_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.id_operation", + "poll": false + }, + { + "id": "operator:outliner.id_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.id_paste", + "poll": false + }, + { + "id": "operator:outliner.id_remap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.id_remap", + "poll": false + }, + { + "id": "operator:outliner.item_activate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.item_activate", + "poll": false + }, + { + "id": "operator:outliner.item_drag_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.item_drag_drop", + "poll": false + }, + { + "id": "operator:outliner.item_openclose", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.item_openclose", + "poll": false + }, + { + "id": "operator:outliner.item_rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.item_rename", + "poll": false + }, + { + "id": "operator:outliner.keyingset_add_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.keyingset_add_selected", + "poll": false + }, + { + "id": "operator:outliner.keyingset_remove_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.keyingset_remove_selected", + "poll": false + }, + { + "id": "operator:outliner.lib_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.lib_operation", + "poll": false + }, + { + "id": "operator:outliner.lib_relocate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.lib_relocate", + "poll": false + }, + { + "id": "operator:outliner.liboverride_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.liboverride_operation", + "poll": false + }, + { + "id": "operator:outliner.liboverride_property_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.liboverride_property_remove", + "poll": false + }, + { + "id": "operator:outliner.liboverride_troubleshoot_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.liboverride_troubleshoot_operation", + "poll": false + }, + { + "id": "operator:outliner.material_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.material_drop", + "poll": false + }, + { + "id": "operator:outliner.modifier_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.modifier_operation", + "poll": false + }, + { + "id": "operator:outliner.object_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.object_operation", + "poll": false + }, + { + "id": "operator:outliner.operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.operation", + "poll": false + }, + { + "id": "operator:outliner.orphans_manage", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.orphans_manage", + "poll": true + }, + { + "id": "operator:outliner.orphans_purge", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.orphans_purge", + "poll": true + }, + { + "id": "operator:outliner.parent_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.parent_clear", + "poll": false + }, + { + "id": "operator:outliner.parent_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.parent_drop", + "poll": false + }, + { + "id": "operator:outliner.scene_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.scene_drop", + "poll": false + }, + { + "id": "operator:outliner.scene_operation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.scene_operation", + "poll": false + }, + { + "id": "operator:outliner.scroll_page", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.scroll_page", + "poll": false + }, + { + "id": "operator:outliner.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.select_all", + "poll": false + }, + { + "id": "operator:outliner.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.select_box", + "poll": false + }, + { + "id": "operator:outliner.select_walk", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.select_walk", + "poll": false + }, + { + "id": "operator:outliner.show_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.show_active", + "poll": false + }, + { + "id": "operator:outliner.show_hierarchy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.show_hierarchy", + "poll": false + }, + { + "id": "operator:outliner.show_one_level", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.show_one_level", + "poll": false + }, + { + "id": "operator:outliner.start_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.start_filter", + "poll": false + }, + { + "id": "operator:outliner.unhide_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "outliner.unhide_all", + "poll": false + }, + { + "id": "operator:paint.add_simple_uvs", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.add_simple_uvs", + "poll": false + }, + { + "id": "operator:paint.add_texture_paint_slot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.add_texture_paint_slot", + "poll": true + }, + { + "id": "operator:paint.brush_colors_flip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.brush_colors_flip", + "poll": false + }, + { + "id": "operator:paint.face_select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_all", + "poll": false + }, + { + "id": "operator:paint.face_select_hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_hide", + "poll": false + }, + { + "id": "operator:paint.face_select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_less", + "poll": false + }, + { + "id": "operator:paint.face_select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_linked", + "poll": false + }, + { + "id": "operator:paint.face_select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_linked_pick", + "poll": false + }, + { + "id": "operator:paint.face_select_loop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_loop", + "poll": false + }, + { + "id": "operator:paint.face_select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_select_more", + "poll": false + }, + { + "id": "operator:paint.face_vert_reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.face_vert_reveal", + "poll": false + }, + { + "id": "operator:paint.grab_clone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.grab_clone", + "poll": false + }, + { + "id": "operator:paint.hide_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.hide_show", + "poll": false + }, + { + "id": "operator:paint.hide_show_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.hide_show_all", + "poll": false + }, + { + "id": "operator:paint.hide_show_lasso_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.hide_show_lasso_gesture", + "poll": false + }, + { + "id": "operator:paint.hide_show_line_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.hide_show_line_gesture", + "poll": false + }, + { + "id": "operator:paint.hide_show_masked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.hide_show_masked", + "poll": false + }, + { + "id": "operator:paint.hide_show_polyline_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.hide_show_polyline_gesture", + "poll": false + }, + { + "id": "operator:paint.image_from_view", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.image_from_view", + "poll": false + }, + { + "id": "operator:paint.image_paint", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.image_paint", + "poll": false + }, + { + "id": "operator:paint.mask_box_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.mask_box_gesture", + "poll": false + }, + { + "id": "operator:paint.mask_flood_fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.mask_flood_fill", + "poll": false + }, + { + "id": "operator:paint.mask_lasso_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.mask_lasso_gesture", + "poll": false + }, + { + "id": "operator:paint.mask_line_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.mask_line_gesture", + "poll": false + }, + { + "id": "operator:paint.mask_polyline_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.mask_polyline_gesture", + "poll": false + }, + { + "id": "operator:paint.project_image", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.project_image", + "poll": true + }, + { + "id": "operator:paint.sample_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.sample_color", + "poll": false + }, + { + "id": "operator:paint.texture_paint_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.texture_paint_toggle", + "poll": true + }, + { + "id": "operator:paint.vert_select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_all", + "poll": false + }, + { + "id": "operator:paint.vert_select_hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_hide", + "poll": false + }, + { + "id": "operator:paint.vert_select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_less", + "poll": false + }, + { + "id": "operator:paint.vert_select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_linked", + "poll": false + }, + { + "id": "operator:paint.vert_select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_linked_pick", + "poll": false + }, + { + "id": "operator:paint.vert_select_loop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_loop", + "poll": false + }, + { + "id": "operator:paint.vert_select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_more", + "poll": false + }, + { + "id": "operator:paint.vert_select_ungrouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vert_select_ungrouped", + "poll": false + }, + { + "id": "operator:paint.vertex_color_brightness_contrast", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_brightness_contrast", + "poll": false + }, + { + "id": "operator:paint.vertex_color_dirt", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_dirt", + "poll": true + }, + { + "id": "operator:paint.vertex_color_from_weight", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_from_weight", + "poll": false + }, + { + "id": "operator:paint.vertex_color_hsv", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_hsv", + "poll": false + }, + { + "id": "operator:paint.vertex_color_invert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_invert", + "poll": false + }, + { + "id": "operator:paint.vertex_color_levels", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_levels", + "poll": false + }, + { + "id": "operator:paint.vertex_color_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_set", + "poll": false + }, + { + "id": "operator:paint.vertex_color_smooth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_color_smooth", + "poll": false + }, + { + "id": "operator:paint.vertex_paint", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_paint", + "poll": false + }, + { + "id": "operator:paint.vertex_paint_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.vertex_paint_toggle", + "poll": true + }, + { + "id": "operator:paint.visibility_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.visibility_filter", + "poll": false + }, + { + "id": "operator:paint.visibility_invert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.visibility_invert", + "poll": false + }, + { + "id": "operator:paint.weight_from_bones", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_from_bones", + "poll": false + }, + { + "id": "operator:paint.weight_gradient", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_gradient", + "poll": false + }, + { + "id": "operator:paint.weight_paint", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_paint", + "poll": false + }, + { + "id": "operator:paint.weight_paint_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_paint_toggle", + "poll": true + }, + { + "id": "operator:paint.weight_sample", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_sample", + "poll": false + }, + { + "id": "operator:paint.weight_sample_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_sample_group", + "poll": false + }, + { + "id": "operator:paint.weight_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paint.weight_set", + "poll": false + }, + { + "id": "operator:paintcurve.add_point", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.add_point", + "poll": false + }, + { + "id": "operator:paintcurve.add_point_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.add_point_slide", + "poll": false + }, + { + "id": "operator:paintcurve.cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.cursor", + "poll": false + }, + { + "id": "operator:paintcurve.delete_point", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.delete_point", + "poll": false + }, + { + "id": "operator:paintcurve.draw", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.draw", + "poll": false + }, + { + "id": "operator:paintcurve.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.new", + "poll": false + }, + { + "id": "operator:paintcurve.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.select", + "poll": false + }, + { + "id": "operator:paintcurve.slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "paintcurve.slide", + "poll": false + }, + { + "id": "operator:palette.color_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.color_add", + "poll": false + }, + { + "id": "operator:palette.color_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.color_delete", + "poll": false + }, + { + "id": "operator:palette.color_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.color_move", + "poll": false + }, + { + "id": "operator:palette.extract_from_image", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.extract_from_image", + "poll": false + }, + { + "id": "operator:palette.join", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.join", + "poll": false + }, + { + "id": "operator:palette.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.new", + "poll": true + }, + { + "id": "operator:palette.sort", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "palette.sort", + "poll": false + }, + { + "id": "operator:particle.brush_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.brush_edit", + "poll": false + }, + { + "id": "operator:particle.connect_hair", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.connect_hair", + "poll": true + }, + { + "id": "operator:particle.copy_particle_systems", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.copy_particle_systems", + "poll": false + }, + { + "id": "operator:particle.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.delete", + "poll": false + }, + { + "id": "operator:particle.disconnect_hair", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.disconnect_hair", + "poll": true + }, + { + "id": "operator:particle.duplicate_particle_system", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.duplicate_particle_system", + "poll": false + }, + { + "id": "operator:particle.dupliob_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.dupliob_copy", + "poll": true + }, + { + "id": "operator:particle.dupliob_move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.dupliob_move_down", + "poll": true + }, + { + "id": "operator:particle.dupliob_move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.dupliob_move_up", + "poll": true + }, + { + "id": "operator:particle.dupliob_refresh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.dupliob_refresh", + "poll": true + }, + { + "id": "operator:particle.dupliob_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.dupliob_remove", + "poll": true + }, + { + "id": "operator:particle.edited_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.edited_clear", + "poll": false + }, + { + "id": "operator:particle.hair_dynamics_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.hair_dynamics_preset_add", + "poll": true + }, + { + "id": "operator:particle.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.hide", + "poll": false + }, + { + "id": "operator:particle.mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.mirror", + "poll": false + }, + { + "id": "operator:particle.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.new", + "poll": false + }, + { + "id": "operator:particle.new_target", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.new_target", + "poll": true + }, + { + "id": "operator:particle.particle_edit_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.particle_edit_toggle", + "poll": false + }, + { + "id": "operator:particle.particle_system_remove_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.particle_system_remove_all", + "poll": false + }, + { + "id": "operator:particle.rekey", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.rekey", + "poll": false + }, + { + "id": "operator:particle.remove_doubles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.remove_doubles", + "poll": false + }, + { + "id": "operator:particle.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.reveal", + "poll": false + }, + { + "id": "operator:particle.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_all", + "poll": false + }, + { + "id": "operator:particle.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_less", + "poll": false + }, + { + "id": "operator:particle.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_linked", + "poll": false + }, + { + "id": "operator:particle.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_linked_pick", + "poll": false + }, + { + "id": "operator:particle.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_more", + "poll": false + }, + { + "id": "operator:particle.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_random", + "poll": false + }, + { + "id": "operator:particle.select_roots", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_roots", + "poll": false + }, + { + "id": "operator:particle.select_tips", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.select_tips", + "poll": false + }, + { + "id": "operator:particle.shape_cut", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.shape_cut", + "poll": false + }, + { + "id": "operator:particle.subdivide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.subdivide", + "poll": false + }, + { + "id": "operator:particle.target_move_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.target_move_down", + "poll": true + }, + { + "id": "operator:particle.target_move_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.target_move_up", + "poll": true + }, + { + "id": "operator:particle.target_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.target_remove", + "poll": true + }, + { + "id": "operator:particle.unify_length", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.unify_length", + "poll": false + }, + { + "id": "operator:particle.weight_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "particle.weight_set", + "poll": false + }, + { + "id": "operator:pointcloud.attribute_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.attribute_set", + "poll": false + }, + { + "id": "operator:pointcloud.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.delete", + "poll": false + }, + { + "id": "operator:pointcloud.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.duplicate", + "poll": false + }, + { + "id": "operator:pointcloud.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.duplicate_move", + "poll": false + }, + { + "id": "operator:pointcloud.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.select_all", + "poll": false + }, + { + "id": "operator:pointcloud.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.select_random", + "poll": false + }, + { + "id": "operator:pointcloud.separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pointcloud.separate", + "poll": false + }, + { + "id": "operator:pose.armature_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.armature_apply", + "poll": false + }, + { + "id": "operator:pose.autoside_names", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.autoside_names", + "poll": false + }, + { + "id": "operator:pose.blend_to_neighbor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.blend_to_neighbor", + "poll": true + }, + { + "id": "operator:pose.blend_with_rest", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.blend_with_rest", + "poll": true + }, + { + "id": "operator:pose.breakdown", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.breakdown", + "poll": true + }, + { + "id": "operator:pose.constraint_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.constraint_add", + "poll": false + }, + { + "id": "operator:pose.constraint_add_with_targets", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.constraint_add_with_targets", + "poll": false + }, + { + "id": "operator:pose.constraints_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.constraints_clear", + "poll": false + }, + { + "id": "operator:pose.constraints_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.constraints_copy", + "poll": false + }, + { + "id": "operator:pose.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.copy", + "poll": false + }, + { + "id": "operator:pose.flip_names", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.flip_names", + "poll": false + }, + { + "id": "operator:pose.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.hide", + "poll": false + }, + { + "id": "operator:pose.ik_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.ik_add", + "poll": false + }, + { + "id": "operator:pose.ik_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.ik_clear", + "poll": false + }, + { + "id": "operator:pose.loc_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.loc_clear", + "poll": false + }, + { + "id": "operator:pose.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.paste", + "poll": false + }, + { + "id": "operator:pose.paths_calculate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.paths_calculate", + "poll": false + }, + { + "id": "operator:pose.paths_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.paths_clear", + "poll": false + }, + { + "id": "operator:pose.paths_range_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.paths_range_update", + "poll": false + }, + { + "id": "operator:pose.paths_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.paths_update", + "poll": false + }, + { + "id": "operator:pose.propagate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.propagate", + "poll": false + }, + { + "id": "operator:pose.push", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.push", + "poll": true + }, + { + "id": "operator:pose.quaternions_flip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.quaternions_flip", + "poll": false + }, + { + "id": "operator:pose.relax", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.relax", + "poll": true + }, + { + "id": "operator:pose.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.reveal", + "poll": false + }, + { + "id": "operator:pose.rot_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.rot_clear", + "poll": false + }, + { + "id": "operator:pose.rotation_mode_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.rotation_mode_set", + "poll": false + }, + { + "id": "operator:pose.scale_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.scale_clear", + "poll": false + }, + { + "id": "operator:pose.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_all", + "poll": false + }, + { + "id": "operator:pose.select_constraint_target", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_constraint_target", + "poll": false + }, + { + "id": "operator:pose.select_grouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_grouped", + "poll": false + }, + { + "id": "operator:pose.select_hierarchy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_hierarchy", + "poll": false + }, + { + "id": "operator:pose.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_linked", + "poll": false + }, + { + "id": "operator:pose.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_linked_pick", + "poll": false + }, + { + "id": "operator:pose.select_mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_mirror", + "poll": false + }, + { + "id": "operator:pose.select_parent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.select_parent", + "poll": false + }, + { + "id": "operator:pose.selection_set_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_add", + "poll": false + }, + { + "id": "operator:pose.selection_set_add_and_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_add_and_assign", + "poll": false + }, + { + "id": "operator:pose.selection_set_assign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_assign", + "poll": false + }, + { + "id": "operator:pose.selection_set_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_copy", + "poll": false + }, + { + "id": "operator:pose.selection_set_delete_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_delete_all", + "poll": false + }, + { + "id": "operator:pose.selection_set_deselect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_deselect", + "poll": false + }, + { + "id": "operator:pose.selection_set_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_move", + "poll": false + }, + { + "id": "operator:pose.selection_set_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_paste", + "poll": false + }, + { + "id": "operator:pose.selection_set_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_remove", + "poll": false + }, + { + "id": "operator:pose.selection_set_remove_bones", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_remove_bones", + "poll": false + }, + { + "id": "operator:pose.selection_set_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_select", + "poll": false + }, + { + "id": "operator:pose.selection_set_unassign", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.selection_set_unassign", + "poll": false + }, + { + "id": "operator:pose.transforms_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.transforms_clear", + "poll": false + }, + { + "id": "operator:pose.user_transforms_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.user_transforms_clear", + "poll": false + }, + { + "id": "operator:pose.visual_transform_apply", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "pose.visual_transform_apply", + "poll": false + }, + { + "id": "operator:poselib.apply_pose_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.apply_pose_asset", + "poll": false + }, + { + "id": "operator:poselib.asset_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.asset_delete", + "poll": false + }, + { + "id": "operator:poselib.asset_modify", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.asset_modify", + "poll": false + }, + { + "id": "operator:poselib.blend_pose_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.blend_pose_asset", + "poll": false + }, + { + "id": "operator:poselib.copy_as_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.copy_as_asset", + "poll": false + }, + { + "id": "operator:poselib.create_pose_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.create_pose_asset", + "poll": false + }, + { + "id": "operator:poselib.paste_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.paste_asset", + "poll": false + }, + { + "id": "operator:poselib.pose_asset_select_bones", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.pose_asset_select_bones", + "poll": false + }, + { + "id": "operator:poselib.restore_previous_action", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "poselib.restore_previous_action", + "poll": false + }, + { + "id": "operator:preferences.addon_disable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_disable", + "poll": true + }, + { + "id": "operator:preferences.addon_enable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_enable", + "poll": true + }, + { + "id": "operator:preferences.addon_expand", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_expand", + "poll": true + }, + { + "id": "operator:preferences.addon_install", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_install", + "poll": true + }, + { + "id": "operator:preferences.addon_refresh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_refresh", + "poll": true + }, + { + "id": "operator:preferences.addon_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_remove", + "poll": true + }, + { + "id": "operator:preferences.addon_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.addon_show", + "poll": true + }, + { + "id": "operator:preferences.app_template_install", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.app_template_install", + "poll": true + }, + { + "id": "operator:preferences.asset_library_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.asset_library_add", + "poll": true + }, + { + "id": "operator:preferences.asset_library_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.asset_library_remove", + "poll": true + }, + { + "id": "operator:preferences.associate_blend", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.associate_blend", + "poll": true + }, + { + "id": "operator:preferences.autoexec_path_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.autoexec_path_add", + "poll": true + }, + { + "id": "operator:preferences.autoexec_path_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.autoexec_path_remove", + "poll": true + }, + { + "id": "operator:preferences.clear_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.clear_filter", + "poll": false + }, + { + "id": "operator:preferences.copy_prev", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.copy_prev", + "poll": false + }, + { + "id": "operator:preferences.extension_repo_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.extension_repo_add", + "poll": true + }, + { + "id": "operator:preferences.extension_repo_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.extension_repo_remove", + "poll": true + }, + { + "id": "operator:preferences.extension_url_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.extension_url_drop", + "poll": true + }, + { + "id": "operator:preferences.keyconfig_activate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyconfig_activate", + "poll": true + }, + { + "id": "operator:preferences.keyconfig_export", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyconfig_export", + "poll": true + }, + { + "id": "operator:preferences.keyconfig_import", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyconfig_import", + "poll": true + }, + { + "id": "operator:preferences.keyconfig_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyconfig_remove", + "poll": false + }, + { + "id": "operator:preferences.keyconfig_test", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyconfig_test", + "poll": true + }, + { + "id": "operator:preferences.keyitem_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyitem_add", + "poll": true + }, + { + "id": "operator:preferences.keyitem_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyitem_remove", + "poll": false + }, + { + "id": "operator:preferences.keyitem_restore", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keyitem_restore", + "poll": false + }, + { + "id": "operator:preferences.keymap_restore", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.keymap_restore", + "poll": true + }, + { + "id": "operator:preferences.reset_default_theme", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.reset_default_theme", + "poll": true + }, + { + "id": "operator:preferences.script_directory_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.script_directory_add", + "poll": true + }, + { + "id": "operator:preferences.script_directory_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.script_directory_remove", + "poll": true + }, + { + "id": "operator:preferences.start_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.start_filter", + "poll": false + }, + { + "id": "operator:preferences.studiolight_copy_settings", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.studiolight_copy_settings", + "poll": true + }, + { + "id": "operator:preferences.studiolight_install", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.studiolight_install", + "poll": true + }, + { + "id": "operator:preferences.studiolight_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.studiolight_new", + "poll": true + }, + { + "id": "operator:preferences.studiolight_uninstall", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.studiolight_uninstall", + "poll": true + }, + { + "id": "operator:preferences.theme_install", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.theme_install", + "poll": true + }, + { + "id": "operator:preferences.unassociate_blend", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "preferences.unassociate_blend", + "poll": true + }, + { + "id": "operator:ptcache.add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.add", + "poll": false + }, + { + "id": "operator:ptcache.bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.bake", + "poll": false + }, + { + "id": "operator:ptcache.bake_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.bake_all", + "poll": true + }, + { + "id": "operator:ptcache.bake_from_cache", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.bake_from_cache", + "poll": false + }, + { + "id": "operator:ptcache.free_bake", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.free_bake", + "poll": false + }, + { + "id": "operator:ptcache.free_bake_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.free_bake_all", + "poll": true + }, + { + "id": "operator:ptcache.remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ptcache.remove", + "poll": false + }, + { + "id": "operator:render.clear_texture_cache", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.clear_texture_cache", + "poll": true + }, + { + "id": "operator:render.color_management_white_balance_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.color_management_white_balance_preset_add", + "poll": true + }, + { + "id": "operator:render.cycles_integrator_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.cycles_integrator_preset_add", + "poll": true + }, + { + "id": "operator:render.cycles_performance_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.cycles_performance_preset_add", + "poll": true + }, + { + "id": "operator:render.cycles_sampling_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.cycles_sampling_preset_add", + "poll": true + }, + { + "id": "operator:render.cycles_viewport_sampling_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.cycles_viewport_sampling_preset_add", + "poll": true + }, + { + "id": "operator:render.eevee_raytracing_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.eevee_raytracing_preset_add", + "poll": true + }, + { + "id": "operator:render.generate_texture_cache", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.generate_texture_cache", + "poll": true + }, + { + "id": "operator:render.opengl", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.opengl", + "poll": true + }, + { + "id": "operator:render.play_rendered_anim", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.play_rendered_anim", + "poll": true + }, + { + "id": "operator:render.preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.preset_add", + "poll": true + }, + { + "id": "operator:render.render", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.render", + "poll": true + }, + { + "id": "operator:render.shutter_curve_preset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.shutter_curve_preset", + "poll": true + }, + { + "id": "operator:render.swap_dimensions", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.swap_dimensions", + "poll": true + }, + { + "id": "operator:render.view_cancel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.view_cancel", + "poll": false + }, + { + "id": "operator:render.view_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "render.view_show", + "poll": true + }, + { + "id": "operator:rigidbody.bake_to_keyframes", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.bake_to_keyframes", + "poll": false + }, + { + "id": "operator:rigidbody.connect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.connect", + "poll": false + }, + { + "id": "operator:rigidbody.constraint_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.constraint_add", + "poll": true + }, + { + "id": "operator:rigidbody.constraint_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.constraint_remove", + "poll": false + }, + { + "id": "operator:rigidbody.mass_calculate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.mass_calculate", + "poll": false + }, + { + "id": "operator:rigidbody.object_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.object_add", + "poll": true + }, + { + "id": "operator:rigidbody.object_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.object_remove", + "poll": false + }, + { + "id": "operator:rigidbody.object_settings_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.object_settings_copy", + "poll": false + }, + { + "id": "operator:rigidbody.objects_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.objects_add", + "poll": true + }, + { + "id": "operator:rigidbody.objects_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.objects_remove", + "poll": false + }, + { + "id": "operator:rigidbody.shape_change", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.shape_change", + "poll": false + }, + { + "id": "operator:rigidbody.world_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.world_add", + "poll": true + }, + { + "id": "operator:rigidbody.world_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "rigidbody.world_remove", + "poll": false + }, + { + "id": "operator:scene.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.delete", + "poll": false + }, + { + "id": "operator:scene.drop_scene_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.drop_scene_asset", + "poll": true + }, + { + "id": "operator:scene.freestyle_add_edge_marks_to_keying_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_add_edge_marks_to_keying_set", + "poll": true + }, + { + "id": "operator:scene.freestyle_add_face_marks_to_keying_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_add_face_marks_to_keying_set", + "poll": true + }, + { + "id": "operator:scene.freestyle_alpha_modifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_alpha_modifier_add", + "poll": true + }, + { + "id": "operator:scene.freestyle_color_modifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_color_modifier_add", + "poll": true + }, + { + "id": "operator:scene.freestyle_fill_range_by_selection", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_fill_range_by_selection", + "poll": true + }, + { + "id": "operator:scene.freestyle_geometry_modifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_geometry_modifier_add", + "poll": true + }, + { + "id": "operator:scene.freestyle_lineset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_lineset_add", + "poll": true + }, + { + "id": "operator:scene.freestyle_lineset_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_lineset_copy", + "poll": true + }, + { + "id": "operator:scene.freestyle_lineset_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_lineset_move", + "poll": true + }, + { + "id": "operator:scene.freestyle_lineset_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_lineset_paste", + "poll": true + }, + { + "id": "operator:scene.freestyle_lineset_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_lineset_remove", + "poll": true + }, + { + "id": "operator:scene.freestyle_linestyle_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_linestyle_new", + "poll": true + }, + { + "id": "operator:scene.freestyle_modifier_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_modifier_copy", + "poll": true + }, + { + "id": "operator:scene.freestyle_modifier_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_modifier_move", + "poll": true + }, + { + "id": "operator:scene.freestyle_modifier_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_modifier_remove", + "poll": true + }, + { + "id": "operator:scene.freestyle_module_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_module_add", + "poll": true + }, + { + "id": "operator:scene.freestyle_module_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_module_move", + "poll": false + }, + { + "id": "operator:scene.freestyle_module_open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_module_open", + "poll": false + }, + { + "id": "operator:scene.freestyle_module_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_module_remove", + "poll": false + }, + { + "id": "operator:scene.freestyle_stroke_material_create", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_stroke_material_create", + "poll": true + }, + { + "id": "operator:scene.freestyle_thickness_modifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.freestyle_thickness_modifier_add", + "poll": true + }, + { + "id": "operator:scene.gltf2_action_filter_refresh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.gltf2_action_filter_refresh", + "poll": true + }, + { + "id": "operator:scene.gpencil_brush_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.gpencil_brush_preset_add", + "poll": true + }, + { + "id": "operator:scene.gpencil_material_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.gpencil_material_preset_add", + "poll": true + }, + { + "id": "operator:scene.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.new", + "poll": true + }, + { + "id": "operator:scene.new_sequencer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.new_sequencer", + "poll": false + }, + { + "id": "operator:scene.new_sequencer_scene", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.new_sequencer_scene", + "poll": true + }, + { + "id": "operator:scene.render_view_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.render_view_add", + "poll": true + }, + { + "id": "operator:scene.render_view_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.render_view_remove", + "poll": false + }, + { + "id": "operator:scene.view_layer_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_add", + "poll": true + }, + { + "id": "operator:scene.view_layer_add_aov", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_add_aov", + "poll": true + }, + { + "id": "operator:scene.view_layer_add_lightgroup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_add_lightgroup", + "poll": true + }, + { + "id": "operator:scene.view_layer_add_used_lightgroups", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_add_used_lightgroups", + "poll": true + }, + { + "id": "operator:scene.view_layer_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_remove", + "poll": false + }, + { + "id": "operator:scene.view_layer_remove_aov", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_remove_aov", + "poll": true + }, + { + "id": "operator:scene.view_layer_remove_lightgroup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_remove_lightgroup", + "poll": true + }, + { + "id": "operator:scene.view_layer_remove_unused_lightgroups", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "scene.view_layer_remove_unused_lightgroups", + "poll": true + }, + { + "id": "operator:screen.actionzone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.actionzone", + "poll": false + }, + { + "id": "operator:screen.animation_cancel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.animation_cancel", + "poll": true + }, + { + "id": "operator:screen.animation_pause", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.animation_pause", + "poll": true + }, + { + "id": "operator:screen.animation_play", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.animation_play", + "poll": true + }, + { + "id": "operator:screen.animation_step", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.animation_step", + "poll": true + }, + { + "id": "operator:screen.area_close", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_close", + "poll": false + }, + { + "id": "operator:screen.area_dupli", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_dupli", + "poll": false + }, + { + "id": "operator:screen.area_join", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_join", + "poll": true + }, + { + "id": "operator:screen.area_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_move", + "poll": true + }, + { + "id": "operator:screen.area_options", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_options", + "poll": true + }, + { + "id": "operator:screen.area_split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_split", + "poll": true + }, + { + "id": "operator:screen.area_swap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.area_swap", + "poll": true + }, + { + "id": "operator:screen.back_to_previous", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.back_to_previous", + "poll": true + }, + { + "id": "operator:screen.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.delete", + "poll": true + }, + { + "id": "operator:screen.drivers_editor_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.drivers_editor_show", + "poll": false + }, + { + "id": "operator:screen.edge_merge", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.edge_merge", + "poll": true + }, + { + "id": "operator:screen.frame_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.frame_jump", + "poll": true + }, + { + "id": "operator:screen.frame_offset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.frame_offset", + "poll": true + }, + { + "id": "operator:screen.header_toggle_menus", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.header_toggle_menus", + "poll": false + }, + { + "id": "operator:screen.info_log_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.info_log_show", + "poll": false + }, + { + "id": "operator:screen.keyframe_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.keyframe_jump", + "poll": true + }, + { + "id": "operator:screen.marker_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.marker_jump", + "poll": true + }, + { + "id": "operator:screen.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.new", + "poll": true + }, + { + "id": "operator:screen.quadview_size", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.quadview_size", + "poll": false + }, + { + "id": "operator:screen.redo_last", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.redo_last", + "poll": false + }, + { + "id": "operator:screen.region_blend", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.region_blend", + "poll": true + }, + { + "id": "operator:screen.region_context_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.region_context_menu", + "poll": true + }, + { + "id": "operator:screen.region_flip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.region_flip", + "poll": false + }, + { + "id": "operator:screen.region_quadview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.region_quadview", + "poll": false + }, + { + "id": "operator:screen.region_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.region_scale", + "poll": false + }, + { + "id": "operator:screen.region_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.region_toggle", + "poll": false + }, + { + "id": "operator:screen.repeat_history", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.repeat_history", + "poll": false + }, + { + "id": "operator:screen.repeat_last", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.repeat_last", + "poll": false + }, + { + "id": "operator:screen.screen_full_area", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.screen_full_area", + "poll": false + }, + { + "id": "operator:screen.screen_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.screen_set", + "poll": true + }, + { + "id": "operator:screen.screenshot", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.screenshot", + "poll": false + }, + { + "id": "operator:screen.screenshot_area", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.screenshot_area", + "poll": false + }, + { + "id": "operator:screen.space_context_cycle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.space_context_cycle", + "poll": false + }, + { + "id": "operator:screen.space_type_set_or_cycle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.space_type_set_or_cycle", + "poll": false + }, + { + "id": "operator:screen.spacedata_cleanup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.spacedata_cleanup", + "poll": true + }, + { + "id": "operator:screen.time_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.time_jump", + "poll": true + }, + { + "id": "operator:screen.userpref_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.userpref_show", + "poll": false + }, + { + "id": "operator:screen.workspace_cycle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "screen.workspace_cycle", + "poll": true + }, + { + "id": "operator:script.execute_preset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "script.execute_preset", + "poll": true + }, + { + "id": "operator:script.python_file_run", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "script.python_file_run", + "poll": true + }, + { + "id": "operator:script.reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "script.reload", + "poll": true + }, + { + "id": "operator:sculpt.brush_stroke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.brush_stroke", + "poll": false + }, + { + "id": "operator:sculpt.cloth_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.cloth_filter", + "poll": false + }, + { + "id": "operator:sculpt.color_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.color_filter", + "poll": false + }, + { + "id": "operator:sculpt.detail_flood_fill", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.detail_flood_fill", + "poll": false + }, + { + "id": "operator:sculpt.dynamic_topology_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.dynamic_topology_toggle", + "poll": false + }, + { + "id": "operator:sculpt.dyntopo_detail_size_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.dyntopo_detail_size_edit", + "poll": false + }, + { + "id": "operator:sculpt.expand", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.expand", + "poll": false + }, + { + "id": "operator:sculpt.face_set_box_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_box_gesture", + "poll": false + }, + { + "id": "operator:sculpt.face_set_change_visibility", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_change_visibility", + "poll": false + }, + { + "id": "operator:sculpt.face_set_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_edit", + "poll": false + }, + { + "id": "operator:sculpt.face_set_extract", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_extract", + "poll": false + }, + { + "id": "operator:sculpt.face_set_lasso_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_lasso_gesture", + "poll": false + }, + { + "id": "operator:sculpt.face_set_line_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_line_gesture", + "poll": false + }, + { + "id": "operator:sculpt.face_set_polyline_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_set_polyline_gesture", + "poll": false + }, + { + "id": "operator:sculpt.face_sets_create", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_sets_create", + "poll": false + }, + { + "id": "operator:sculpt.face_sets_init", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_sets_init", + "poll": false + }, + { + "id": "operator:sculpt.face_sets_randomize_colors", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.face_sets_randomize_colors", + "poll": false + }, + { + "id": "operator:sculpt.mask_by_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.mask_by_color", + "poll": false + }, + { + "id": "operator:sculpt.mask_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.mask_filter", + "poll": false + }, + { + "id": "operator:sculpt.mask_from_boundary", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.mask_from_boundary", + "poll": false + }, + { + "id": "operator:sculpt.mask_from_cavity", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.mask_from_cavity", + "poll": false + }, + { + "id": "operator:sculpt.mask_init", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.mask_init", + "poll": false + }, + { + "id": "operator:sculpt.mesh_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.mesh_filter", + "poll": false + }, + { + "id": "operator:sculpt.optimize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.optimize", + "poll": false + }, + { + "id": "operator:sculpt.paint_mask_extract", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.paint_mask_extract", + "poll": false + }, + { + "id": "operator:sculpt.paint_mask_slice", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.paint_mask_slice", + "poll": false + }, + { + "id": "operator:sculpt.project_line_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.project_line_gesture", + "poll": false + }, + { + "id": "operator:sculpt.sample_detail_size", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.sample_detail_size", + "poll": false + }, + { + "id": "operator:sculpt.sculptmode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.sculptmode_toggle", + "poll": true + }, + { + "id": "operator:sculpt.set_persistent_base", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.set_persistent_base", + "poll": false + }, + { + "id": "operator:sculpt.set_pivot_position", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.set_pivot_position", + "poll": false + }, + { + "id": "operator:sculpt.symmetrize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.symmetrize", + "poll": false + }, + { + "id": "operator:sculpt.trim_box_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.trim_box_gesture", + "poll": false + }, + { + "id": "operator:sculpt.trim_lasso_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.trim_lasso_gesture", + "poll": false + }, + { + "id": "operator:sculpt.trim_line_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.trim_line_gesture", + "poll": false + }, + { + "id": "operator:sculpt.trim_polyline_gesture", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.trim_polyline_gesture", + "poll": false + }, + { + "id": "operator:sculpt.uv_sculpt_grab", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.uv_sculpt_grab", + "poll": false + }, + { + "id": "operator:sculpt.uv_sculpt_pinch", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.uv_sculpt_pinch", + "poll": false + }, + { + "id": "operator:sculpt.uv_sculpt_relax", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt.uv_sculpt_relax", + "poll": false + }, + { + "id": "operator:sculpt_curves.brush_stroke", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt_curves.brush_stroke", + "poll": true + }, + { + "id": "operator:sculpt_curves.min_distance_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt_curves.min_distance_edit", + "poll": false + }, + { + "id": "operator:sculpt_curves.select_grow", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt_curves.select_grow", + "poll": false + }, + { + "id": "operator:sculpt_curves.select_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sculpt_curves.select_random", + "poll": false + }, + { + "id": "operator:sequencer.add_scene_strip_from_scene_asset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.add_scene_strip_from_scene_asset", + "poll": false + }, + { + "id": "operator:sequencer.box_blade", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.box_blade", + "poll": false + }, + { + "id": "operator:sequencer.change_effect_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.change_effect_type", + "poll": false + }, + { + "id": "operator:sequencer.change_path", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.change_path", + "poll": false + }, + { + "id": "operator:sequencer.change_scene", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.change_scene", + "poll": false + }, + { + "id": "operator:sequencer.connect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.connect", + "poll": false + }, + { + "id": "operator:sequencer.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.copy", + "poll": false + }, + { + "id": "operator:sequencer.crossfade_sounds", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.crossfade_sounds", + "poll": false + }, + { + "id": "operator:sequencer.cursor_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.cursor_set", + "poll": false + }, + { + "id": "operator:sequencer.deinterlace_selected_movies", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.deinterlace_selected_movies", + "poll": false + }, + { + "id": "operator:sequencer.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.delete", + "poll": false + }, + { + "id": "operator:sequencer.disconnect", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.disconnect", + "poll": false + }, + { + "id": "operator:sequencer.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.duplicate", + "poll": false + }, + { + "id": "operator:sequencer.duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.duplicate_move", + "poll": false + }, + { + "id": "operator:sequencer.duplicate_move_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.duplicate_move_linked", + "poll": false + }, + { + "id": "operator:sequencer.effect_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.effect_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.enable_proxies", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.enable_proxies", + "poll": false + }, + { + "id": "operator:sequencer.export_subtitles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.export_subtitles", + "poll": false + }, + { + "id": "operator:sequencer.fades_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.fades_add", + "poll": false + }, + { + "id": "operator:sequencer.fades_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.fades_clear", + "poll": false + }, + { + "id": "operator:sequencer.gap_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.gap_insert", + "poll": false + }, + { + "id": "operator:sequencer.gap_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.gap_remove", + "poll": false + }, + { + "id": "operator:sequencer.image_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.image_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.images_separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.images_separate", + "poll": false + }, + { + "id": "operator:sequencer.lock", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.lock", + "poll": false + }, + { + "id": "operator:sequencer.mask_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.mask_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.meta_make", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.meta_make", + "poll": false + }, + { + "id": "operator:sequencer.meta_separate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.meta_separate", + "poll": false + }, + { + "id": "operator:sequencer.meta_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.meta_toggle", + "poll": false + }, + { + "id": "operator:sequencer.movie_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.movie_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.movieclip_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.movieclip_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.mute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.mute", + "poll": false + }, + { + "id": "operator:sequencer.offset_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.offset_clear", + "poll": false + }, + { + "id": "operator:sequencer.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.paste", + "poll": false + }, + { + "id": "operator:sequencer.preview_duplicate_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.preview_duplicate_move", + "poll": false + }, + { + "id": "operator:sequencer.preview_duplicate_move_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.preview_duplicate_move_linked", + "poll": false + }, + { + "id": "operator:sequencer.reassign_inputs", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.reassign_inputs", + "poll": false + }, + { + "id": "operator:sequencer.rebuild_proxy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.rebuild_proxy", + "poll": false + }, + { + "id": "operator:sequencer.refresh_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.refresh_all", + "poll": false + }, + { + "id": "operator:sequencer.reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.reload", + "poll": false + }, + { + "id": "operator:sequencer.rename_channel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.rename_channel", + "poll": false + }, + { + "id": "operator:sequencer.rendersize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.rendersize", + "poll": false + }, + { + "id": "operator:sequencer.retiming_add_freeze_frame_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_add_freeze_frame_slide", + "poll": false + }, + { + "id": "operator:sequencer.retiming_add_transition_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_add_transition_slide", + "poll": false + }, + { + "id": "operator:sequencer.retiming_freeze_frame_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_freeze_frame_add", + "poll": false + }, + { + "id": "operator:sequencer.retiming_key_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_key_add", + "poll": false + }, + { + "id": "operator:sequencer.retiming_key_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_key_delete", + "poll": false + }, + { + "id": "operator:sequencer.retiming_reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_reset", + "poll": false + }, + { + "id": "operator:sequencer.retiming_segment_speed_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_segment_speed_set", + "poll": false + }, + { + "id": "operator:sequencer.retiming_show", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_show", + "poll": false + }, + { + "id": "operator:sequencer.retiming_transition_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.retiming_transition_add", + "poll": false + }, + { + "id": "operator:sequencer.sample", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.sample", + "poll": false + }, + { + "id": "operator:sequencer.scene_frame_range_update", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.scene_frame_range_update", + "poll": false + }, + { + "id": "operator:sequencer.scene_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.scene_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.scene_strip_add_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.scene_strip_add_new", + "poll": false + }, + { + "id": "operator:sequencer.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select", + "poll": false + }, + { + "id": "operator:sequencer.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_all", + "poll": false + }, + { + "id": "operator:sequencer.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_box", + "poll": false + }, + { + "id": "operator:sequencer.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_circle", + "poll": false + }, + { + "id": "operator:sequencer.select_grouped", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_grouped", + "poll": false + }, + { + "id": "operator:sequencer.select_handle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_handle", + "poll": false + }, + { + "id": "operator:sequencer.select_handles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_handles", + "poll": false + }, + { + "id": "operator:sequencer.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_lasso", + "poll": false + }, + { + "id": "operator:sequencer.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_less", + "poll": false + }, + { + "id": "operator:sequencer.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_linked", + "poll": false + }, + { + "id": "operator:sequencer.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_linked_pick", + "poll": false + }, + { + "id": "operator:sequencer.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_more", + "poll": false + }, + { + "id": "operator:sequencer.select_side", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_side", + "poll": false + }, + { + "id": "operator:sequencer.select_side_of_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.select_side_of_frame", + "poll": false + }, + { + "id": "operator:sequencer.set_range_to_strips", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.set_range_to_strips", + "poll": false + }, + { + "id": "operator:sequencer.slip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.slip", + "poll": false + }, + { + "id": "operator:sequencer.snap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.snap", + "poll": false + }, + { + "id": "operator:sequencer.sound_strip_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.sound_strip_add", + "poll": false + }, + { + "id": "operator:sequencer.split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.split", + "poll": false + }, + { + "id": "operator:sequencer.split_multicam", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.split_multicam", + "poll": false + }, + { + "id": "operator:sequencer.strip_color_tag_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_color_tag_set", + "poll": false + }, + { + "id": "operator:sequencer.strip_jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_jump", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_add", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_add_node_group", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_add_node_group", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_copy", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_duplicate", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_equalizer_redefine", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_equalizer_redefine", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_move", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_move_to_index", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_move_to_index", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_remove", + "poll": false + }, + { + "id": "operator:sequencer.strip_modifier_set_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_modifier_set_active", + "poll": false + }, + { + "id": "operator:sequencer.strip_transform_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_transform_clear", + "poll": false + }, + { + "id": "operator:sequencer.strip_transform_fit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.strip_transform_fit", + "poll": false + }, + { + "id": "operator:sequencer.swap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.swap", + "poll": false + }, + { + "id": "operator:sequencer.swap_data", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.swap_data", + "poll": false + }, + { + "id": "operator:sequencer.swap_inputs", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.swap_inputs", + "poll": false + }, + { + "id": "operator:sequencer.text_cursor_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_cursor_move", + "poll": false + }, + { + "id": "operator:sequencer.text_cursor_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_cursor_set", + "poll": false + }, + { + "id": "operator:sequencer.text_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_delete", + "poll": false + }, + { + "id": "operator:sequencer.text_deselect_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_deselect_all", + "poll": false + }, + { + "id": "operator:sequencer.text_edit_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_edit_copy", + "poll": false + }, + { + "id": "operator:sequencer.text_edit_cut", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_edit_cut", + "poll": false + }, + { + "id": "operator:sequencer.text_edit_mode_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_edit_mode_toggle", + "poll": false + }, + { + "id": "operator:sequencer.text_edit_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_edit_paste", + "poll": false + }, + { + "id": "operator:sequencer.text_insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_insert", + "poll": false + }, + { + "id": "operator:sequencer.text_line_break", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_line_break", + "poll": false + }, + { + "id": "operator:sequencer.text_select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_select_all", + "poll": false + }, + { + "id": "operator:sequencer.text_strip_style_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.text_strip_style_preset_add", + "poll": true + }, + { + "id": "operator:sequencer.unlock", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.unlock", + "poll": false + }, + { + "id": "operator:sequencer.unmute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.unmute", + "poll": false + }, + { + "id": "operator:sequencer.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.view_all", + "poll": false + }, + { + "id": "operator:sequencer.view_all_preview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.view_all_preview", + "poll": false + }, + { + "id": "operator:sequencer.view_frame", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.view_frame", + "poll": false + }, + { + "id": "operator:sequencer.view_ghost_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.view_ghost_border", + "poll": false + }, + { + "id": "operator:sequencer.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.view_selected", + "poll": false + }, + { + "id": "operator:sequencer.view_zoom_ratio", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sequencer.view_zoom_ratio", + "poll": false + }, + { + "id": "operator:sound.bake_animation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.bake_animation", + "poll": true + }, + { + "id": "operator:sound.mixdown", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.mixdown", + "poll": true + }, + { + "id": "operator:sound.open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.open", + "poll": true + }, + { + "id": "operator:sound.open_mono", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.open_mono", + "poll": true + }, + { + "id": "operator:sound.pack", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.pack", + "poll": false + }, + { + "id": "operator:sound.unpack", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.unpack", + "poll": false + }, + { + "id": "operator:sound.update_animation_flags", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "sound.update_animation_flags", + "poll": true + }, + { + "id": "operator:spreadsheet.add_row_filter_rule", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.add_row_filter_rule", + "poll": false + }, + { + "id": "operator:spreadsheet.change_spreadsheet_data_source", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.change_spreadsheet_data_source", + "poll": false + }, + { + "id": "operator:spreadsheet.fit_column", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.fit_column", + "poll": false + }, + { + "id": "operator:spreadsheet.remove_row_filter_rule", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.remove_row_filter_rule", + "poll": false + }, + { + "id": "operator:spreadsheet.reorder_columns", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.reorder_columns", + "poll": false + }, + { + "id": "operator:spreadsheet.resize_column", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.resize_column", + "poll": false + }, + { + "id": "operator:spreadsheet.toggle_pin", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "spreadsheet.toggle_pin", + "poll": false + }, + { + "id": "operator:surface.primitive_nurbs_surface_circle_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "surface.primitive_nurbs_surface_circle_add", + "poll": true + }, + { + "id": "operator:surface.primitive_nurbs_surface_curve_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "surface.primitive_nurbs_surface_curve_add", + "poll": true + }, + { + "id": "operator:surface.primitive_nurbs_surface_cylinder_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "surface.primitive_nurbs_surface_cylinder_add", + "poll": true + }, + { + "id": "operator:surface.primitive_nurbs_surface_sphere_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "surface.primitive_nurbs_surface_sphere_add", + "poll": true + }, + { + "id": "operator:surface.primitive_nurbs_surface_surface_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "surface.primitive_nurbs_surface_surface_add", + "poll": true + }, + { + "id": "operator:surface.primitive_nurbs_surface_torus_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "surface.primitive_nurbs_surface_torus_add", + "poll": true + }, + { + "id": "operator:text.autocomplete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.autocomplete", + "poll": false + }, + { + "id": "operator:text.comment_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.comment_toggle", + "poll": false + }, + { + "id": "operator:text.convert_whitespace", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.convert_whitespace", + "poll": false + }, + { + "id": "operator:text.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.copy", + "poll": false + }, + { + "id": "operator:text.cursor_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.cursor_set", + "poll": false + }, + { + "id": "operator:text.cut", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.cut", + "poll": false + }, + { + "id": "operator:text.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.delete", + "poll": false + }, + { + "id": "operator:text.duplicate_line", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.duplicate_line", + "poll": false + }, + { + "id": "operator:text.find", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.find", + "poll": false + }, + { + "id": "operator:text.find_set_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.find_set_selected", + "poll": false + }, + { + "id": "operator:text.indent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.indent", + "poll": false + }, + { + "id": "operator:text.indent_or_autocomplete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.indent_or_autocomplete", + "poll": false + }, + { + "id": "operator:text.insert", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.insert", + "poll": false + }, + { + "id": "operator:text.jump", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.jump", + "poll": false + }, + { + "id": "operator:text.jump_to_file_at_point", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.jump_to_file_at_point", + "poll": true + }, + { + "id": "operator:text.line_break", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.line_break", + "poll": false + }, + { + "id": "operator:text.line_number", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.line_number", + "poll": false + }, + { + "id": "operator:text.make_internal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.make_internal", + "poll": false + }, + { + "id": "operator:text.move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.move", + "poll": false + }, + { + "id": "operator:text.move_lines", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.move_lines", + "poll": false + }, + { + "id": "operator:text.move_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.move_select", + "poll": false + }, + { + "id": "operator:text.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.new", + "poll": true + }, + { + "id": "operator:text.open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.open", + "poll": true + }, + { + "id": "operator:text.overwrite_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.overwrite_toggle", + "poll": false + }, + { + "id": "operator:text.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.paste", + "poll": false + }, + { + "id": "operator:text.reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.reload", + "poll": false + }, + { + "id": "operator:text.replace", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.replace", + "poll": false + }, + { + "id": "operator:text.replace_set_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.replace_set_selected", + "poll": false + }, + { + "id": "operator:text.resolve_conflict", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.resolve_conflict", + "poll": false + }, + { + "id": "operator:text.run_script", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.run_script", + "poll": false + }, + { + "id": "operator:text.save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.save", + "poll": false + }, + { + "id": "operator:text.save_as", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.save_as", + "poll": false + }, + { + "id": "operator:text.scroll", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.scroll", + "poll": false + }, + { + "id": "operator:text.scroll_bar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.scroll_bar", + "poll": false + }, + { + "id": "operator:text.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.select_all", + "poll": false + }, + { + "id": "operator:text.select_line", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.select_line", + "poll": false + }, + { + "id": "operator:text.select_word", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.select_word", + "poll": false + }, + { + "id": "operator:text.selection_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.selection_set", + "poll": false + }, + { + "id": "operator:text.start_find", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.start_find", + "poll": false + }, + { + "id": "operator:text.to_3d_object", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.to_3d_object", + "poll": false + }, + { + "id": "operator:text.unindent", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.unindent", + "poll": false + }, + { + "id": "operator:text.unlink", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.unlink", + "poll": false + }, + { + "id": "operator:text.update_shader", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text.update_shader", + "poll": false + }, + { + "id": "operator:text_editor.preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "text_editor.preset_add", + "poll": true + }, + { + "id": "operator:texture.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "texture.new", + "poll": true + }, + { + "id": "operator:texture.slot_copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "texture.slot_copy", + "poll": false + }, + { + "id": "operator:texture.slot_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "texture.slot_move", + "poll": true + }, + { + "id": "operator:texture.slot_paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "texture.slot_paste", + "poll": true + }, + { + "id": "operator:transform.bbone_resize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.bbone_resize", + "poll": true + }, + { + "id": "operator:transform.bend", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.bend", + "poll": false + }, + { + "id": "operator:transform.create_orientation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.create_orientation", + "poll": false + }, + { + "id": "operator:transform.delete_orientation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.delete_orientation", + "poll": false + }, + { + "id": "operator:transform.edge_bevelweight", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.edge_bevelweight", + "poll": false + }, + { + "id": "operator:transform.edge_crease", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.edge_crease", + "poll": false + }, + { + "id": "operator:transform.edge_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.edge_slide", + "poll": false + }, + { + "id": "operator:transform.from_gizmo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.from_gizmo", + "poll": false + }, + { + "id": "operator:transform.mirror", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.mirror", + "poll": true + }, + { + "id": "operator:transform.push_pull", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.push_pull", + "poll": true + }, + { + "id": "operator:transform.resize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.resize", + "poll": true + }, + { + "id": "operator:transform.rotate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.rotate", + "poll": true + }, + { + "id": "operator:transform.rotate_normal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.rotate_normal", + "poll": false + }, + { + "id": "operator:transform.select_orientation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.select_orientation", + "poll": false + }, + { + "id": "operator:transform.seq_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.seq_slide", + "poll": false + }, + { + "id": "operator:transform.shear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.shear", + "poll": false + }, + { + "id": "operator:transform.shrink_fatten", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.shrink_fatten", + "poll": false + }, + { + "id": "operator:transform.skin_resize", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.skin_resize", + "poll": false + }, + { + "id": "operator:transform.tilt", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.tilt", + "poll": false + }, + { + "id": "operator:transform.tosphere", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.tosphere", + "poll": true + }, + { + "id": "operator:transform.trackball", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.trackball", + "poll": true + }, + { + "id": "operator:transform.transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.transform", + "poll": true + }, + { + "id": "operator:transform.translate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.translate", + "poll": true + }, + { + "id": "operator:transform.vert_crease", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.vert_crease", + "poll": false + }, + { + "id": "operator:transform.vert_slide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.vert_slide", + "poll": false + }, + { + "id": "operator:transform.vertex_random", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.vertex_random", + "poll": false + }, + { + "id": "operator:transform.vertex_warp", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "transform.vertex_warp", + "poll": false + }, + { + "id": "operator:ui.assign_default_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.assign_default_button", + "poll": false + }, + { + "id": "operator:ui.button_execute", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.button_execute", + "poll": true + }, + { + "id": "operator:ui.button_string_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.button_string_clear", + "poll": false + }, + { + "id": "operator:ui.copy_as_driver_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.copy_as_driver_button", + "poll": false + }, + { + "id": "operator:ui.copy_data_path_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.copy_data_path_button", + "poll": false + }, + { + "id": "operator:ui.copy_driver_to_selected_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.copy_driver_to_selected_button", + "poll": false + }, + { + "id": "operator:ui.copy_python_command_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.copy_python_command_button", + "poll": false + }, + { + "id": "operator:ui.copy_to_selected_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.copy_to_selected_button", + "poll": false + }, + { + "id": "operator:ui.drop_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.drop_color", + "poll": false + }, + { + "id": "operator:ui.drop_material", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.drop_material", + "poll": false + }, + { + "id": "operator:ui.drop_name", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.drop_name", + "poll": false + }, + { + "id": "operator:ui.editsource", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.editsource", + "poll": true + }, + { + "id": "operator:ui.eyedropper_bone", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_bone", + "poll": false + }, + { + "id": "operator:ui.eyedropper_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_color", + "poll": true + }, + { + "id": "operator:ui.eyedropper_colorramp", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_colorramp", + "poll": false + }, + { + "id": "operator:ui.eyedropper_colorramp_point", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_colorramp_point", + "poll": false + }, + { + "id": "operator:ui.eyedropper_depth", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_depth", + "poll": false + }, + { + "id": "operator:ui.eyedropper_driver", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_driver", + "poll": true + }, + { + "id": "operator:ui.eyedropper_grease_pencil_color", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_grease_pencil_color", + "poll": false + }, + { + "id": "operator:ui.eyedropper_id", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.eyedropper_id", + "poll": false + }, + { + "id": "operator:ui.jump_to_target_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.jump_to_target_button", + "poll": false + }, + { + "id": "operator:ui.list_start_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.list_start_filter", + "poll": false + }, + { + "id": "operator:ui.override_add_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.override_add_button", + "poll": false + }, + { + "id": "operator:ui.override_idtemplate_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.override_idtemplate_clear", + "poll": false + }, + { + "id": "operator:ui.override_idtemplate_make", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.override_idtemplate_make", + "poll": false + }, + { + "id": "operator:ui.override_idtemplate_reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.override_idtemplate_reset", + "poll": false + }, + { + "id": "operator:ui.override_remove_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.override_remove_button", + "poll": false + }, + { + "id": "operator:ui.reloadtranslation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.reloadtranslation", + "poll": true + }, + { + "id": "operator:ui.reset_default_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.reset_default_button", + "poll": false + }, + { + "id": "operator:ui.unset_property_button", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.unset_property_button", + "poll": false + }, + { + "id": "operator:ui.view_drop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_drop", + "poll": false + }, + { + "id": "operator:ui.view_item_delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_item_delete", + "poll": false + }, + { + "id": "operator:ui.view_item_focus", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_item_focus", + "poll": false + }, + { + "id": "operator:ui.view_item_navigate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_item_navigate", + "poll": false + }, + { + "id": "operator:ui.view_item_rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_item_rename", + "poll": false + }, + { + "id": "operator:ui.view_item_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_item_select", + "poll": false + }, + { + "id": "operator:ui.view_scroll", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_scroll", + "poll": false + }, + { + "id": "operator:ui.view_start_filter", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "ui.view_start_filter", + "poll": false + }, + { + "id": "operator:uilist.entry_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uilist.entry_add", + "poll": true + }, + { + "id": "operator:uilist.entry_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uilist.entry_move", + "poll": true + }, + { + "id": "operator:uilist.entry_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uilist.entry_remove", + "poll": true + }, + { + "id": "operator:uv.align", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.align", + "poll": false + }, + { + "id": "operator:uv.align_rotation", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.align_rotation", + "poll": false + }, + { + "id": "operator:uv.arrange_islands", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.arrange_islands", + "poll": false + }, + { + "id": "operator:uv.average_islands_scale", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.average_islands_scale", + "poll": false + }, + { + "id": "operator:uv.copy", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.copy", + "poll": false + }, + { + "id": "operator:uv.copy_mirrored_faces", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.copy_mirrored_faces", + "poll": false + }, + { + "id": "operator:uv.cube_project", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.cube_project", + "poll": false + }, + { + "id": "operator:uv.cursor_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.cursor_set", + "poll": false + }, + { + "id": "operator:uv.custom_region_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.custom_region_set", + "poll": false + }, + { + "id": "operator:uv.cylinder_project", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.cylinder_project", + "poll": false + }, + { + "id": "operator:uv.export_layout", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.export_layout", + "poll": true + }, + { + "id": "operator:uv.follow_active_quads", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.follow_active_quads", + "poll": false + }, + { + "id": "operator:uv.hide", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.hide", + "poll": false + }, + { + "id": "operator:uv.lightmap_pack", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.lightmap_pack", + "poll": true + }, + { + "id": "operator:uv.mark_seam", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.mark_seam", + "poll": false + }, + { + "id": "operator:uv.minimize_stretch", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.minimize_stretch", + "poll": false + }, + { + "id": "operator:uv.move_on_axis", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.move_on_axis", + "poll": false + }, + { + "id": "operator:uv.pack_islands", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.pack_islands", + "poll": false + }, + { + "id": "operator:uv.paste", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.paste", + "poll": false + }, + { + "id": "operator:uv.pin", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.pin", + "poll": false + }, + { + "id": "operator:uv.project_from_view", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.project_from_view", + "poll": false + }, + { + "id": "operator:uv.randomize_uv_transform", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.randomize_uv_transform", + "poll": false + }, + { + "id": "operator:uv.remove_doubles", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.remove_doubles", + "poll": false + }, + { + "id": "operator:uv.reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.reset", + "poll": false + }, + { + "id": "operator:uv.reveal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.reveal", + "poll": false + }, + { + "id": "operator:uv.rip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.rip", + "poll": false + }, + { + "id": "operator:uv.rip_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.rip_move", + "poll": false + }, + { + "id": "operator:uv.seams_from_islands", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.seams_from_islands", + "poll": false + }, + { + "id": "operator:uv.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select", + "poll": false + }, + { + "id": "operator:uv.select_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_all", + "poll": false + }, + { + "id": "operator:uv.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_box", + "poll": false + }, + { + "id": "operator:uv.select_by_winding", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_by_winding", + "poll": false + }, + { + "id": "operator:uv.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_circle", + "poll": false + }, + { + "id": "operator:uv.select_edge_ring", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_edge_ring", + "poll": false + }, + { + "id": "operator:uv.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_lasso", + "poll": false + }, + { + "id": "operator:uv.select_less", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_less", + "poll": false + }, + { + "id": "operator:uv.select_linked", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_linked", + "poll": false + }, + { + "id": "operator:uv.select_linked_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_linked_pick", + "poll": false + }, + { + "id": "operator:uv.select_loop", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_loop", + "poll": false + }, + { + "id": "operator:uv.select_mode", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_mode", + "poll": false + }, + { + "id": "operator:uv.select_more", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_more", + "poll": false + }, + { + "id": "operator:uv.select_overlap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_overlap", + "poll": false + }, + { + "id": "operator:uv.select_pinned", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_pinned", + "poll": false + }, + { + "id": "operator:uv.select_similar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_similar", + "poll": false + }, + { + "id": "operator:uv.select_split", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_split", + "poll": false + }, + { + "id": "operator:uv.select_tile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.select_tile", + "poll": false + }, + { + "id": "operator:uv.shortest_path_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.shortest_path_pick", + "poll": false + }, + { + "id": "operator:uv.shortest_path_select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.shortest_path_select", + "poll": false + }, + { + "id": "operator:uv.smart_project", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.smart_project", + "poll": false + }, + { + "id": "operator:uv.snap_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.snap_cursor", + "poll": false + }, + { + "id": "operator:uv.snap_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.snap_selected", + "poll": false + }, + { + "id": "operator:uv.sphere_project", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.sphere_project", + "poll": false + }, + { + "id": "operator:uv.stitch", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.stitch", + "poll": false + }, + { + "id": "operator:uv.unwrap", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.unwrap", + "poll": false + }, + { + "id": "operator:uv.weld", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "uv.weld", + "poll": false + }, + { + "id": "operator:view2d.edge_pan", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.edge_pan", + "poll": false + }, + { + "id": "operator:view2d.ndof", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.ndof", + "poll": false + }, + { + "id": "operator:view2d.pan", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.pan", + "poll": false + }, + { + "id": "operator:view2d.reset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.reset", + "poll": false + }, + { + "id": "operator:view2d.scroll_down", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.scroll_down", + "poll": false + }, + { + "id": "operator:view2d.scroll_left", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.scroll_left", + "poll": false + }, + { + "id": "operator:view2d.scroll_right", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.scroll_right", + "poll": false + }, + { + "id": "operator:view2d.scroll_up", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.scroll_up", + "poll": false + }, + { + "id": "operator:view2d.scroller_activate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.scroller_activate", + "poll": false + }, + { + "id": "operator:view2d.smoothview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.smoothview", + "poll": false + }, + { + "id": "operator:view2d.zoom", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.zoom", + "poll": false + }, + { + "id": "operator:view2d.zoom_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.zoom_border", + "poll": false + }, + { + "id": "operator:view2d.zoom_in", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.zoom_in", + "poll": false + }, + { + "id": "operator:view2d.zoom_out", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view2d.zoom_out", + "poll": false + }, + { + "id": "operator:view3d.bone_select_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.bone_select_menu", + "poll": true + }, + { + "id": "operator:view3d.camera_background_image_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.camera_background_image_add", + "poll": false + }, + { + "id": "operator:view3d.camera_background_image_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.camera_background_image_remove", + "poll": false + }, + { + "id": "operator:view3d.camera_to_view", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.camera_to_view", + "poll": false + }, + { + "id": "operator:view3d.camera_to_view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.camera_to_view_selected", + "poll": true + }, + { + "id": "operator:view3d.clear_render_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.clear_render_border", + "poll": false + }, + { + "id": "operator:view3d.clip_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.clip_border", + "poll": false + }, + { + "id": "operator:view3d.copybuffer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.copybuffer", + "poll": true + }, + { + "id": "operator:view3d.cursor3d", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.cursor3d", + "poll": false + }, + { + "id": "operator:view3d.dolly", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.dolly", + "poll": false + }, + { + "id": "operator:view3d.drop_world", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.drop_world", + "poll": true + }, + { + "id": "operator:view3d.edit_mesh_extrude_individual_move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.edit_mesh_extrude_individual_move", + "poll": false + }, + { + "id": "operator:view3d.edit_mesh_extrude_manifold_normal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.edit_mesh_extrude_manifold_normal", + "poll": false + }, + { + "id": "operator:view3d.edit_mesh_extrude_move_normal", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.edit_mesh_extrude_move_normal", + "poll": false + }, + { + "id": "operator:view3d.edit_mesh_extrude_move_shrink_fatten", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.edit_mesh_extrude_move_shrink_fatten", + "poll": false + }, + { + "id": "operator:view3d.fly", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.fly", + "poll": false + }, + { + "id": "operator:view3d.interactive_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.interactive_add", + "poll": true + }, + { + "id": "operator:view3d.localview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.localview", + "poll": false + }, + { + "id": "operator:view3d.localview_remove_from", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.localview_remove_from", + "poll": false + }, + { + "id": "operator:view3d.move", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.move", + "poll": false + }, + { + "id": "operator:view3d.navigate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.navigate", + "poll": false + }, + { + "id": "operator:view3d.ndof_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.ndof_all", + "poll": false + }, + { + "id": "operator:view3d.ndof_orbit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.ndof_orbit", + "poll": false + }, + { + "id": "operator:view3d.ndof_orbit_zoom", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.ndof_orbit_zoom", + "poll": false + }, + { + "id": "operator:view3d.ndof_pan", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.ndof_pan", + "poll": false + }, + { + "id": "operator:view3d.object_as_camera", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.object_as_camera", + "poll": false + }, + { + "id": "operator:view3d.object_mode_pie_or_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.object_mode_pie_or_toggle", + "poll": false + }, + { + "id": "operator:view3d.pastebuffer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.pastebuffer", + "poll": true + }, + { + "id": "operator:view3d.render_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.render_border", + "poll": false + }, + { + "id": "operator:view3d.rotate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.rotate", + "poll": false + }, + { + "id": "operator:view3d.ruler_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.ruler_add", + "poll": false + }, + { + "id": "operator:view3d.ruler_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.ruler_remove", + "poll": false + }, + { + "id": "operator:view3d.select", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.select", + "poll": false + }, + { + "id": "operator:view3d.select_box", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.select_box", + "poll": false + }, + { + "id": "operator:view3d.select_circle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.select_circle", + "poll": false + }, + { + "id": "operator:view3d.select_lasso", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.select_lasso", + "poll": false + }, + { + "id": "operator:view3d.select_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.select_menu", + "poll": true + }, + { + "id": "operator:view3d.smoothview", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.smoothview", + "poll": false + }, + { + "id": "operator:view3d.snap_cursor_to_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_cursor_to_active", + "poll": false + }, + { + "id": "operator:view3d.snap_cursor_to_center", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_cursor_to_center", + "poll": false + }, + { + "id": "operator:view3d.snap_cursor_to_grid", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_cursor_to_grid", + "poll": false + }, + { + "id": "operator:view3d.snap_cursor_to_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_cursor_to_selected", + "poll": false + }, + { + "id": "operator:view3d.snap_selected_to_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_selected_to_active", + "poll": false + }, + { + "id": "operator:view3d.snap_selected_to_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_selected_to_cursor", + "poll": false + }, + { + "id": "operator:view3d.snap_selected_to_grid", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.snap_selected_to_grid", + "poll": false + }, + { + "id": "operator:view3d.toggle_matcap_flip", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.toggle_matcap_flip", + "poll": true + }, + { + "id": "operator:view3d.toggle_shading", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.toggle_shading", + "poll": false + }, + { + "id": "operator:view3d.toggle_xray", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.toggle_xray", + "poll": false + }, + { + "id": "operator:view3d.transform_gizmo_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.transform_gizmo_set", + "poll": false + }, + { + "id": "operator:view3d.view_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_all", + "poll": false + }, + { + "id": "operator:view3d.view_axis", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_axis", + "poll": false + }, + { + "id": "operator:view3d.view_camera", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_camera", + "poll": false + }, + { + "id": "operator:view3d.view_center_camera", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_center_camera", + "poll": false + }, + { + "id": "operator:view3d.view_center_cursor", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_center_cursor", + "poll": false + }, + { + "id": "operator:view3d.view_center_lock", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_center_lock", + "poll": false + }, + { + "id": "operator:view3d.view_center_pick", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_center_pick", + "poll": false + }, + { + "id": "operator:view3d.view_lock_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_lock_clear", + "poll": false + }, + { + "id": "operator:view3d.view_lock_to_active", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_lock_to_active", + "poll": false + }, + { + "id": "operator:view3d.view_orbit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_orbit", + "poll": false + }, + { + "id": "operator:view3d.view_pan", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_pan", + "poll": false + }, + { + "id": "operator:view3d.view_persportho", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_persportho", + "poll": false + }, + { + "id": "operator:view3d.view_roll", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_roll", + "poll": false + }, + { + "id": "operator:view3d.view_selected", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.view_selected", + "poll": false + }, + { + "id": "operator:view3d.walk", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.walk", + "poll": false + }, + { + "id": "operator:view3d.zoom", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.zoom", + "poll": false + }, + { + "id": "operator:view3d.zoom_border", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.zoom_border", + "poll": false + }, + { + "id": "operator:view3d.zoom_camera_1_to_1", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "view3d.zoom_camera_1_to_1", + "poll": false + }, + { + "id": "operator:wm.append", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.append", + "poll": true + }, + { + "id": "operator:wm.batch_rename", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.batch_rename", + "poll": true + }, + { + "id": "operator:wm.blend_strings_utf8_validate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.blend_strings_utf8_validate", + "poll": true + }, + { + "id": "operator:wm.call_asset_shelf_popover", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.call_asset_shelf_popover", + "poll": true + }, + { + "id": "operator:wm.call_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.call_menu", + "poll": true + }, + { + "id": "operator:wm.call_menu_pie", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.call_menu_pie", + "poll": true + }, + { + "id": "operator:wm.call_panel", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.call_panel", + "poll": true + }, + { + "id": "operator:wm.clear_recent_files", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.clear_recent_files", + "poll": true + }, + { + "id": "operator:wm.collection_export_all", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.collection_export_all", + "poll": true + }, + { + "id": "operator:wm.context_collection_boolean_set", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_collection_boolean_set", + "poll": true + }, + { + "id": "operator:wm.context_cycle_array", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_cycle_array", + "poll": true + }, + { + "id": "operator:wm.context_cycle_enum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_cycle_enum", + "poll": true + }, + { + "id": "operator:wm.context_cycle_int", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_cycle_int", + "poll": true + }, + { + "id": "operator:wm.context_menu_enum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_menu_enum", + "poll": true + }, + { + "id": "operator:wm.context_modal_mouse", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_modal_mouse", + "poll": true + }, + { + "id": "operator:wm.context_pie_enum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_pie_enum", + "poll": true + }, + { + "id": "operator:wm.context_scale_float", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_scale_float", + "poll": true + }, + { + "id": "operator:wm.context_scale_int", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_scale_int", + "poll": true + }, + { + "id": "operator:wm.context_set_boolean", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_boolean", + "poll": true + }, + { + "id": "operator:wm.context_set_enum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_enum", + "poll": true + }, + { + "id": "operator:wm.context_set_float", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_float", + "poll": true + }, + { + "id": "operator:wm.context_set_id", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_id", + "poll": true + }, + { + "id": "operator:wm.context_set_int", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_int", + "poll": true + }, + { + "id": "operator:wm.context_set_string", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_string", + "poll": true + }, + { + "id": "operator:wm.context_set_value", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_set_value", + "poll": true + }, + { + "id": "operator:wm.context_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_toggle", + "poll": true + }, + { + "id": "operator:wm.context_toggle_enum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.context_toggle_enum", + "poll": true + }, + { + "id": "operator:wm.debug_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.debug_menu", + "poll": true + }, + { + "id": "operator:wm.doc_view", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.doc_view", + "poll": true + }, + { + "id": "operator:wm.doc_view_manual", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.doc_view_manual", + "poll": true + }, + { + "id": "operator:wm.doc_view_manual_ui_context", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.doc_view_manual_ui_context", + "poll": false + }, + { + "id": "operator:wm.drop_blend_file", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.drop_blend_file", + "poll": true + }, + { + "id": "operator:wm.drop_import_file", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.drop_import_file", + "poll": true + }, + { + "id": "operator:wm.fbx_import", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.fbx_import", + "poll": true + }, + { + "id": "operator:wm.grease_pencil_export_svg", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.grease_pencil_export_svg", + "poll": true + }, + { + "id": "operator:wm.grease_pencil_import_svg", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.grease_pencil_import_svg", + "poll": true + }, + { + "id": "operator:wm.id_linked_relocate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.id_linked_relocate", + "poll": true + }, + { + "id": "operator:wm.interface_theme_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.interface_theme_preset_add", + "poll": true + }, + { + "id": "operator:wm.interface_theme_preset_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.interface_theme_preset_remove", + "poll": true + }, + { + "id": "operator:wm.interface_theme_preset_save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.interface_theme_preset_save", + "poll": true + }, + { + "id": "operator:wm.keyconfig_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.keyconfig_preset_add", + "poll": true + }, + { + "id": "operator:wm.keyconfig_preset_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.keyconfig_preset_remove", + "poll": true + }, + { + "id": "operator:wm.lib_reload", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.lib_reload", + "poll": true + }, + { + "id": "operator:wm.lib_relocate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.lib_relocate", + "poll": true + }, + { + "id": "operator:wm.link", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.link", + "poll": true + }, + { + "id": "operator:wm.memory_statistics", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.memory_statistics", + "poll": true + }, + { + "id": "operator:wm.obj_export", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.obj_export", + "poll": true + }, + { + "id": "operator:wm.obj_import", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.obj_import", + "poll": true + }, + { + "id": "operator:wm.open_mainfile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.open_mainfile", + "poll": true + }, + { + "id": "operator:wm.operator_cheat_sheet", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.operator_cheat_sheet", + "poll": true + }, + { + "id": "operator:wm.operator_defaults", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.operator_defaults", + "poll": true + }, + { + "id": "operator:wm.operator_pie_enum", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.operator_pie_enum", + "poll": true + }, + { + "id": "operator:wm.operator_preset_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.operator_preset_add", + "poll": true + }, + { + "id": "operator:wm.operator_presets_cleanup", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.operator_presets_cleanup", + "poll": true + }, + { + "id": "operator:wm.owner_disable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.owner_disable", + "poll": true + }, + { + "id": "operator:wm.owner_enable", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.owner_enable", + "poll": true + }, + { + "id": "operator:wm.path_open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.path_open", + "poll": true + }, + { + "id": "operator:wm.ply_export", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.ply_export", + "poll": true + }, + { + "id": "operator:wm.ply_import", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.ply_import", + "poll": true + }, + { + "id": "operator:wm.previews_batch_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.previews_batch_clear", + "poll": true + }, + { + "id": "operator:wm.previews_batch_generate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.previews_batch_generate", + "poll": true + }, + { + "id": "operator:wm.previews_clear", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.previews_clear", + "poll": true + }, + { + "id": "operator:wm.previews_ensure", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.previews_ensure", + "poll": true + }, + { + "id": "operator:wm.properties_add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.properties_add", + "poll": true + }, + { + "id": "operator:wm.properties_context_change", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.properties_context_change", + "poll": true + }, + { + "id": "operator:wm.properties_edit", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.properties_edit", + "poll": true + }, + { + "id": "operator:wm.properties_edit_value", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.properties_edit_value", + "poll": true + }, + { + "id": "operator:wm.properties_remove", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.properties_remove", + "poll": true + }, + { + "id": "operator:wm.quit_blender", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.quit_blender", + "poll": true + }, + { + "id": "operator:wm.radial_control", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.radial_control", + "poll": true + }, + { + "id": "operator:wm.read_factory_settings", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.read_factory_settings", + "poll": true + }, + { + "id": "operator:wm.read_factory_userpref", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.read_factory_userpref", + "poll": true + }, + { + "id": "operator:wm.read_history", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.read_history", + "poll": true + }, + { + "id": "operator:wm.read_homefile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.read_homefile", + "poll": true + }, + { + "id": "operator:wm.read_userpref", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.read_userpref", + "poll": true + }, + { + "id": "operator:wm.recover_auto_save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.recover_auto_save", + "poll": true + }, + { + "id": "operator:wm.recover_last_session", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.recover_last_session", + "poll": true + }, + { + "id": "operator:wm.redraw_timer", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.redraw_timer", + "poll": false + }, + { + "id": "operator:wm.revert_mainfile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.revert_mainfile", + "poll": false + }, + { + "id": "operator:wm.save_as_mainfile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.save_as_mainfile", + "poll": true + }, + { + "id": "operator:wm.save_auto_save", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.save_auto_save", + "poll": true + }, + { + "id": "operator:wm.save_homefile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.save_homefile", + "poll": true + }, + { + "id": "operator:wm.save_mainfile", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.save_mainfile", + "poll": true + }, + { + "id": "operator:wm.save_userpref", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.save_userpref", + "poll": true + }, + { + "id": "operator:wm.search_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.search_menu", + "poll": true + }, + { + "id": "operator:wm.search_operator", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.search_operator", + "poll": true + }, + { + "id": "operator:wm.search_single_menu", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.search_single_menu", + "poll": true + }, + { + "id": "operator:wm.set_stereo_3d", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.set_stereo_3d", + "poll": true + }, + { + "id": "operator:wm.set_working_color_space", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.set_working_color_space", + "poll": true + }, + { + "id": "operator:wm.splash", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.splash", + "poll": true + }, + { + "id": "operator:wm.splash_about", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.splash_about", + "poll": true + }, + { + "id": "operator:wm.stl_export", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.stl_export", + "poll": true + }, + { + "id": "operator:wm.stl_import", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.stl_import", + "poll": true + }, + { + "id": "operator:wm.sysinfo", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.sysinfo", + "poll": true + }, + { + "id": "operator:wm.tool_set_by_brush_type", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.tool_set_by_brush_type", + "poll": true + }, + { + "id": "operator:wm.tool_set_by_id", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.tool_set_by_id", + "poll": true + }, + { + "id": "operator:wm.tool_set_by_index", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.tool_set_by_index", + "poll": true + }, + { + "id": "operator:wm.toolbar", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.toolbar", + "poll": false + }, + { + "id": "operator:wm.toolbar_fallback_pie", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.toolbar_fallback_pie", + "poll": false + }, + { + "id": "operator:wm.toolbar_prompt", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.toolbar_prompt", + "poll": true + }, + { + "id": "operator:wm.url_open", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.url_open", + "poll": true + }, + { + "id": "operator:wm.url_open_preset", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.url_open_preset", + "poll": true + }, + { + "id": "operator:wm.window_close", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.window_close", + "poll": true + }, + { + "id": "operator:wm.window_fullscreen_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.window_fullscreen_toggle", + "poll": true + }, + { + "id": "operator:wm.window_new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.window_new", + "poll": false + }, + { + "id": "operator:wm.window_new_main", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "wm.window_new_main", + "poll": false + }, + { + "id": "operator:workspace.add", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.add", + "poll": true + }, + { + "id": "operator:workspace.append_activate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.append_activate", + "poll": true + }, + { + "id": "operator:workspace.delete", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.delete", + "poll": true + }, + { + "id": "operator:workspace.delete_all_others", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.delete_all_others", + "poll": true + }, + { + "id": "operator:workspace.duplicate", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.duplicate", + "poll": true + }, + { + "id": "operator:workspace.reorder_to_back", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.reorder_to_back", + "poll": true + }, + { + "id": "operator:workspace.reorder_to_front", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.reorder_to_front", + "poll": true + }, + { + "id": "operator:workspace.scene_pin_toggle", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "workspace.scene_pin_toggle", + "poll": true + }, + { + "id": "operator:world.convert_volume_to_mesh", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "world.convert_volume_to_mesh", + "poll": false + }, + { + "id": "operator:world.new", + "task": "M15-01B", + "ownerFamily": "OPERATOR", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-operator-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01B/manifest.json" + ], + "source": "tests/golden/M15-01B/blender-operator-inventory.json", + "operator": "world.new", + "poll": true + }, + { + "id": "physics:BakeSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BakeSettings" + }, + { + "id": "physics:BlendDataParticles", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BlendDataParticles" + }, + { + "id": "physics:BoidRule", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRule" + }, + { + "id": "physics:BoidRuleAverageSpeed", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRuleAverageSpeed" + }, + { + "id": "physics:BoidRuleAvoid", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRuleAvoid" + }, + { + "id": "physics:BoidRuleAvoidCollision", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRuleAvoidCollision" + }, + { + "id": "physics:BoidRuleFight", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRuleFight" + }, + { + "id": "physics:BoidRuleFollowLeader", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRuleFollowLeader" + }, + { + "id": "physics:BoidRuleGoal", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidRuleGoal" + }, + { + "id": "physics:BoidSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidSettings" + }, + { + "id": "physics:BoidState", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "BoidState" + }, + { + "id": "physics:ChildParticle", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ChildParticle" + }, + { + "id": "physics:ClothCollisionSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ClothCollisionSettings" + }, + { + "id": "physics:ClothModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ClothModifier" + }, + { + "id": "physics:ClothSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ClothSettings" + }, + { + "id": "physics:ClothSolverResult", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ClothSolverResult" + }, + { + "id": "physics:CollisionModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "CollisionModifier" + }, + { + "id": "physics:CollisionSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "CollisionSettings" + }, + { + "id": "physics:DynamicPaintBrushSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "DynamicPaintBrushSettings" + }, + { + "id": "physics:DynamicPaintCanvasSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "DynamicPaintCanvasSettings" + }, + { + "id": "physics:DynamicPaintModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "DynamicPaintModifier" + }, + { + "id": "physics:DynamicPaintSurface", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "DynamicPaintSurface" + }, + { + "id": "physics:DynamicPaintSurfaces", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "DynamicPaintSurfaces" + }, + { + "id": "physics:EffectorWeights", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "EffectorWeights" + }, + { + "id": "physics:FieldSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "FieldSettings" + }, + { + "id": "physics:FluidDomainSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "FluidDomainSettings" + }, + { + "id": "physics:FluidEffectorSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "FluidEffectorSettings" + }, + { + "id": "physics:FluidFlowSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "FluidFlowSettings" + }, + { + "id": "physics:FluidModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "FluidModifier" + }, + { + "id": "physics:GeometryNodeAccumulateField", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeAccumulateField" + }, + { + "id": "physics:GeometryNodeFieldAtIndex", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldAtIndex" + }, + { + "id": "physics:GeometryNodeFieldAverage", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldAverage" + }, + { + "id": "physics:GeometryNodeFieldMinAndMax", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldMinAndMax" + }, + { + "id": "physics:GeometryNodeFieldOnDomain", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldOnDomain" + }, + { + "id": "physics:GeometryNodeFieldToGrid", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldToGrid" + }, + { + "id": "physics:GeometryNodeFieldToGridItem", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldToGridItem" + }, + { + "id": "physics:GeometryNodeFieldToGridItems", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldToGridItems" + }, + { + "id": "physics:GeometryNodeFieldToList", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldToList" + }, + { + "id": "physics:GeometryNodeFieldToListItem", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldToListItem" + }, + { + "id": "physics:GeometryNodeFieldToListItems", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldToListItems" + }, + { + "id": "physics:GeometryNodeFieldVariance", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GeometryNodeFieldVariance" + }, + { + "id": "physics:Particle", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "Particle" + }, + { + "id": "physics:ParticleBrush", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleBrush" + }, + { + "id": "physics:ParticleDupliWeight", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleDupliWeight" + }, + { + "id": "physics:ParticleEdit", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleEdit" + }, + { + "id": "physics:ParticleHairKey", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleHairKey" + }, + { + "id": "physics:ParticleInstanceModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleInstanceModifier" + }, + { + "id": "physics:ParticleKey", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleKey" + }, + { + "id": "physics:ParticleSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleSettings" + }, + { + "id": "physics:ParticleSettingsTextureSlot", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleSettingsTextureSlot" + }, + { + "id": "physics:ParticleSettingsTextureSlots", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleSettingsTextureSlots" + }, + { + "id": "physics:ParticleSystem", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleSystem" + }, + { + "id": "physics:ParticleSystemModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleSystemModifier" + }, + { + "id": "physics:ParticleSystems", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleSystems" + }, + { + "id": "physics:ParticleTarget", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ParticleTarget" + }, + { + "id": "physics:PointCache", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "PointCache" + }, + { + "id": "physics:PointCacheItem", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "PointCacheItem" + }, + { + "id": "physics:PointCaches", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "PointCaches" + }, + { + "id": "physics:RigidBodyConstraint", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "RigidBodyConstraint" + }, + { + "id": "physics:RigidBodyObject", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "RigidBodyObject" + }, + { + "id": "physics:RigidBodyWorld", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "RigidBodyWorld" + }, + { + "id": "physics:SPHFluidSettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SPHFluidSettings" + }, + { + "id": "physics:ShaderNodeParticleInfo", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ShaderNodeParticleInfo" + }, + { + "id": "physics:SoftBodyModifier", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SoftBodyModifier" + }, + { + "id": "physics:SoftBodySettings", + "task": "M15-01D", + "ownerFamily": "PHYSICS", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SoftBodySettings" + }, + { + "id": "region:ASSET_SHELF", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "ASSET_SHELF" + }, + { + "id": "region:ASSET_SHELF_HEADER", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "ASSET_SHELF_HEADER" + }, + { + "id": "region:CHANNELS", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "CHANNELS" + }, + { + "id": "region:EXECUTE", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "EXECUTE" + }, + { + "id": "region:FOOTER", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "FOOTER" + }, + { + "id": "region:HEADER", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "HEADER" + }, + { + "id": "region:HUD", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "HUD" + }, + { + "id": "region:NAVIGATION_BAR", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "NAVIGATION_BAR" + }, + { + "id": "region:PREVIEW", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PREVIEW" + }, + { + "id": "region:SCRUBBING", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SCRUBBING" + }, + { + "id": "region:TEMPORARY", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TEMPORARY" + }, + { + "id": "region:TOOLS", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TOOLS" + }, + { + "id": "region:TOOL_HEADER", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TOOL_HEADER" + }, + { + "id": "region:TOOL_PROPS", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TOOL_PROPS" + }, + { + "id": "region:UI", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "UI" + }, + { + "id": "region:WINDOW", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "WINDOW" + }, + { + "id": "region:XR", + "task": "M15-01E", + "ownerFamily": "REGION", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "XR" + }, + { + "id": "rna:Core:Action", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Action" + }, + { + "id": "rna:Core:Armature", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Armature" + }, + { + "id": "rna:Core:Brush", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Brush" + }, + { + "id": "rna:Core:Curve", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Curve" + }, + { + "id": "rna:Core:Curves", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Curves" + }, + { + "id": "rna:Core:GreasePencil", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "GreasePencil" + }, + { + "id": "rna:Core:ID", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "ID" + }, + { + "id": "rna:Core:Image", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Image" + }, + { + "id": "rna:Core:Key", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Key" + }, + { + "id": "rna:Core:Lattice", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Lattice" + }, + { + "id": "rna:Core:Mask", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Mask" + }, + { + "id": "rna:Core:MetaBall", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MetaBall" + }, + { + "id": "rna:Core:MovieClip", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MovieClip" + }, + { + "id": "rna:Core:Palette", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Palette" + }, + { + "id": "rna:Core:ParticleSettings", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "ParticleSettings" + }, + { + "id": "rna:Core:PointCloud", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "PointCloud" + }, + { + "id": "rna:Core:Sound", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Sound" + }, + { + "id": "rna:Core:Speaker", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Speaker" + }, + { + "id": "rna:Core:Text", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Text" + }, + { + "id": "rna:Core:Volume", + "task": "M15-01F", + "ownerFamily": "Core", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Volume" + }, + { + "id": "rna:Depsgraph:Depsgraph", + "task": "M15-01F", + "ownerFamily": "Depsgraph", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Depsgraph" + }, + { + "id": "rna:Depsgraph:DepsgraphObjectInstance", + "task": "M15-01F", + "ownerFamily": "Depsgraph", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "DepsgraphObjectInstance" + }, + { + "id": "rna:Depsgraph:DepsgraphUpdate", + "task": "M15-01F", + "ownerFamily": "Depsgraph", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "DepsgraphUpdate" + }, + { + "id": "rna:Main:BlendData", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendData" + }, + { + "id": "rna:Main:BlendDataActions", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataActions" + }, + { + "id": "rna:Main:BlendDataAnnotations", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataAnnotations" + }, + { + "id": "rna:Main:BlendDataArmatures", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataArmatures" + }, + { + "id": "rna:Main:BlendDataBrushes", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataBrushes" + }, + { + "id": "rna:Main:BlendDataCacheFiles", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataCacheFiles" + }, + { + "id": "rna:Main:BlendDataCameras", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataCameras" + }, + { + "id": "rna:Main:BlendDataCollections", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataCollections" + }, + { + "id": "rna:Main:BlendDataCurves", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataCurves" + }, + { + "id": "rna:Main:BlendDataFonts", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataFonts" + }, + { + "id": "rna:Main:BlendDataGreasePencilsV3", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataGreasePencilsV3" + }, + { + "id": "rna:Main:BlendDataHairCurves", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataHairCurves" + }, + { + "id": "rna:Main:BlendDataImages", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataImages" + }, + { + "id": "rna:Main:BlendDataLattices", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataLattices" + }, + { + "id": "rna:Main:BlendDataLibraries", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataLibraries" + }, + { + "id": "rna:Main:BlendDataLights", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataLights" + }, + { + "id": "rna:Main:BlendDataLineStyles", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataLineStyles" + }, + { + "id": "rna:Main:BlendDataMasks", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataMasks" + }, + { + "id": "rna:Main:BlendDataMaterials", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataMaterials" + }, + { + "id": "rna:Main:BlendDataMeshes", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataMeshes" + }, + { + "id": "rna:Main:BlendDataMetaBalls", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataMetaBalls" + }, + { + "id": "rna:Main:BlendDataMovieClips", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataMovieClips" + }, + { + "id": "rna:Main:BlendDataNodeTrees", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataNodeTrees" + }, + { + "id": "rna:Main:BlendDataObjects", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataObjects" + }, + { + "id": "rna:Main:BlendDataPaintCurves", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataPaintCurves" + }, + { + "id": "rna:Main:BlendDataPalettes", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataPalettes" + }, + { + "id": "rna:Main:BlendDataParticles", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataParticles" + }, + { + "id": "rna:Main:BlendDataPointClouds", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataPointClouds" + }, + { + "id": "rna:Main:BlendDataProbes", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataProbes" + }, + { + "id": "rna:Main:BlendDataScenes", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataScenes" + }, + { + "id": "rna:Main:BlendDataScreens", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataScreens" + }, + { + "id": "rna:Main:BlendDataSounds", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataSounds" + }, + { + "id": "rna:Main:BlendDataSpeakers", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataSpeakers" + }, + { + "id": "rna:Main:BlendDataTexts", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataTexts" + }, + { + "id": "rna:Main:BlendDataTextures", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataTextures" + }, + { + "id": "rna:Main:BlendDataVolumes", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataVolumes" + }, + { + "id": "rna:Main:BlendDataWindowManagers", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataWindowManagers" + }, + { + "id": "rna:Main:BlendDataWorkSpaces", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataWorkSpaces" + }, + { + "id": "rna:Main:BlendDataWorlds", + "task": "M15-01F", + "ownerFamily": "Main", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BlendDataWorlds" + }, + { + "id": "rna:Mesh:Attribute", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Attribute" + }, + { + "id": "rna:Mesh:AttributeGroupMesh", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "AttributeGroupMesh" + }, + { + "id": "rna:Mesh:BoolAttribute", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "BoolAttribute" + }, + { + "id": "rna:Mesh:ByteColorAttribute", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "ByteColorAttribute" + }, + { + "id": "rna:Mesh:FloatAttribute", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "FloatAttribute" + }, + { + "id": "rna:Mesh:IntAttribute", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "IntAttribute" + }, + { + "id": "rna:Mesh:Mesh", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Mesh" + }, + { + "id": "rna:Mesh:MeshAutomaskingSettings", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshAutomaskingSettings" + }, + { + "id": "rna:Mesh:MeshCacheModifier", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshCacheModifier" + }, + { + "id": "rna:Mesh:MeshDeformModifier", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshDeformModifier" + }, + { + "id": "rna:Mesh:MeshEdge", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshEdge" + }, + { + "id": "rna:Mesh:MeshEdges", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshEdges" + }, + { + "id": "rna:Mesh:MeshLoop", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshLoop" + }, + { + "id": "rna:Mesh:MeshLoopColor", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshLoopColor" + }, + { + "id": "rna:Mesh:MeshLoopColorLayer", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshLoopColorLayer" + }, + { + "id": "rna:Mesh:MeshLoopTriangle", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshLoopTriangle" + }, + { + "id": "rna:Mesh:MeshLoopTriangles", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshLoopTriangles" + }, + { + "id": "rna:Mesh:MeshLoops", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshLoops" + }, + { + "id": "rna:Mesh:MeshNormalValue", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshNormalValue" + }, + { + "id": "rna:Mesh:MeshPolygon", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshPolygon" + }, + { + "id": "rna:Mesh:MeshPolygons", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshPolygons" + }, + { + "id": "rna:Mesh:MeshSequenceCacheModifier", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshSequenceCacheModifier" + }, + { + "id": "rna:Mesh:MeshSkinVertex", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshSkinVertex" + }, + { + "id": "rna:Mesh:MeshSkinVertexLayer", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshSkinVertexLayer" + }, + { + "id": "rna:Mesh:MeshStatVis", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshStatVis" + }, + { + "id": "rna:Mesh:MeshToVolumeModifier", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshToVolumeModifier" + }, + { + "id": "rna:Mesh:MeshUVLoop", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshUVLoop" + }, + { + "id": "rna:Mesh:MeshUVLoopLayer", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshUVLoopLayer" + }, + { + "id": "rna:Mesh:MeshVertex", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshVertex" + }, + { + "id": "rna:Mesh:MeshVertices", + "task": "M15-01F", + "ownerFamily": "Mesh", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "MeshVertices" + }, + { + "id": "rna:Scene:Camera", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Camera" + }, + { + "id": "rna:Scene:Collection", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Collection" + }, + { + "id": "rna:Scene:Constraint", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Constraint" + }, + { + "id": "rna:Scene:LayerCollection", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "LayerCollection" + }, + { + "id": "rna:Scene:Light", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Light" + }, + { + "id": "rna:Scene:Material", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Material" + }, + { + "id": "rna:Scene:Modifier", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Modifier" + }, + { + "id": "rna:Scene:NodeTree", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "NodeTree" + }, + { + "id": "rna:Scene:Object", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Object" + }, + { + "id": "rna:Scene:RenderSettings", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "RenderSettings" + }, + { + "id": "rna:Scene:Scene", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Scene" + }, + { + "id": "rna:Scene:Screen", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Screen" + }, + { + "id": "rna:Scene:ViewLayer", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "ViewLayer" + }, + { + "id": "rna:Scene:Window", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "Window" + }, + { + "id": "rna:Scene:WindowManager", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "WindowManager" + }, + { + "id": "rna:Scene:World", + "task": "M15-01F", + "ownerFamily": "Scene", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-core-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01F/manifest.json" + ], + "source": "tests/golden/M15-01F/blender-core-inventory.json", + "identifier": "World" + }, + { + "id": "space-class:SpaceClipEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceClipEditor" + }, + { + "id": "space-class:SpaceConsole", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceConsole" + }, + { + "id": "space-class:SpaceDopeSheetEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceDopeSheetEditor" + }, + { + "id": "space-class:SpaceFileBrowser", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceFileBrowser" + }, + { + "id": "space-class:SpaceGraphEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceGraphEditor" + }, + { + "id": "space-class:SpaceImageEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceImageEditor" + }, + { + "id": "space-class:SpaceInfo", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceInfo" + }, + { + "id": "space-class:SpaceNLA", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceNLA" + }, + { + "id": "space-class:SpaceNodeEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceNodeEditor" + }, + { + "id": "space-class:SpaceOutliner", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceOutliner" + }, + { + "id": "space-class:SpacePreferences", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpacePreferences" + }, + { + "id": "space-class:SpaceProperties", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceProperties" + }, + { + "id": "space-class:SpaceSequenceEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceSequenceEditor" + }, + { + "id": "space-class:SpaceSpreadsheet", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceSpreadsheet" + }, + { + "id": "space-class:SpaceTextEditor", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceTextEditor" + }, + { + "id": "space-class:SpaceView3D", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SpaceView3D" + }, + { + "id": "space:CLIP_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "CLIP_EDITOR" + }, + { + "id": "space:CONSOLE", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "CONSOLE" + }, + { + "id": "space:DOPESHEET_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "DOPESHEET_EDITOR" + }, + { + "id": "space:EMPTY", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "EMPTY" + }, + { + "id": "space:FILE_BROWSER", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "FILE_BROWSER" + }, + { + "id": "space:GRAPH_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "GRAPH_EDITOR" + }, + { + "id": "space:IMAGE_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "IMAGE_EDITOR" + }, + { + "id": "space:INFO", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "INFO" + }, + { + "id": "space:NLA_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "NLA_EDITOR" + }, + { + "id": "space:NODE_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "NODE_EDITOR" + }, + { + "id": "space:OUTLINER", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "OUTLINER" + }, + { + "id": "space:PREFERENCES", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PREFERENCES" + }, + { + "id": "space:PROPERTIES", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PROPERTIES" + }, + { + "id": "space:SEQUENCE_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SEQUENCE_EDITOR" + }, + { + "id": "space:SPREADSHEET", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SPREADSHEET" + }, + { + "id": "space:STATUSBAR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "STATUSBAR" + }, + { + "id": "space:TEXT_EDITOR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TEXT_EDITOR" + }, + { + "id": "space:TOPBAR", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TOPBAR" + }, + { + "id": "space:VIEW_3D", + "task": "M15-01E", + "ownerFamily": "SPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "VIEW_3D" + }, + { + "id": "strip:ADD", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ADD" + }, + { + "id": "strip:ADJUSTMENT", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ADJUSTMENT" + }, + { + "id": "strip:ALPHA_OVER", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ALPHA_OVER" + }, + { + "id": "strip:ALPHA_UNDER", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "ALPHA_UNDER" + }, + { + "id": "strip:COLOR", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "COLOR" + }, + { + "id": "strip:COLORMIX", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "COLORMIX" + }, + { + "id": "strip:COMPOSITOR", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "COMPOSITOR" + }, + { + "id": "strip:CROSS", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "CROSS" + }, + { + "id": "strip:GAMMA_CROSS", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GAMMA_CROSS" + }, + { + "id": "strip:GAUSSIAN_BLUR", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GAUSSIAN_BLUR" + }, + { + "id": "strip:GLOW", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "GLOW" + }, + { + "id": "strip:IMAGE", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "IMAGE" + }, + { + "id": "strip:MASK", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "MASK" + }, + { + "id": "strip:META", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "META" + }, + { + "id": "strip:MOVIE", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "MOVIE" + }, + { + "id": "strip:MOVIECLIP", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "MOVIECLIP" + }, + { + "id": "strip:MULTICAM", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "MULTICAM" + }, + { + "id": "strip:MULTIPLY", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "MULTIPLY" + }, + { + "id": "strip:SCENE", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SCENE" + }, + { + "id": "strip:SOUND", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SOUND" + }, + { + "id": "strip:SPEED", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SPEED" + }, + { + "id": "strip:SUBTRACT", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "SUBTRACT" + }, + { + "id": "strip:TEXT", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "TEXT" + }, + { + "id": "strip:WIPE", + "task": "M15-01D", + "ownerFamily": "SEQUENCER", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-format-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01D/manifest.json" + ], + "source": "tests/golden/M15-01D/blender-format-inventory.json", + "identifier": "WIPE" + }, + { + "id": "workspace:EDIT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "EDIT" + }, + { + "id": "workspace:EDIT_GPENCIL", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "EDIT_GPENCIL" + }, + { + "id": "workspace:OBJECT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "OBJECT" + }, + { + "id": "workspace:PAINT_GREASE_PENCIL", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PAINT_GREASE_PENCIL" + }, + { + "id": "workspace:PARTICLE_EDIT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "PARTICLE_EDIT" + }, + { + "id": "workspace:POSE", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "POSE" + }, + { + "id": "workspace:SCULPT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SCULPT" + }, + { + "id": "workspace:SCULPT_GREASE_PENCIL", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "SCULPT_GREASE_PENCIL" + }, + { + "id": "workspace:TEXTURE_PAINT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "TEXTURE_PAINT" + }, + { + "id": "workspace:VERTEX_GREASE_PENCIL", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "VERTEX_GREASE_PENCIL" + }, + { + "id": "workspace:VERTEX_PAINT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "VERTEX_PAINT" + }, + { + "id": "workspace:WEIGHT_GREASE_PENCIL", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "WEIGHT_GREASE_PENCIL" + }, + { + "id": "workspace:WEIGHT_PAINT", + "task": "M15-01E", + "ownerFamily": "WORKSPACE", + "implementationClass": "INVENTORY_BASELINE", + "coverage": "INVENTORIED_ONLY", + "tests": [ + "tools/web/check-blender-editor-inventory.mjs" + ], + "evidence": [ + "tests/golden/M15-01E/manifest.json" + ], + "source": "tests/golden/M15-01E/blender-editor-inventory.json", + "identifier": "WEIGHT_PAINT" + } + ], + "nextTask": "M15-02B" +} diff --git a/tests/golden/M15-02A/manifest.json b/tests/golden/M15-02A/manifest.json new file mode 100644 index 00000000..359bb504 --- /dev/null +++ b/tests/golden/M15-02A/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-02A", + "parentTask": "M15-01F", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_PARITY", + "operation": "BLENDER_PARITY_MAPPING", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-01F/manifest.json", + "sha256": "70eefcdb97a839022a3c39ba152796389578f543562185ae9e13b2aa0c452b29" + }, + "generator": { + "path": "tools/web/generate-blender-parity-map.mjs", + "sha256": "2430a0eaa408ebba2fe25a1e873989784f8c50fe6dccc6636a07a76e986eb4ca" + }, + "checker": { + "path": "tools/web/check-blender-parity-map.mjs", + "sha256": "b5f33d8535c0d72c53979f3a222b0004a48d265706adf5c1f9cad6907c80d092" + }, + "map": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "report": { + "path": "tests/golden/M15-02A/parity-map-check-report.json", + "sha256": "650a1c37e459bbaf19f20fa7f2be57bcb2ea8dd6ed472726a9ff399d17109132" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-02B" +} diff --git a/tests/golden/M15-02A/parity-map-check-report.json b/tests/golden/M15-02A/parity-map-check-report.json new file mode 100644 index 00000000..6e48748a --- /dev/null +++ b/tests/golden/M15-02A/parity-map-check-report.json @@ -0,0 +1,38 @@ +{ + "schemaVersion": 1, + "task": "M15-02A", + "operation": "BLENDER_PARITY_MAPPING_CHECK", + "mapped": 6900, + "byTask": { + "M15-01A": 29, + "M15-01B": 2486, + "M15-01C": 563, + "M15-01D": 122, + "M15-01E": 3592, + "M15-01F": 108 + }, + "ownerFamilies": [ + "COMPOSITOR_NODE", + "CONSTRAINT", + "Core", + "Depsgraph", + "EDITOR", + "GEOMETRY_NODE", + "IMPORT_EXPORT", + "KEYMAP", + "MODIFIER", + "Main", + "Mesh", + "OPERATOR", + "PHYSICS", + "REGION", + "RNA_DATABLOCK", + "SEQUENCER", + "SHADER_NODE", + "SPACE", + "Scene", + "WORKSPACE" + ], + "mapSha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c", + "nextTask": "M15-02B" +} diff --git a/tests/golden/M15-02B/blender-gap-audit.json b/tests/golden/M15-02B/blender-gap-audit.json new file mode 100644 index 00000000..e63fa597 --- /dev/null +++ b/tests/golden/M15-02B/blender-gap-audit.json @@ -0,0 +1,6932 @@ +{ + "schemaVersion": 1, + "task": "M15-02B", + "operation": "BLENDER_PARITY_GAP_AUDIT", + "source": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "summary": { + "inventoried": 6900, + "unmapped": 0, + "duplicate": 0, + "summaryOnly": 6900, + "proxyOnly": 0, + "routeOnly": 0, + "gapCount": 6900 + }, + "gaps": { + "unmapped": [], + "duplicateIds": [], + "summaryOnly": [ + "area:CLIP_EDITOR", + "area:CONSOLE", + "area:DOPESHEET_EDITOR", + "area:EMPTY", + "area:FILE_BROWSER", + "area:GRAPH_EDITOR", + "area:IMAGE_EDITOR", + "area:INFO", + "area:NLA_EDITOR", + "area:NODE_EDITOR", + "area:OUTLINER", + "area:PREFERENCES", + "area:PROPERTIES", + "area:SEQUENCE_EDITOR", + "area:SPREADSHEET", + "area:STATUSBAR", + "area:TEXT_EDITOR", + "area:TOPBAR", + "area:VIEW_3D", + "constraint:ACTION", + "constraint:ARMATURE", + "constraint:CAMERA_SOLVER", + "constraint:CHILD_OF", + "constraint:CLAMP_TO", + "constraint:COPY_LOCATION", + "constraint:COPY_ROTATION", + "constraint:COPY_SCALE", + "constraint:COPY_TRANSFORMS", + "constraint:DAMPED_TRACK", + "constraint:FLOOR", + "constraint:FOLLOW_PATH", + "constraint:FOLLOW_TRACK", + "constraint:GEOMETRY_ATTRIBUTE", + "constraint:IK", + "constraint:LIMIT_DISTANCE", + "constraint:LIMIT_LOCATION", + "constraint:LIMIT_ROTATION", + "constraint:LIMIT_SCALE", + "constraint:LOCKED_TRACK", + "constraint:MAINTAIN_VOLUME", + "constraint:OBJECT_SOLVER", + "constraint:PIVOT", + "constraint:SHRINKWRAP", + "constraint:SPLINE_IK", + "constraint:STRETCH_TO", + "constraint:TRACK_TO", + "constraint:TRANSFORM", + "constraint:TRANSFORM_CACHE", + "datablock:Action", + "datablock:Armature", + "datablock:Brush", + "datablock:Camera", + "datablock:Collection", + "datablock:Curve", + "datablock:Curves", + "datablock:FreestyleLineStyle", + "datablock:GreasePencil", + "datablock:Lattice", + "datablock:Library", + "datablock:Light", + "datablock:Material", + "datablock:Mesh", + "datablock:MetaBall", + "datablock:NodeTree", + "datablock:Object", + "datablock:ParticleSettings", + "datablock:PointCloud", + "datablock:Scene", + "datablock:Screen", + "datablock:Sound", + "datablock:Speaker", + "datablock:Text", + "datablock:Texture", + "datablock:Volume", + "datablock:WindowManager", + "datablock:WorkSpace", + "datablock:World", + "io:anim.keying_set_export", + "io:collection.export_all", + "io:collection.exporter_add", + "io:collection.exporter_export", + "io:collection.exporter_move", + "io:collection.exporter_remove", + "io:collection.importer_add", + "io:collection.importer_remove", + "io:export_anim.bvh", + "io:export_scene.fbx", + "io:export_scene.gltf", + "io:image.import_as_mesh_planes", + "io:import_anim.bvh", + "io:import_curve.svg", + "io:import_scene.fbx", + "io:import_scene.gltf", + "io:node.add_import_node", + "io:object.volume_import", + "io:preferences.keyconfig_export", + "io:preferences.keyconfig_import", + "io:sequencer.export_subtitles", + "io:uv.export_layout", + "io:wm.collection_export_all", + "io:wm.drop_import_file", + "io:wm.fbx_import", + "io:wm.grease_pencil_export_svg", + "io:wm.grease_pencil_import_svg", + "io:wm.obj_export", + "io:wm.obj_import", + "io:wm.ply_export", + "io:wm.ply_import", + "io:wm.stl_export", + "io:wm.stl_import", + "keymap-item:3D View Generic:VIEW_3D:WINDOW:0", + "keymap-item:3D View Generic:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Bend:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Breakdowner:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Move:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Push:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Relax:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Rotate:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Scale:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:9", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:9", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:9", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:9", + "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Transform:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:8", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:0", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:1", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:2", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:3", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:4", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:5", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:6", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:7", + "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:8", + "keymap-item:3D View:VIEW_3D:WINDOW:0", + "keymap-item:3D View:VIEW_3D:WINDOW:1", + "keymap-item:3D View:VIEW_3D:WINDOW:10", + "keymap-item:3D View:VIEW_3D:WINDOW:100", + "keymap-item:3D View:VIEW_3D:WINDOW:101", + "keymap-item:3D View:VIEW_3D:WINDOW:102", + "keymap-item:3D View:VIEW_3D:WINDOW:103", + "keymap-item:3D View:VIEW_3D:WINDOW:104", + "keymap-item:3D View:VIEW_3D:WINDOW:105", + "keymap-item:3D View:VIEW_3D:WINDOW:106", + "keymap-item:3D View:VIEW_3D:WINDOW:107", + "keymap-item:3D View:VIEW_3D:WINDOW:108", + "keymap-item:3D View:VIEW_3D:WINDOW:109", + "keymap-item:3D View:VIEW_3D:WINDOW:11", + "keymap-item:3D View:VIEW_3D:WINDOW:110", + "keymap-item:3D View:VIEW_3D:WINDOW:111", + "keymap-item:3D View:VIEW_3D:WINDOW:112", + "keymap-item:3D View:VIEW_3D:WINDOW:113", + "keymap-item:3D View:VIEW_3D:WINDOW:114", + "keymap-item:3D View:VIEW_3D:WINDOW:115", + "keymap-item:3D View:VIEW_3D:WINDOW:12", + "keymap-item:3D View:VIEW_3D:WINDOW:13", + "keymap-item:3D View:VIEW_3D:WINDOW:14", + "keymap-item:3D View:VIEW_3D:WINDOW:15", + "keymap-item:3D View:VIEW_3D:WINDOW:16", + "keymap-item:3D View:VIEW_3D:WINDOW:17", + "keymap-item:3D View:VIEW_3D:WINDOW:18", + "keymap-item:3D View:VIEW_3D:WINDOW:19", + "keymap-item:3D View:VIEW_3D:WINDOW:2", + "keymap-item:3D View:VIEW_3D:WINDOW:20", + "keymap-item:3D View:VIEW_3D:WINDOW:21", + "keymap-item:3D View:VIEW_3D:WINDOW:22", + "keymap-item:3D View:VIEW_3D:WINDOW:23", + "keymap-item:3D View:VIEW_3D:WINDOW:24", + "keymap-item:3D View:VIEW_3D:WINDOW:25", + "keymap-item:3D View:VIEW_3D:WINDOW:26", + "keymap-item:3D View:VIEW_3D:WINDOW:27", + "keymap-item:3D View:VIEW_3D:WINDOW:28", + "keymap-item:3D View:VIEW_3D:WINDOW:29", + "keymap-item:3D View:VIEW_3D:WINDOW:3", + "keymap-item:3D View:VIEW_3D:WINDOW:30", + "keymap-item:3D View:VIEW_3D:WINDOW:31", + "keymap-item:3D View:VIEW_3D:WINDOW:32", + "keymap-item:3D View:VIEW_3D:WINDOW:33", + "keymap-item:3D View:VIEW_3D:WINDOW:34", + "keymap-item:3D View:VIEW_3D:WINDOW:35", + "keymap-item:3D View:VIEW_3D:WINDOW:36", + "keymap-item:3D View:VIEW_3D:WINDOW:37", + "keymap-item:3D View:VIEW_3D:WINDOW:38", + "keymap-item:3D View:VIEW_3D:WINDOW:39", + "keymap-item:3D View:VIEW_3D:WINDOW:4", + "keymap-item:3D View:VIEW_3D:WINDOW:40", + "keymap-item:3D View:VIEW_3D:WINDOW:41", + "keymap-item:3D View:VIEW_3D:WINDOW:42", + "keymap-item:3D View:VIEW_3D:WINDOW:43", + "keymap-item:3D View:VIEW_3D:WINDOW:44", + "keymap-item:3D View:VIEW_3D:WINDOW:45", + "keymap-item:3D View:VIEW_3D:WINDOW:46", + "keymap-item:3D View:VIEW_3D:WINDOW:47", + "keymap-item:3D View:VIEW_3D:WINDOW:48", + "keymap-item:3D View:VIEW_3D:WINDOW:49", + "keymap-item:3D View:VIEW_3D:WINDOW:5", + "keymap-item:3D View:VIEW_3D:WINDOW:50", + "keymap-item:3D View:VIEW_3D:WINDOW:51", + "keymap-item:3D View:VIEW_3D:WINDOW:52", + "keymap-item:3D View:VIEW_3D:WINDOW:53", + "keymap-item:3D View:VIEW_3D:WINDOW:54", + "keymap-item:3D View:VIEW_3D:WINDOW:55", + "keymap-item:3D View:VIEW_3D:WINDOW:56", + "keymap-item:3D View:VIEW_3D:WINDOW:57", + "keymap-item:3D View:VIEW_3D:WINDOW:58", + "keymap-item:3D View:VIEW_3D:WINDOW:59", + "keymap-item:3D View:VIEW_3D:WINDOW:6", + "keymap-item:3D View:VIEW_3D:WINDOW:60", + "keymap-item:3D View:VIEW_3D:WINDOW:61", + "keymap-item:3D View:VIEW_3D:WINDOW:62", + "keymap-item:3D View:VIEW_3D:WINDOW:63", + "keymap-item:3D View:VIEW_3D:WINDOW:64", + "keymap-item:3D View:VIEW_3D:WINDOW:65", + "keymap-item:3D View:VIEW_3D:WINDOW:66", + "keymap-item:3D View:VIEW_3D:WINDOW:67", + "keymap-item:3D View:VIEW_3D:WINDOW:68", + "keymap-item:3D View:VIEW_3D:WINDOW:69", + "keymap-item:3D View:VIEW_3D:WINDOW:7", + "keymap-item:3D View:VIEW_3D:WINDOW:70", + "keymap-item:3D View:VIEW_3D:WINDOW:71", + "keymap-item:3D View:VIEW_3D:WINDOW:72", + "keymap-item:3D View:VIEW_3D:WINDOW:73", + "keymap-item:3D View:VIEW_3D:WINDOW:74", + "keymap-item:3D View:VIEW_3D:WINDOW:75", + "keymap-item:3D View:VIEW_3D:WINDOW:76", + "keymap-item:3D View:VIEW_3D:WINDOW:77", + "keymap-item:3D View:VIEW_3D:WINDOW:78", + "keymap-item:3D View:VIEW_3D:WINDOW:79", + "keymap-item:3D View:VIEW_3D:WINDOW:8", + "keymap-item:3D View:VIEW_3D:WINDOW:80", + "keymap-item:3D View:VIEW_3D:WINDOW:81", + "keymap-item:3D View:VIEW_3D:WINDOW:82", + "keymap-item:3D View:VIEW_3D:WINDOW:83", + "keymap-item:3D View:VIEW_3D:WINDOW:84", + "keymap-item:3D View:VIEW_3D:WINDOW:85", + "keymap-item:3D View:VIEW_3D:WINDOW:86", + "keymap-item:3D View:VIEW_3D:WINDOW:87", + "keymap-item:3D View:VIEW_3D:WINDOW:88", + "keymap-item:3D View:VIEW_3D:WINDOW:89", + "keymap-item:3D View:VIEW_3D:WINDOW:9", + "keymap-item:3D View:VIEW_3D:WINDOW:90", + "keymap-item:3D View:VIEW_3D:WINDOW:91", + "keymap-item:3D View:VIEW_3D:WINDOW:92", + "keymap-item:3D View:VIEW_3D:WINDOW:93", + "keymap-item:3D View:VIEW_3D:WINDOW:94", + "keymap-item:3D View:VIEW_3D:WINDOW:95", + "keymap-item:3D View:VIEW_3D:WINDOW:96", + "keymap-item:3D View:VIEW_3D:WINDOW:97", + "keymap-item:3D View:VIEW_3D:WINDOW:98", + "keymap-item:3D View:VIEW_3D:WINDOW:99", + "keymap-item:Animation Channels:EMPTY:WINDOW:0", + "keymap-item:Animation Channels:EMPTY:WINDOW:1", + "keymap-item:Animation Channels:EMPTY:WINDOW:10", + "keymap-item:Animation Channels:EMPTY:WINDOW:11", + "keymap-item:Animation Channels:EMPTY:WINDOW:12", + "keymap-item:Animation Channels:EMPTY:WINDOW:13", + "keymap-item:Animation Channels:EMPTY:WINDOW:14", + "keymap-item:Animation Channels:EMPTY:WINDOW:15", + "keymap-item:Animation Channels:EMPTY:WINDOW:16", + "keymap-item:Animation Channels:EMPTY:WINDOW:17", + "keymap-item:Animation Channels:EMPTY:WINDOW:18", + "keymap-item:Animation Channels:EMPTY:WINDOW:19", + "keymap-item:Animation Channels:EMPTY:WINDOW:2", + "keymap-item:Animation Channels:EMPTY:WINDOW:20", + "keymap-item:Animation Channels:EMPTY:WINDOW:21", + "keymap-item:Animation Channels:EMPTY:WINDOW:22", + "keymap-item:Animation Channels:EMPTY:WINDOW:23", + "keymap-item:Animation Channels:EMPTY:WINDOW:24", + "keymap-item:Animation Channels:EMPTY:WINDOW:25", + "keymap-item:Animation Channels:EMPTY:WINDOW:26", + "keymap-item:Animation Channels:EMPTY:WINDOW:27", + "keymap-item:Animation Channels:EMPTY:WINDOW:28", + "keymap-item:Animation Channels:EMPTY:WINDOW:29", + "keymap-item:Animation Channels:EMPTY:WINDOW:3", + "keymap-item:Animation Channels:EMPTY:WINDOW:30", + "keymap-item:Animation Channels:EMPTY:WINDOW:31", + "keymap-item:Animation Channels:EMPTY:WINDOW:32", + "keymap-item:Animation Channels:EMPTY:WINDOW:33", + "keymap-item:Animation Channels:EMPTY:WINDOW:34", + "keymap-item:Animation Channels:EMPTY:WINDOW:35", + "keymap-item:Animation Channels:EMPTY:WINDOW:36", + "keymap-item:Animation Channels:EMPTY:WINDOW:4", + "keymap-item:Animation Channels:EMPTY:WINDOW:5", + "keymap-item:Animation Channels:EMPTY:WINDOW:6", + "keymap-item:Animation Channels:EMPTY:WINDOW:7", + "keymap-item:Animation Channels:EMPTY:WINDOW:8", + "keymap-item:Animation Channels:EMPTY:WINDOW:9", + "keymap-item:Animation:EMPTY:WINDOW:0", + "keymap-item:Animation:EMPTY:WINDOW:1", + "keymap-item:Animation:EMPTY:WINDOW:2", + "keymap-item:Animation:EMPTY:WINDOW:3", + "keymap-item:Animation:EMPTY:WINDOW:4", + "keymap-item:Armature:EMPTY:WINDOW:0", + "keymap-item:Armature:EMPTY:WINDOW:1", + "keymap-item:Armature:EMPTY:WINDOW:10", + "keymap-item:Armature:EMPTY:WINDOW:11", + "keymap-item:Armature:EMPTY:WINDOW:12", + "keymap-item:Armature:EMPTY:WINDOW:13", + "keymap-item:Armature:EMPTY:WINDOW:14", + "keymap-item:Armature:EMPTY:WINDOW:15", + "keymap-item:Armature:EMPTY:WINDOW:16", + "keymap-item:Armature:EMPTY:WINDOW:17", + "keymap-item:Armature:EMPTY:WINDOW:18", + "keymap-item:Armature:EMPTY:WINDOW:19", + "keymap-item:Armature:EMPTY:WINDOW:2", + "keymap-item:Armature:EMPTY:WINDOW:20", + "keymap-item:Armature:EMPTY:WINDOW:21", + "keymap-item:Armature:EMPTY:WINDOW:22", + "keymap-item:Armature:EMPTY:WINDOW:23", + "keymap-item:Armature:EMPTY:WINDOW:24", + "keymap-item:Armature:EMPTY:WINDOW:25", + "keymap-item:Armature:EMPTY:WINDOW:26", + "keymap-item:Armature:EMPTY:WINDOW:27", + "keymap-item:Armature:EMPTY:WINDOW:28", + "keymap-item:Armature:EMPTY:WINDOW:29", + "keymap-item:Armature:EMPTY:WINDOW:3", + "keymap-item:Armature:EMPTY:WINDOW:30", + "keymap-item:Armature:EMPTY:WINDOW:31", + "keymap-item:Armature:EMPTY:WINDOW:32", + "keymap-item:Armature:EMPTY:WINDOW:33", + "keymap-item:Armature:EMPTY:WINDOW:34", + "keymap-item:Armature:EMPTY:WINDOW:35", + "keymap-item:Armature:EMPTY:WINDOW:36", + "keymap-item:Armature:EMPTY:WINDOW:37", + "keymap-item:Armature:EMPTY:WINDOW:38", + "keymap-item:Armature:EMPTY:WINDOW:39", + "keymap-item:Armature:EMPTY:WINDOW:4", + "keymap-item:Armature:EMPTY:WINDOW:40", + "keymap-item:Armature:EMPTY:WINDOW:41", + "keymap-item:Armature:EMPTY:WINDOW:42", + "keymap-item:Armature:EMPTY:WINDOW:43", + "keymap-item:Armature:EMPTY:WINDOW:44", + "keymap-item:Armature:EMPTY:WINDOW:45", + "keymap-item:Armature:EMPTY:WINDOW:46", + "keymap-item:Armature:EMPTY:WINDOW:47", + "keymap-item:Armature:EMPTY:WINDOW:48", + "keymap-item:Armature:EMPTY:WINDOW:49", + "keymap-item:Armature:EMPTY:WINDOW:5", + "keymap-item:Armature:EMPTY:WINDOW:50", + "keymap-item:Armature:EMPTY:WINDOW:51", + "keymap-item:Armature:EMPTY:WINDOW:6", + "keymap-item:Armature:EMPTY:WINDOW:7", + "keymap-item:Armature:EMPTY:WINDOW:8", + "keymap-item:Armature:EMPTY:WINDOW:9", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:0", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:1", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:10", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:11", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:12", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:13", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:14", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:15", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:16", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:17", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:18", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:19", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:2", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:20", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:21", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:22", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:23", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:24", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:25", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:26", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:27", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:28", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:29", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:3", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:4", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:5", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:6", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:7", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:8", + "keymap-item:Bevel Modal Map:EMPTY:WINDOW:9", + "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:0", + "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:1", + "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:2", + "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:3", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:0", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:1", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:10", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:11", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:12", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:13", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:14", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:15", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:16", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:17", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:18", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:19", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:2", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:20", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:21", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:22", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:23", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:24", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:25", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:26", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:27", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:28", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:29", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:3", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:30", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:31", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:32", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:33", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:34", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:35", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:36", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:37", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:38", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:39", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:4", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:40", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:41", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:42", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:43", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:44", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:45", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:46", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:47", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:48", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:49", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:5", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:50", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:51", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:52", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:53", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:54", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:55", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:56", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:57", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:58", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:59", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:6", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:60", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:61", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:62", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:63", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:64", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:65", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:66", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:67", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:68", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:69", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:7", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:70", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:71", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:72", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:73", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:74", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:75", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:8", + "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:9", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:0", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:1", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:10", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:11", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:12", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:13", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:14", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:15", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:16", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:17", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:18", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:19", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:2", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:20", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:21", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:22", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:23", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:3", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:4", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:5", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:6", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:7", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:8", + "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:9", + "keymap-item:Clip Time Scrub:CLIP_EDITOR:PREVIEW:0", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:0", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:1", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:10", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:11", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:12", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:13", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:2", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:3", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:4", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:5", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:6", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:7", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:8", + "keymap-item:Clip:CLIP_EDITOR:WINDOW:9", + "keymap-item:Console:CONSOLE:WINDOW:0", + "keymap-item:Console:CONSOLE:WINDOW:1", + "keymap-item:Console:CONSOLE:WINDOW:10", + "keymap-item:Console:CONSOLE:WINDOW:11", + "keymap-item:Console:CONSOLE:WINDOW:12", + "keymap-item:Console:CONSOLE:WINDOW:13", + "keymap-item:Console:CONSOLE:WINDOW:14", + "keymap-item:Console:CONSOLE:WINDOW:15", + "keymap-item:Console:CONSOLE:WINDOW:16", + "keymap-item:Console:CONSOLE:WINDOW:17", + "keymap-item:Console:CONSOLE:WINDOW:18", + "keymap-item:Console:CONSOLE:WINDOW:19", + "keymap-item:Console:CONSOLE:WINDOW:2", + "keymap-item:Console:CONSOLE:WINDOW:20", + "keymap-item:Console:CONSOLE:WINDOW:21", + "keymap-item:Console:CONSOLE:WINDOW:22", + "keymap-item:Console:CONSOLE:WINDOW:23", + "keymap-item:Console:CONSOLE:WINDOW:24", + "keymap-item:Console:CONSOLE:WINDOW:25", + "keymap-item:Console:CONSOLE:WINDOW:26", + "keymap-item:Console:CONSOLE:WINDOW:27", + "keymap-item:Console:CONSOLE:WINDOW:28", + "keymap-item:Console:CONSOLE:WINDOW:29", + "keymap-item:Console:CONSOLE:WINDOW:3", + "keymap-item:Console:CONSOLE:WINDOW:30", + "keymap-item:Console:CONSOLE:WINDOW:31", + "keymap-item:Console:CONSOLE:WINDOW:32", + "keymap-item:Console:CONSOLE:WINDOW:33", + "keymap-item:Console:CONSOLE:WINDOW:34", + "keymap-item:Console:CONSOLE:WINDOW:35", + "keymap-item:Console:CONSOLE:WINDOW:36", + "keymap-item:Console:CONSOLE:WINDOW:37", + "keymap-item:Console:CONSOLE:WINDOW:38", + "keymap-item:Console:CONSOLE:WINDOW:39", + "keymap-item:Console:CONSOLE:WINDOW:4", + "keymap-item:Console:CONSOLE:WINDOW:5", + "keymap-item:Console:CONSOLE:WINDOW:6", + "keymap-item:Console:CONSOLE:WINDOW:7", + "keymap-item:Console:CONSOLE:WINDOW:8", + "keymap-item:Console:CONSOLE:WINDOW:9", + "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:0", + "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:1", + "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:2", + "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:3", + "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:4", + "keymap-item:Curve:EMPTY:WINDOW:0", + "keymap-item:Curve:EMPTY:WINDOW:1", + "keymap-item:Curve:EMPTY:WINDOW:10", + "keymap-item:Curve:EMPTY:WINDOW:11", + "keymap-item:Curve:EMPTY:WINDOW:12", + "keymap-item:Curve:EMPTY:WINDOW:13", + "keymap-item:Curve:EMPTY:WINDOW:14", + "keymap-item:Curve:EMPTY:WINDOW:15", + "keymap-item:Curve:EMPTY:WINDOW:16", + "keymap-item:Curve:EMPTY:WINDOW:17", + "keymap-item:Curve:EMPTY:WINDOW:18", + "keymap-item:Curve:EMPTY:WINDOW:19", + "keymap-item:Curve:EMPTY:WINDOW:2", + "keymap-item:Curve:EMPTY:WINDOW:20", + "keymap-item:Curve:EMPTY:WINDOW:21", + "keymap-item:Curve:EMPTY:WINDOW:22", + "keymap-item:Curve:EMPTY:WINDOW:23", + "keymap-item:Curve:EMPTY:WINDOW:24", + "keymap-item:Curve:EMPTY:WINDOW:25", + "keymap-item:Curve:EMPTY:WINDOW:26", + "keymap-item:Curve:EMPTY:WINDOW:27", + "keymap-item:Curve:EMPTY:WINDOW:28", + "keymap-item:Curve:EMPTY:WINDOW:29", + "keymap-item:Curve:EMPTY:WINDOW:3", + "keymap-item:Curve:EMPTY:WINDOW:30", + "keymap-item:Curve:EMPTY:WINDOW:31", + "keymap-item:Curve:EMPTY:WINDOW:32", + "keymap-item:Curve:EMPTY:WINDOW:33", + "keymap-item:Curve:EMPTY:WINDOW:34", + "keymap-item:Curve:EMPTY:WINDOW:35", + "keymap-item:Curve:EMPTY:WINDOW:36", + "keymap-item:Curve:EMPTY:WINDOW:37", + "keymap-item:Curve:EMPTY:WINDOW:38", + "keymap-item:Curve:EMPTY:WINDOW:39", + "keymap-item:Curve:EMPTY:WINDOW:4", + "keymap-item:Curve:EMPTY:WINDOW:40", + "keymap-item:Curve:EMPTY:WINDOW:41", + "keymap-item:Curve:EMPTY:WINDOW:42", + "keymap-item:Curve:EMPTY:WINDOW:43", + "keymap-item:Curve:EMPTY:WINDOW:44", + "keymap-item:Curve:EMPTY:WINDOW:5", + "keymap-item:Curve:EMPTY:WINDOW:6", + "keymap-item:Curve:EMPTY:WINDOW:7", + "keymap-item:Curve:EMPTY:WINDOW:8", + "keymap-item:Curve:EMPTY:WINDOW:9", + "keymap-item:Curves:EMPTY:WINDOW:0", + "keymap-item:Curves:EMPTY:WINDOW:1", + "keymap-item:Curves:EMPTY:WINDOW:10", + "keymap-item:Curves:EMPTY:WINDOW:11", + "keymap-item:Curves:EMPTY:WINDOW:12", + "keymap-item:Curves:EMPTY:WINDOW:13", + "keymap-item:Curves:EMPTY:WINDOW:14", + "keymap-item:Curves:EMPTY:WINDOW:15", + "keymap-item:Curves:EMPTY:WINDOW:16", + "keymap-item:Curves:EMPTY:WINDOW:17", + "keymap-item:Curves:EMPTY:WINDOW:18", + "keymap-item:Curves:EMPTY:WINDOW:19", + "keymap-item:Curves:EMPTY:WINDOW:2", + "keymap-item:Curves:EMPTY:WINDOW:20", + "keymap-item:Curves:EMPTY:WINDOW:21", + "keymap-item:Curves:EMPTY:WINDOW:22", + "keymap-item:Curves:EMPTY:WINDOW:23", + "keymap-item:Curves:EMPTY:WINDOW:24", + "keymap-item:Curves:EMPTY:WINDOW:25", + "keymap-item:Curves:EMPTY:WINDOW:26", + "keymap-item:Curves:EMPTY:WINDOW:27", + "keymap-item:Curves:EMPTY:WINDOW:28", + "keymap-item:Curves:EMPTY:WINDOW:29", + "keymap-item:Curves:EMPTY:WINDOW:3", + "keymap-item:Curves:EMPTY:WINDOW:30", + "keymap-item:Curves:EMPTY:WINDOW:31", + "keymap-item:Curves:EMPTY:WINDOW:32", + "keymap-item:Curves:EMPTY:WINDOW:33", + "keymap-item:Curves:EMPTY:WINDOW:4", + "keymap-item:Curves:EMPTY:WINDOW:5", + "keymap-item:Curves:EMPTY:WINDOW:6", + "keymap-item:Curves:EMPTY:WINDOW:7", + "keymap-item:Curves:EMPTY:WINDOW:8", + "keymap-item:Curves:EMPTY:WINDOW:9", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:0", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:1", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:10", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:11", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:12", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:13", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:2", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:3", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:4", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:5", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:6", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:7", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:8", + "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:9", + "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:0", + "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:1", + "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:2", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:0", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:1", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:10", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:11", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:12", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:13", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:14", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:15", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:16", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:17", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:18", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:19", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:2", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:20", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:21", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:22", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:23", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:24", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:25", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:26", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:27", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:28", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:29", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:3", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:30", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:31", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:32", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:33", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:34", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:35", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:36", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:37", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:38", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:39", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:4", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:40", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:41", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:42", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:43", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:44", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:45", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:46", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:47", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:48", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:49", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:5", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:50", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:51", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:52", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:53", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:54", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:55", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:56", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:57", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:58", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:59", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:6", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:60", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:61", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:62", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:63", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:64", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:65", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:66", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:67", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:7", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:8", + "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:9", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:0", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:1", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:2", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:3", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:4", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:5", + "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:6", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:0", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:1", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:2", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:3", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:4", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:5", + "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:6", + "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:0", + "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:1", + "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:2", + "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:3", + "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:4", + "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:5", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:0", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:1", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:10", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:11", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:12", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:13", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:14", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:15", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:16", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:17", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:18", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:19", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:2", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:20", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:21", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:22", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:23", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:24", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:25", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:26", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:27", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:28", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:29", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:3", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:30", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:31", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:4", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:5", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:6", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:7", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:8", + "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:9", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:0", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:1", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:10", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:11", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:12", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:13", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:14", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:15", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:16", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:17", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:18", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:19", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:2", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:20", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:21", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:22", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:23", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:24", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:25", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:26", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:27", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:28", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:29", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:3", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:30", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:31", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:4", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:5", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:6", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:7", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:8", + "keymap-item:File Browser:FILE_BROWSER:WINDOW:9", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:0", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:1", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:10", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:11", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:12", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:13", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:2", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:3", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:4", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:5", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:6", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:7", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:8", + "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:9", + "keymap-item:Font:EMPTY:WINDOW:0", + "keymap-item:Font:EMPTY:WINDOW:1", + "keymap-item:Font:EMPTY:WINDOW:10", + "keymap-item:Font:EMPTY:WINDOW:11", + "keymap-item:Font:EMPTY:WINDOW:12", + "keymap-item:Font:EMPTY:WINDOW:13", + "keymap-item:Font:EMPTY:WINDOW:14", + "keymap-item:Font:EMPTY:WINDOW:15", + "keymap-item:Font:EMPTY:WINDOW:16", + "keymap-item:Font:EMPTY:WINDOW:17", + "keymap-item:Font:EMPTY:WINDOW:18", + "keymap-item:Font:EMPTY:WINDOW:19", + "keymap-item:Font:EMPTY:WINDOW:2", + "keymap-item:Font:EMPTY:WINDOW:20", + "keymap-item:Font:EMPTY:WINDOW:21", + "keymap-item:Font:EMPTY:WINDOW:22", + "keymap-item:Font:EMPTY:WINDOW:23", + "keymap-item:Font:EMPTY:WINDOW:24", + "keymap-item:Font:EMPTY:WINDOW:25", + "keymap-item:Font:EMPTY:WINDOW:26", + "keymap-item:Font:EMPTY:WINDOW:27", + "keymap-item:Font:EMPTY:WINDOW:28", + "keymap-item:Font:EMPTY:WINDOW:29", + "keymap-item:Font:EMPTY:WINDOW:3", + "keymap-item:Font:EMPTY:WINDOW:30", + "keymap-item:Font:EMPTY:WINDOW:31", + "keymap-item:Font:EMPTY:WINDOW:32", + "keymap-item:Font:EMPTY:WINDOW:33", + "keymap-item:Font:EMPTY:WINDOW:34", + "keymap-item:Font:EMPTY:WINDOW:35", + "keymap-item:Font:EMPTY:WINDOW:36", + "keymap-item:Font:EMPTY:WINDOW:37", + "keymap-item:Font:EMPTY:WINDOW:38", + "keymap-item:Font:EMPTY:WINDOW:39", + "keymap-item:Font:EMPTY:WINDOW:4", + "keymap-item:Font:EMPTY:WINDOW:40", + "keymap-item:Font:EMPTY:WINDOW:41", + "keymap-item:Font:EMPTY:WINDOW:42", + "keymap-item:Font:EMPTY:WINDOW:43", + "keymap-item:Font:EMPTY:WINDOW:44", + "keymap-item:Font:EMPTY:WINDOW:45", + "keymap-item:Font:EMPTY:WINDOW:46", + "keymap-item:Font:EMPTY:WINDOW:47", + "keymap-item:Font:EMPTY:WINDOW:48", + "keymap-item:Font:EMPTY:WINDOW:5", + "keymap-item:Font:EMPTY:WINDOW:6", + "keymap-item:Font:EMPTY:WINDOW:7", + "keymap-item:Font:EMPTY:WINDOW:8", + "keymap-item:Font:EMPTY:WINDOW:9", + "keymap-item:Frames:EMPTY:WINDOW:0", + "keymap-item:Frames:EMPTY:WINDOW:1", + "keymap-item:Frames:EMPTY:WINDOW:10", + "keymap-item:Frames:EMPTY:WINDOW:11", + "keymap-item:Frames:EMPTY:WINDOW:12", + "keymap-item:Frames:EMPTY:WINDOW:13", + "keymap-item:Frames:EMPTY:WINDOW:14", + "keymap-item:Frames:EMPTY:WINDOW:15", + "keymap-item:Frames:EMPTY:WINDOW:16", + "keymap-item:Frames:EMPTY:WINDOW:2", + "keymap-item:Frames:EMPTY:WINDOW:3", + "keymap-item:Frames:EMPTY:WINDOW:4", + "keymap-item:Frames:EMPTY:WINDOW:5", + "keymap-item:Frames:EMPTY:WINDOW:6", + "keymap-item:Frames:EMPTY:WINDOW:7", + "keymap-item:Frames:EMPTY:WINDOW:8", + "keymap-item:Frames:EMPTY:WINDOW:9", + "keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:0", + "keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:1", + "keymap-item:Generic Gizmo Drag:EMPTY:WINDOW:0", + "keymap-item:Generic Gizmo Maybe Drag:EMPTY:WINDOW:0", + "keymap-item:Generic Gizmo Select:EMPTY:WINDOW:0", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:0", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:1", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:10", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:11", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:2", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:3", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:4", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:5", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:6", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:7", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:8", + "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:9", + "keymap-item:Generic Gizmo:EMPTY:WINDOW:0", + "keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:0", + "keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:1", + "keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:0", + "keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:1", + "keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:0", + "keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:1", + "keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:0", + "keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:1", + "keymap-item:Gesture Box:EMPTY:WINDOW:0", + "keymap-item:Gesture Box:EMPTY:WINDOW:1", + "keymap-item:Gesture Box:EMPTY:WINDOW:2", + "keymap-item:Gesture Box:EMPTY:WINDOW:3", + "keymap-item:Gesture Box:EMPTY:WINDOW:4", + "keymap-item:Gesture Box:EMPTY:WINDOW:5", + "keymap-item:Gesture Box:EMPTY:WINDOW:6", + "keymap-item:Gesture Box:EMPTY:WINDOW:7", + "keymap-item:Gesture Box:EMPTY:WINDOW:8", + "keymap-item:Gesture Box:EMPTY:WINDOW:9", + "keymap-item:Gesture Lasso:EMPTY:WINDOW:0", + "keymap-item:Gesture Polyline:EMPTY:WINDOW:0", + "keymap-item:Gesture Polyline:EMPTY:WINDOW:1", + "keymap-item:Gesture Polyline:EMPTY:WINDOW:2", + "keymap-item:Gesture Polyline:EMPTY:WINDOW:3", + "keymap-item:Gesture Polyline:EMPTY:WINDOW:4", + "keymap-item:Gesture Polyline:EMPTY:WINDOW:5", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:0", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:1", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:2", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:3", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:4", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:5", + "keymap-item:Gesture Straight Line:EMPTY:WINDOW:6", + "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:0", + "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:1", + "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:2", + "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:3", + "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:4", + "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:5", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:0", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:1", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:2", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:3", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:4", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:5", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:6", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:7", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:8", + "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:9", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:0", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:1", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:10", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:11", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:12", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:13", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:14", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:15", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:16", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:17", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:18", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:19", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:2", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:20", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:21", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:22", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:23", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:24", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:25", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:26", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:27", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:28", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:29", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:3", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:30", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:31", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:32", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:33", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:34", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:35", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:36", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:37", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:38", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:39", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:4", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:40", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:41", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:42", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:43", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:44", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:45", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:46", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:47", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:48", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:49", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:5", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:50", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:51", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:52", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:53", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:54", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:55", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:56", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:57", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:58", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:59", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:6", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:60", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:61", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:62", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:63", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:64", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:65", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:66", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:67", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:68", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:69", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:7", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:70", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:8", + "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:9", + "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:10", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:11", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:12", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:13", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:14", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:15", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:16", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:17", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:18", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:19", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:20", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:21", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:6", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:7", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:8", + "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:9", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:10", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:11", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:12", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:13", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:14", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:15", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:16", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:17", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:18", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:19", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:20", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:21", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:22", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:23", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:24", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:25", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:26", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:27", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:28", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:29", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:30", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:31", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:32", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:33", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:34", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:35", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:36", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:37", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:38", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:39", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:40", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:41", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:42", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:43", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:44", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:45", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:46", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:47", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:48", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:49", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:50", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:51", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:52", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:53", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:54", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:55", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:56", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:6", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:7", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:8", + "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:9", + "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:10", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:11", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:12", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:13", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:14", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:15", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:16", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:17", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:18", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:19", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:20", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:21", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:22", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:23", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:24", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:25", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:26", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:6", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:7", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:8", + "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:9", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:6", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:7", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:8", + "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:9", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:10", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:11", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:12", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:13", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:14", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:15", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:16", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:17", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:18", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:19", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:20", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:21", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:6", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:7", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:8", + "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:9", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:10", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:11", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:12", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:13", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:14", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:15", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:16", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:17", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:18", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:19", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:20", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:21", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:22", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:23", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:24", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:25", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:4", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:5", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:6", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:7", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:8", + "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:9", + "keymap-item:Grease Pencil:EMPTY:WINDOW:0", + "keymap-item:Grease Pencil:EMPTY:WINDOW:1", + "keymap-item:Grease Pencil:EMPTY:WINDOW:2", + "keymap-item:Grease Pencil:EMPTY:WINDOW:3", + "keymap-item:Grease Pencil:EMPTY:WINDOW:4", + "keymap-item:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:3", + "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:4", + "keymap-item:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:3", + "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:4", + "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:3", + "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:4", + "keymap-item:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:10", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:3", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:4", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:5", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:6", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:7", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:8", + "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:9", + "keymap-item:Image Paint:EMPTY:WINDOW:0", + "keymap-item:Image Paint:EMPTY:WINDOW:1", + "keymap-item:Image Paint:EMPTY:WINDOW:10", + "keymap-item:Image Paint:EMPTY:WINDOW:11", + "keymap-item:Image Paint:EMPTY:WINDOW:12", + "keymap-item:Image Paint:EMPTY:WINDOW:13", + "keymap-item:Image Paint:EMPTY:WINDOW:14", + "keymap-item:Image Paint:EMPTY:WINDOW:15", + "keymap-item:Image Paint:EMPTY:WINDOW:16", + "keymap-item:Image Paint:EMPTY:WINDOW:17", + "keymap-item:Image Paint:EMPTY:WINDOW:18", + "keymap-item:Image Paint:EMPTY:WINDOW:19", + "keymap-item:Image Paint:EMPTY:WINDOW:2", + "keymap-item:Image Paint:EMPTY:WINDOW:20", + "keymap-item:Image Paint:EMPTY:WINDOW:21", + "keymap-item:Image Paint:EMPTY:WINDOW:22", + "keymap-item:Image Paint:EMPTY:WINDOW:23", + "keymap-item:Image Paint:EMPTY:WINDOW:24", + "keymap-item:Image Paint:EMPTY:WINDOW:25", + "keymap-item:Image Paint:EMPTY:WINDOW:3", + "keymap-item:Image Paint:EMPTY:WINDOW:4", + "keymap-item:Image Paint:EMPTY:WINDOW:5", + "keymap-item:Image Paint:EMPTY:WINDOW:6", + "keymap-item:Image Paint:EMPTY:WINDOW:7", + "keymap-item:Image Paint:EMPTY:WINDOW:8", + "keymap-item:Image Paint:EMPTY:WINDOW:9", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:0", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:1", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:10", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:11", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:12", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:13", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:14", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:15", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:16", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:17", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:18", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:19", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:2", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:20", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:21", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:22", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:23", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:24", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:25", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:26", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:27", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:28", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:29", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:3", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:30", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:31", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:32", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:33", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:34", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:35", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:36", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:37", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:38", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:39", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:4", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:40", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:41", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:42", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:43", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:44", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:45", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:46", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:47", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:48", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:49", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:5", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:50", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:6", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:7", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:8", + "keymap-item:Image:IMAGE_EDITOR:WINDOW:9", + "keymap-item:Info:INFO:WINDOW:0", + "keymap-item:Info:INFO:WINDOW:1", + "keymap-item:Info:INFO:WINDOW:10", + "keymap-item:Info:INFO:WINDOW:11", + "keymap-item:Info:INFO:WINDOW:12", + "keymap-item:Info:INFO:WINDOW:13", + "keymap-item:Info:INFO:WINDOW:2", + "keymap-item:Info:INFO:WINDOW:3", + "keymap-item:Info:INFO:WINDOW:4", + "keymap-item:Info:INFO:WINDOW:5", + "keymap-item:Info:INFO:WINDOW:6", + "keymap-item:Info:INFO:WINDOW:7", + "keymap-item:Info:INFO:WINDOW:8", + "keymap-item:Info:INFO:WINDOW:9", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:0", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:1", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:2", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:3", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:4", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:5", + "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:6", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:0", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:1", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:10", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:11", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:12", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:13", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:14", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:15", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:16", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:17", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:18", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:19", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:2", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:20", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:21", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:22", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:23", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:24", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:3", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:4", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:5", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:6", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:7", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:8", + "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:9", + "keymap-item:Lattice:EMPTY:WINDOW:0", + "keymap-item:Lattice:EMPTY:WINDOW:1", + "keymap-item:Lattice:EMPTY:WINDOW:10", + "keymap-item:Lattice:EMPTY:WINDOW:11", + "keymap-item:Lattice:EMPTY:WINDOW:12", + "keymap-item:Lattice:EMPTY:WINDOW:13", + "keymap-item:Lattice:EMPTY:WINDOW:14", + "keymap-item:Lattice:EMPTY:WINDOW:15", + "keymap-item:Lattice:EMPTY:WINDOW:16", + "keymap-item:Lattice:EMPTY:WINDOW:17", + "keymap-item:Lattice:EMPTY:WINDOW:18", + "keymap-item:Lattice:EMPTY:WINDOW:19", + "keymap-item:Lattice:EMPTY:WINDOW:2", + "keymap-item:Lattice:EMPTY:WINDOW:20", + "keymap-item:Lattice:EMPTY:WINDOW:3", + "keymap-item:Lattice:EMPTY:WINDOW:4", + "keymap-item:Lattice:EMPTY:WINDOW:5", + "keymap-item:Lattice:EMPTY:WINDOW:6", + "keymap-item:Lattice:EMPTY:WINDOW:7", + "keymap-item:Lattice:EMPTY:WINDOW:8", + "keymap-item:Lattice:EMPTY:WINDOW:9", + "keymap-item:Markers:EMPTY:WINDOW:0", + "keymap-item:Markers:EMPTY:WINDOW:1", + "keymap-item:Markers:EMPTY:WINDOW:10", + "keymap-item:Markers:EMPTY:WINDOW:11", + "keymap-item:Markers:EMPTY:WINDOW:12", + "keymap-item:Markers:EMPTY:WINDOW:13", + "keymap-item:Markers:EMPTY:WINDOW:14", + "keymap-item:Markers:EMPTY:WINDOW:15", + "keymap-item:Markers:EMPTY:WINDOW:16", + "keymap-item:Markers:EMPTY:WINDOW:17", + "keymap-item:Markers:EMPTY:WINDOW:18", + "keymap-item:Markers:EMPTY:WINDOW:19", + "keymap-item:Markers:EMPTY:WINDOW:2", + "keymap-item:Markers:EMPTY:WINDOW:20", + "keymap-item:Markers:EMPTY:WINDOW:21", + "keymap-item:Markers:EMPTY:WINDOW:22", + "keymap-item:Markers:EMPTY:WINDOW:23", + "keymap-item:Markers:EMPTY:WINDOW:24", + "keymap-item:Markers:EMPTY:WINDOW:3", + "keymap-item:Markers:EMPTY:WINDOW:4", + "keymap-item:Markers:EMPTY:WINDOW:5", + "keymap-item:Markers:EMPTY:WINDOW:6", + "keymap-item:Markers:EMPTY:WINDOW:7", + "keymap-item:Markers:EMPTY:WINDOW:8", + "keymap-item:Markers:EMPTY:WINDOW:9", + "keymap-item:Mask Editing:EMPTY:WINDOW:0", + "keymap-item:Mask Editing:EMPTY:WINDOW:1", + "keymap-item:Mask Editing:EMPTY:WINDOW:10", + "keymap-item:Mask Editing:EMPTY:WINDOW:11", + "keymap-item:Mask Editing:EMPTY:WINDOW:12", + "keymap-item:Mask Editing:EMPTY:WINDOW:13", + "keymap-item:Mask Editing:EMPTY:WINDOW:14", + "keymap-item:Mask Editing:EMPTY:WINDOW:15", + "keymap-item:Mask Editing:EMPTY:WINDOW:16", + "keymap-item:Mask Editing:EMPTY:WINDOW:17", + "keymap-item:Mask Editing:EMPTY:WINDOW:18", + "keymap-item:Mask Editing:EMPTY:WINDOW:19", + "keymap-item:Mask Editing:EMPTY:WINDOW:2", + "keymap-item:Mask Editing:EMPTY:WINDOW:20", + "keymap-item:Mask Editing:EMPTY:WINDOW:21", + "keymap-item:Mask Editing:EMPTY:WINDOW:22", + "keymap-item:Mask Editing:EMPTY:WINDOW:23", + "keymap-item:Mask Editing:EMPTY:WINDOW:24", + "keymap-item:Mask Editing:EMPTY:WINDOW:25", + "keymap-item:Mask Editing:EMPTY:WINDOW:26", + "keymap-item:Mask Editing:EMPTY:WINDOW:27", + "keymap-item:Mask Editing:EMPTY:WINDOW:28", + "keymap-item:Mask Editing:EMPTY:WINDOW:29", + "keymap-item:Mask Editing:EMPTY:WINDOW:3", + "keymap-item:Mask Editing:EMPTY:WINDOW:30", + "keymap-item:Mask Editing:EMPTY:WINDOW:31", + "keymap-item:Mask Editing:EMPTY:WINDOW:32", + "keymap-item:Mask Editing:EMPTY:WINDOW:33", + "keymap-item:Mask Editing:EMPTY:WINDOW:34", + "keymap-item:Mask Editing:EMPTY:WINDOW:35", + "keymap-item:Mask Editing:EMPTY:WINDOW:36", + "keymap-item:Mask Editing:EMPTY:WINDOW:37", + "keymap-item:Mask Editing:EMPTY:WINDOW:38", + "keymap-item:Mask Editing:EMPTY:WINDOW:39", + "keymap-item:Mask Editing:EMPTY:WINDOW:4", + "keymap-item:Mask Editing:EMPTY:WINDOW:40", + "keymap-item:Mask Editing:EMPTY:WINDOW:41", + "keymap-item:Mask Editing:EMPTY:WINDOW:42", + "keymap-item:Mask Editing:EMPTY:WINDOW:43", + "keymap-item:Mask Editing:EMPTY:WINDOW:44", + "keymap-item:Mask Editing:EMPTY:WINDOW:45", + "keymap-item:Mask Editing:EMPTY:WINDOW:46", + "keymap-item:Mask Editing:EMPTY:WINDOW:47", + "keymap-item:Mask Editing:EMPTY:WINDOW:5", + "keymap-item:Mask Editing:EMPTY:WINDOW:6", + "keymap-item:Mask Editing:EMPTY:WINDOW:7", + "keymap-item:Mask Editing:EMPTY:WINDOW:8", + "keymap-item:Mask Editing:EMPTY:WINDOW:9", + "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:0", + "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:1", + "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:2", + "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:3", + "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:4", + "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:5", + "keymap-item:Mesh:EMPTY:WINDOW:0", + "keymap-item:Mesh:EMPTY:WINDOW:1", + "keymap-item:Mesh:EMPTY:WINDOW:10", + "keymap-item:Mesh:EMPTY:WINDOW:11", + "keymap-item:Mesh:EMPTY:WINDOW:12", + "keymap-item:Mesh:EMPTY:WINDOW:13", + "keymap-item:Mesh:EMPTY:WINDOW:14", + "keymap-item:Mesh:EMPTY:WINDOW:15", + "keymap-item:Mesh:EMPTY:WINDOW:16", + "keymap-item:Mesh:EMPTY:WINDOW:17", + "keymap-item:Mesh:EMPTY:WINDOW:18", + "keymap-item:Mesh:EMPTY:WINDOW:19", + "keymap-item:Mesh:EMPTY:WINDOW:2", + "keymap-item:Mesh:EMPTY:WINDOW:20", + "keymap-item:Mesh:EMPTY:WINDOW:21", + "keymap-item:Mesh:EMPTY:WINDOW:22", + "keymap-item:Mesh:EMPTY:WINDOW:23", + "keymap-item:Mesh:EMPTY:WINDOW:24", + "keymap-item:Mesh:EMPTY:WINDOW:25", + "keymap-item:Mesh:EMPTY:WINDOW:26", + "keymap-item:Mesh:EMPTY:WINDOW:27", + "keymap-item:Mesh:EMPTY:WINDOW:28", + "keymap-item:Mesh:EMPTY:WINDOW:29", + "keymap-item:Mesh:EMPTY:WINDOW:3", + "keymap-item:Mesh:EMPTY:WINDOW:30", + "keymap-item:Mesh:EMPTY:WINDOW:31", + "keymap-item:Mesh:EMPTY:WINDOW:32", + "keymap-item:Mesh:EMPTY:WINDOW:33", + "keymap-item:Mesh:EMPTY:WINDOW:34", + "keymap-item:Mesh:EMPTY:WINDOW:35", + "keymap-item:Mesh:EMPTY:WINDOW:36", + "keymap-item:Mesh:EMPTY:WINDOW:37", + "keymap-item:Mesh:EMPTY:WINDOW:38", + "keymap-item:Mesh:EMPTY:WINDOW:39", + "keymap-item:Mesh:EMPTY:WINDOW:4", + "keymap-item:Mesh:EMPTY:WINDOW:40", + "keymap-item:Mesh:EMPTY:WINDOW:41", + "keymap-item:Mesh:EMPTY:WINDOW:42", + "keymap-item:Mesh:EMPTY:WINDOW:43", + "keymap-item:Mesh:EMPTY:WINDOW:44", + "keymap-item:Mesh:EMPTY:WINDOW:45", + "keymap-item:Mesh:EMPTY:WINDOW:46", + "keymap-item:Mesh:EMPTY:WINDOW:47", + "keymap-item:Mesh:EMPTY:WINDOW:48", + "keymap-item:Mesh:EMPTY:WINDOW:49", + "keymap-item:Mesh:EMPTY:WINDOW:5", + "keymap-item:Mesh:EMPTY:WINDOW:50", + "keymap-item:Mesh:EMPTY:WINDOW:51", + "keymap-item:Mesh:EMPTY:WINDOW:52", + "keymap-item:Mesh:EMPTY:WINDOW:53", + "keymap-item:Mesh:EMPTY:WINDOW:54", + "keymap-item:Mesh:EMPTY:WINDOW:55", + "keymap-item:Mesh:EMPTY:WINDOW:56", + "keymap-item:Mesh:EMPTY:WINDOW:57", + "keymap-item:Mesh:EMPTY:WINDOW:58", + "keymap-item:Mesh:EMPTY:WINDOW:59", + "keymap-item:Mesh:EMPTY:WINDOW:6", + "keymap-item:Mesh:EMPTY:WINDOW:60", + "keymap-item:Mesh:EMPTY:WINDOW:61", + "keymap-item:Mesh:EMPTY:WINDOW:62", + "keymap-item:Mesh:EMPTY:WINDOW:63", + "keymap-item:Mesh:EMPTY:WINDOW:64", + "keymap-item:Mesh:EMPTY:WINDOW:65", + "keymap-item:Mesh:EMPTY:WINDOW:66", + "keymap-item:Mesh:EMPTY:WINDOW:67", + "keymap-item:Mesh:EMPTY:WINDOW:68", + "keymap-item:Mesh:EMPTY:WINDOW:69", + "keymap-item:Mesh:EMPTY:WINDOW:7", + "keymap-item:Mesh:EMPTY:WINDOW:70", + "keymap-item:Mesh:EMPTY:WINDOW:71", + "keymap-item:Mesh:EMPTY:WINDOW:72", + "keymap-item:Mesh:EMPTY:WINDOW:73", + "keymap-item:Mesh:EMPTY:WINDOW:74", + "keymap-item:Mesh:EMPTY:WINDOW:75", + "keymap-item:Mesh:EMPTY:WINDOW:76", + "keymap-item:Mesh:EMPTY:WINDOW:77", + "keymap-item:Mesh:EMPTY:WINDOW:78", + "keymap-item:Mesh:EMPTY:WINDOW:79", + "keymap-item:Mesh:EMPTY:WINDOW:8", + "keymap-item:Mesh:EMPTY:WINDOW:80", + "keymap-item:Mesh:EMPTY:WINDOW:81", + "keymap-item:Mesh:EMPTY:WINDOW:82", + "keymap-item:Mesh:EMPTY:WINDOW:83", + "keymap-item:Mesh:EMPTY:WINDOW:84", + "keymap-item:Mesh:EMPTY:WINDOW:85", + "keymap-item:Mesh:EMPTY:WINDOW:86", + "keymap-item:Mesh:EMPTY:WINDOW:87", + "keymap-item:Mesh:EMPTY:WINDOW:88", + "keymap-item:Mesh:EMPTY:WINDOW:89", + "keymap-item:Mesh:EMPTY:WINDOW:9", + "keymap-item:Mesh:EMPTY:WINDOW:90", + "keymap-item:Mesh:EMPTY:WINDOW:91", + "keymap-item:Mesh:EMPTY:WINDOW:92", + "keymap-item:Metaball:EMPTY:WINDOW:0", + "keymap-item:Metaball:EMPTY:WINDOW:1", + "keymap-item:Metaball:EMPTY:WINDOW:10", + "keymap-item:Metaball:EMPTY:WINDOW:11", + "keymap-item:Metaball:EMPTY:WINDOW:12", + "keymap-item:Metaball:EMPTY:WINDOW:13", + "keymap-item:Metaball:EMPTY:WINDOW:14", + "keymap-item:Metaball:EMPTY:WINDOW:15", + "keymap-item:Metaball:EMPTY:WINDOW:16", + "keymap-item:Metaball:EMPTY:WINDOW:17", + "keymap-item:Metaball:EMPTY:WINDOW:18", + "keymap-item:Metaball:EMPTY:WINDOW:19", + "keymap-item:Metaball:EMPTY:WINDOW:2", + "keymap-item:Metaball:EMPTY:WINDOW:20", + "keymap-item:Metaball:EMPTY:WINDOW:21", + "keymap-item:Metaball:EMPTY:WINDOW:3", + "keymap-item:Metaball:EMPTY:WINDOW:4", + "keymap-item:Metaball:EMPTY:WINDOW:5", + "keymap-item:Metaball:EMPTY:WINDOW:6", + "keymap-item:Metaball:EMPTY:WINDOW:7", + "keymap-item:Metaball:EMPTY:WINDOW:8", + "keymap-item:Metaball:EMPTY:WINDOW:9", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:0", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:1", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:10", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:11", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:12", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:13", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:14", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:15", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:16", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:17", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:18", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:19", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:2", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:20", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:21", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:22", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:23", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:24", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:25", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:26", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:27", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:28", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:29", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:3", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:30", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:31", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:32", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:33", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:34", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:35", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:36", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:37", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:38", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:39", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:4", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:40", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:41", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:42", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:43", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:44", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:45", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:46", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:47", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:48", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:5", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:6", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:7", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:8", + "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:9", + "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:0", + "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:1", + "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:2", + "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:3", + "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:4", + "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:5", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:0", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:1", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:2", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:3", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:4", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:5", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:6", + "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:7", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:1", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:10", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:100", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:101", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:102", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:103", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:11", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:12", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:13", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:14", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:15", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:16", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:17", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:18", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:19", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:2", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:20", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:21", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:22", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:23", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:24", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:25", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:26", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:27", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:28", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:29", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:3", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:30", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:31", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:32", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:33", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:34", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:35", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:36", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:37", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:38", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:39", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:4", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:40", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:41", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:42", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:43", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:44", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:45", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:46", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:47", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:48", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:49", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:5", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:50", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:51", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:52", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:53", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:54", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:55", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:56", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:57", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:58", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:59", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:6", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:60", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:61", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:62", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:63", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:64", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:65", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:66", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:67", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:68", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:69", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:7", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:70", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:71", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:72", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:73", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:74", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:75", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:76", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:77", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:78", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:79", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:8", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:80", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:81", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:82", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:83", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:84", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:85", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:86", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:87", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:88", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:89", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:9", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:90", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:91", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:92", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:93", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:94", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:95", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:96", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:97", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:98", + "keymap-item:Node Editor:NODE_EDITOR:WINDOW:99", + "keymap-item:Node Generic:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Generic:NODE_EDITOR:WINDOW:1", + "keymap-item:Node Link Modal Map:EMPTY:WINDOW:0", + "keymap-item:Node Link Modal Map:EMPTY:WINDOW:1", + "keymap-item:Node Link Modal Map:EMPTY:WINDOW:2", + "keymap-item:Node Link Modal Map:EMPTY:WINDOW:3", + "keymap-item:Node Link Modal Map:EMPTY:WINDOW:4", + "keymap-item:Node Link Modal Map:EMPTY:WINDOW:5", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:0", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:1", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:2", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:3", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:4", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:5", + "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:6", + "keymap-item:Node Tool: Add Reroute:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Links Cut:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Mute Links:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:10", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:11", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:3", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:4", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:5", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:6", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:7", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:8", + "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:9", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:10", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:11", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:3", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:4", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:5", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:6", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:7", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:8", + "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:9", + "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:3", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:4", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:5", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:6", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:7", + "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:8", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:0", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:1", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:2", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:3", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:4", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:5", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:6", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:7", + "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:8", + "keymap-item:Object Mode:EMPTY:WINDOW:0", + "keymap-item:Object Mode:EMPTY:WINDOW:1", + "keymap-item:Object Mode:EMPTY:WINDOW:10", + "keymap-item:Object Mode:EMPTY:WINDOW:11", + "keymap-item:Object Mode:EMPTY:WINDOW:12", + "keymap-item:Object Mode:EMPTY:WINDOW:13", + "keymap-item:Object Mode:EMPTY:WINDOW:14", + "keymap-item:Object Mode:EMPTY:WINDOW:15", + "keymap-item:Object Mode:EMPTY:WINDOW:16", + "keymap-item:Object Mode:EMPTY:WINDOW:17", + "keymap-item:Object Mode:EMPTY:WINDOW:18", + "keymap-item:Object Mode:EMPTY:WINDOW:19", + "keymap-item:Object Mode:EMPTY:WINDOW:2", + "keymap-item:Object Mode:EMPTY:WINDOW:20", + "keymap-item:Object Mode:EMPTY:WINDOW:21", + "keymap-item:Object Mode:EMPTY:WINDOW:22", + "keymap-item:Object Mode:EMPTY:WINDOW:23", + "keymap-item:Object Mode:EMPTY:WINDOW:24", + "keymap-item:Object Mode:EMPTY:WINDOW:25", + "keymap-item:Object Mode:EMPTY:WINDOW:26", + "keymap-item:Object Mode:EMPTY:WINDOW:27", + "keymap-item:Object Mode:EMPTY:WINDOW:28", + "keymap-item:Object Mode:EMPTY:WINDOW:29", + "keymap-item:Object Mode:EMPTY:WINDOW:3", + "keymap-item:Object Mode:EMPTY:WINDOW:30", + "keymap-item:Object Mode:EMPTY:WINDOW:31", + "keymap-item:Object Mode:EMPTY:WINDOW:32", + "keymap-item:Object Mode:EMPTY:WINDOW:33", + "keymap-item:Object Mode:EMPTY:WINDOW:34", + "keymap-item:Object Mode:EMPTY:WINDOW:35", + "keymap-item:Object Mode:EMPTY:WINDOW:36", + "keymap-item:Object Mode:EMPTY:WINDOW:37", + "keymap-item:Object Mode:EMPTY:WINDOW:38", + "keymap-item:Object Mode:EMPTY:WINDOW:39", + "keymap-item:Object Mode:EMPTY:WINDOW:4", + "keymap-item:Object Mode:EMPTY:WINDOW:40", + "keymap-item:Object Mode:EMPTY:WINDOW:41", + "keymap-item:Object Mode:EMPTY:WINDOW:42", + "keymap-item:Object Mode:EMPTY:WINDOW:43", + "keymap-item:Object Mode:EMPTY:WINDOW:44", + "keymap-item:Object Mode:EMPTY:WINDOW:45", + "keymap-item:Object Mode:EMPTY:WINDOW:46", + "keymap-item:Object Mode:EMPTY:WINDOW:47", + "keymap-item:Object Mode:EMPTY:WINDOW:48", + "keymap-item:Object Mode:EMPTY:WINDOW:49", + "keymap-item:Object Mode:EMPTY:WINDOW:5", + "keymap-item:Object Mode:EMPTY:WINDOW:50", + "keymap-item:Object Mode:EMPTY:WINDOW:51", + "keymap-item:Object Mode:EMPTY:WINDOW:52", + "keymap-item:Object Mode:EMPTY:WINDOW:53", + "keymap-item:Object Mode:EMPTY:WINDOW:54", + "keymap-item:Object Mode:EMPTY:WINDOW:55", + "keymap-item:Object Mode:EMPTY:WINDOW:56", + "keymap-item:Object Mode:EMPTY:WINDOW:57", + "keymap-item:Object Mode:EMPTY:WINDOW:58", + "keymap-item:Object Mode:EMPTY:WINDOW:6", + "keymap-item:Object Mode:EMPTY:WINDOW:7", + "keymap-item:Object Mode:EMPTY:WINDOW:8", + "keymap-item:Object Mode:EMPTY:WINDOW:9", + "keymap-item:Object Non-modal:EMPTY:WINDOW:0", + "keymap-item:Object Non-modal:EMPTY:WINDOW:1", + "keymap-item:Object Non-modal:EMPTY:WINDOW:2", + "keymap-item:Outliner:OUTLINER:WINDOW:0", + "keymap-item:Outliner:OUTLINER:WINDOW:1", + "keymap-item:Outliner:OUTLINER:WINDOW:10", + "keymap-item:Outliner:OUTLINER:WINDOW:100", + "keymap-item:Outliner:OUTLINER:WINDOW:101", + "keymap-item:Outliner:OUTLINER:WINDOW:102", + "keymap-item:Outliner:OUTLINER:WINDOW:11", + "keymap-item:Outliner:OUTLINER:WINDOW:12", + "keymap-item:Outliner:OUTLINER:WINDOW:13", + "keymap-item:Outliner:OUTLINER:WINDOW:14", + "keymap-item:Outliner:OUTLINER:WINDOW:15", + "keymap-item:Outliner:OUTLINER:WINDOW:16", + "keymap-item:Outliner:OUTLINER:WINDOW:17", + "keymap-item:Outliner:OUTLINER:WINDOW:18", + "keymap-item:Outliner:OUTLINER:WINDOW:19", + "keymap-item:Outliner:OUTLINER:WINDOW:2", + "keymap-item:Outliner:OUTLINER:WINDOW:20", + "keymap-item:Outliner:OUTLINER:WINDOW:21", + "keymap-item:Outliner:OUTLINER:WINDOW:22", + "keymap-item:Outliner:OUTLINER:WINDOW:23", + "keymap-item:Outliner:OUTLINER:WINDOW:24", + "keymap-item:Outliner:OUTLINER:WINDOW:25", + "keymap-item:Outliner:OUTLINER:WINDOW:26", + "keymap-item:Outliner:OUTLINER:WINDOW:27", + "keymap-item:Outliner:OUTLINER:WINDOW:28", + "keymap-item:Outliner:OUTLINER:WINDOW:29", + "keymap-item:Outliner:OUTLINER:WINDOW:3", + "keymap-item:Outliner:OUTLINER:WINDOW:30", + "keymap-item:Outliner:OUTLINER:WINDOW:31", + "keymap-item:Outliner:OUTLINER:WINDOW:32", + "keymap-item:Outliner:OUTLINER:WINDOW:33", + "keymap-item:Outliner:OUTLINER:WINDOW:34", + "keymap-item:Outliner:OUTLINER:WINDOW:35", + "keymap-item:Outliner:OUTLINER:WINDOW:36", + "keymap-item:Outliner:OUTLINER:WINDOW:37", + "keymap-item:Outliner:OUTLINER:WINDOW:38", + "keymap-item:Outliner:OUTLINER:WINDOW:39", + "keymap-item:Outliner:OUTLINER:WINDOW:4", + "keymap-item:Outliner:OUTLINER:WINDOW:40", + "keymap-item:Outliner:OUTLINER:WINDOW:41", + "keymap-item:Outliner:OUTLINER:WINDOW:42", + "keymap-item:Outliner:OUTLINER:WINDOW:43", + "keymap-item:Outliner:OUTLINER:WINDOW:44", + "keymap-item:Outliner:OUTLINER:WINDOW:45", + "keymap-item:Outliner:OUTLINER:WINDOW:46", + "keymap-item:Outliner:OUTLINER:WINDOW:47", + "keymap-item:Outliner:OUTLINER:WINDOW:48", + "keymap-item:Outliner:OUTLINER:WINDOW:49", + "keymap-item:Outliner:OUTLINER:WINDOW:5", + "keymap-item:Outliner:OUTLINER:WINDOW:50", + "keymap-item:Outliner:OUTLINER:WINDOW:51", + "keymap-item:Outliner:OUTLINER:WINDOW:52", + "keymap-item:Outliner:OUTLINER:WINDOW:53", + "keymap-item:Outliner:OUTLINER:WINDOW:54", + "keymap-item:Outliner:OUTLINER:WINDOW:55", + "keymap-item:Outliner:OUTLINER:WINDOW:56", + "keymap-item:Outliner:OUTLINER:WINDOW:57", + "keymap-item:Outliner:OUTLINER:WINDOW:58", + "keymap-item:Outliner:OUTLINER:WINDOW:59", + "keymap-item:Outliner:OUTLINER:WINDOW:6", + "keymap-item:Outliner:OUTLINER:WINDOW:60", + "keymap-item:Outliner:OUTLINER:WINDOW:61", + "keymap-item:Outliner:OUTLINER:WINDOW:62", + "keymap-item:Outliner:OUTLINER:WINDOW:63", + "keymap-item:Outliner:OUTLINER:WINDOW:64", + "keymap-item:Outliner:OUTLINER:WINDOW:65", + "keymap-item:Outliner:OUTLINER:WINDOW:66", + "keymap-item:Outliner:OUTLINER:WINDOW:67", + "keymap-item:Outliner:OUTLINER:WINDOW:68", + "keymap-item:Outliner:OUTLINER:WINDOW:69", + "keymap-item:Outliner:OUTLINER:WINDOW:7", + "keymap-item:Outliner:OUTLINER:WINDOW:70", + "keymap-item:Outliner:OUTLINER:WINDOW:71", + "keymap-item:Outliner:OUTLINER:WINDOW:72", + "keymap-item:Outliner:OUTLINER:WINDOW:73", + "keymap-item:Outliner:OUTLINER:WINDOW:74", + "keymap-item:Outliner:OUTLINER:WINDOW:75", + "keymap-item:Outliner:OUTLINER:WINDOW:76", + "keymap-item:Outliner:OUTLINER:WINDOW:77", + "keymap-item:Outliner:OUTLINER:WINDOW:78", + "keymap-item:Outliner:OUTLINER:WINDOW:79", + "keymap-item:Outliner:OUTLINER:WINDOW:8", + "keymap-item:Outliner:OUTLINER:WINDOW:80", + "keymap-item:Outliner:OUTLINER:WINDOW:81", + "keymap-item:Outliner:OUTLINER:WINDOW:82", + "keymap-item:Outliner:OUTLINER:WINDOW:83", + "keymap-item:Outliner:OUTLINER:WINDOW:84", + "keymap-item:Outliner:OUTLINER:WINDOW:85", + "keymap-item:Outliner:OUTLINER:WINDOW:86", + "keymap-item:Outliner:OUTLINER:WINDOW:87", + "keymap-item:Outliner:OUTLINER:WINDOW:88", + "keymap-item:Outliner:OUTLINER:WINDOW:89", + "keymap-item:Outliner:OUTLINER:WINDOW:9", + "keymap-item:Outliner:OUTLINER:WINDOW:90", + "keymap-item:Outliner:OUTLINER:WINDOW:91", + "keymap-item:Outliner:OUTLINER:WINDOW:92", + "keymap-item:Outliner:OUTLINER:WINDOW:93", + "keymap-item:Outliner:OUTLINER:WINDOW:94", + "keymap-item:Outliner:OUTLINER:WINDOW:95", + "keymap-item:Outliner:OUTLINER:WINDOW:96", + "keymap-item:Outliner:OUTLINER:WINDOW:97", + "keymap-item:Outliner:OUTLINER:WINDOW:98", + "keymap-item:Outliner:OUTLINER:WINDOW:99", + "keymap-item:Paint Curve:EMPTY:WINDOW:0", + "keymap-item:Paint Curve:EMPTY:WINDOW:1", + "keymap-item:Paint Curve:EMPTY:WINDOW:10", + "keymap-item:Paint Curve:EMPTY:WINDOW:11", + "keymap-item:Paint Curve:EMPTY:WINDOW:12", + "keymap-item:Paint Curve:EMPTY:WINDOW:13", + "keymap-item:Paint Curve:EMPTY:WINDOW:14", + "keymap-item:Paint Curve:EMPTY:WINDOW:2", + "keymap-item:Paint Curve:EMPTY:WINDOW:3", + "keymap-item:Paint Curve:EMPTY:WINDOW:4", + "keymap-item:Paint Curve:EMPTY:WINDOW:5", + "keymap-item:Paint Curve:EMPTY:WINDOW:6", + "keymap-item:Paint Curve:EMPTY:WINDOW:7", + "keymap-item:Paint Curve:EMPTY:WINDOW:8", + "keymap-item:Paint Curve:EMPTY:WINDOW:9", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:0", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:1", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:10", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:11", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:12", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:13", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:2", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:3", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:4", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:5", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:6", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:7", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:8", + "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:9", + "keymap-item:Paint Stroke Modal:EMPTY:WINDOW:0", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:0", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:1", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:10", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:11", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:12", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:13", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:14", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:15", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:2", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:3", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:4", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:5", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:6", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:7", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:8", + "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:9", + "keymap-item:Particle:EMPTY:WINDOW:0", + "keymap-item:Particle:EMPTY:WINDOW:1", + "keymap-item:Particle:EMPTY:WINDOW:10", + "keymap-item:Particle:EMPTY:WINDOW:11", + "keymap-item:Particle:EMPTY:WINDOW:12", + "keymap-item:Particle:EMPTY:WINDOW:13", + "keymap-item:Particle:EMPTY:WINDOW:14", + "keymap-item:Particle:EMPTY:WINDOW:15", + "keymap-item:Particle:EMPTY:WINDOW:16", + "keymap-item:Particle:EMPTY:WINDOW:17", + "keymap-item:Particle:EMPTY:WINDOW:18", + "keymap-item:Particle:EMPTY:WINDOW:19", + "keymap-item:Particle:EMPTY:WINDOW:2", + "keymap-item:Particle:EMPTY:WINDOW:20", + "keymap-item:Particle:EMPTY:WINDOW:21", + "keymap-item:Particle:EMPTY:WINDOW:22", + "keymap-item:Particle:EMPTY:WINDOW:23", + "keymap-item:Particle:EMPTY:WINDOW:24", + "keymap-item:Particle:EMPTY:WINDOW:25", + "keymap-item:Particle:EMPTY:WINDOW:26", + "keymap-item:Particle:EMPTY:WINDOW:27", + "keymap-item:Particle:EMPTY:WINDOW:28", + "keymap-item:Particle:EMPTY:WINDOW:29", + "keymap-item:Particle:EMPTY:WINDOW:3", + "keymap-item:Particle:EMPTY:WINDOW:4", + "keymap-item:Particle:EMPTY:WINDOW:5", + "keymap-item:Particle:EMPTY:WINDOW:6", + "keymap-item:Particle:EMPTY:WINDOW:7", + "keymap-item:Particle:EMPTY:WINDOW:8", + "keymap-item:Particle:EMPTY:WINDOW:9", + "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:0", + "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:1", + "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:2", + "keymap-item:Point Cloud:EMPTY:WINDOW:0", + "keymap-item:Point Cloud:EMPTY:WINDOW:1", + "keymap-item:Point Cloud:EMPTY:WINDOW:10", + "keymap-item:Point Cloud:EMPTY:WINDOW:11", + "keymap-item:Point Cloud:EMPTY:WINDOW:12", + "keymap-item:Point Cloud:EMPTY:WINDOW:13", + "keymap-item:Point Cloud:EMPTY:WINDOW:14", + "keymap-item:Point Cloud:EMPTY:WINDOW:15", + "keymap-item:Point Cloud:EMPTY:WINDOW:16", + "keymap-item:Point Cloud:EMPTY:WINDOW:17", + "keymap-item:Point Cloud:EMPTY:WINDOW:2", + "keymap-item:Point Cloud:EMPTY:WINDOW:3", + "keymap-item:Point Cloud:EMPTY:WINDOW:4", + "keymap-item:Point Cloud:EMPTY:WINDOW:5", + "keymap-item:Point Cloud:EMPTY:WINDOW:6", + "keymap-item:Point Cloud:EMPTY:WINDOW:7", + "keymap-item:Point Cloud:EMPTY:WINDOW:8", + "keymap-item:Point Cloud:EMPTY:WINDOW:9", + "keymap-item:Pose:EMPTY:WINDOW:0", + "keymap-item:Pose:EMPTY:WINDOW:1", + "keymap-item:Pose:EMPTY:WINDOW:10", + "keymap-item:Pose:EMPTY:WINDOW:11", + "keymap-item:Pose:EMPTY:WINDOW:12", + "keymap-item:Pose:EMPTY:WINDOW:13", + "keymap-item:Pose:EMPTY:WINDOW:14", + "keymap-item:Pose:EMPTY:WINDOW:15", + "keymap-item:Pose:EMPTY:WINDOW:16", + "keymap-item:Pose:EMPTY:WINDOW:17", + "keymap-item:Pose:EMPTY:WINDOW:18", + "keymap-item:Pose:EMPTY:WINDOW:19", + "keymap-item:Pose:EMPTY:WINDOW:2", + "keymap-item:Pose:EMPTY:WINDOW:20", + "keymap-item:Pose:EMPTY:WINDOW:21", + "keymap-item:Pose:EMPTY:WINDOW:22", + "keymap-item:Pose:EMPTY:WINDOW:23", + "keymap-item:Pose:EMPTY:WINDOW:24", + "keymap-item:Pose:EMPTY:WINDOW:25", + "keymap-item:Pose:EMPTY:WINDOW:26", + "keymap-item:Pose:EMPTY:WINDOW:27", + "keymap-item:Pose:EMPTY:WINDOW:28", + "keymap-item:Pose:EMPTY:WINDOW:29", + "keymap-item:Pose:EMPTY:WINDOW:3", + "keymap-item:Pose:EMPTY:WINDOW:30", + "keymap-item:Pose:EMPTY:WINDOW:31", + "keymap-item:Pose:EMPTY:WINDOW:32", + "keymap-item:Pose:EMPTY:WINDOW:33", + "keymap-item:Pose:EMPTY:WINDOW:34", + "keymap-item:Pose:EMPTY:WINDOW:35", + "keymap-item:Pose:EMPTY:WINDOW:36", + "keymap-item:Pose:EMPTY:WINDOW:37", + "keymap-item:Pose:EMPTY:WINDOW:38", + "keymap-item:Pose:EMPTY:WINDOW:39", + "keymap-item:Pose:EMPTY:WINDOW:4", + "keymap-item:Pose:EMPTY:WINDOW:40", + "keymap-item:Pose:EMPTY:WINDOW:41", + "keymap-item:Pose:EMPTY:WINDOW:42", + "keymap-item:Pose:EMPTY:WINDOW:43", + "keymap-item:Pose:EMPTY:WINDOW:44", + "keymap-item:Pose:EMPTY:WINDOW:45", + "keymap-item:Pose:EMPTY:WINDOW:46", + "keymap-item:Pose:EMPTY:WINDOW:47", + "keymap-item:Pose:EMPTY:WINDOW:48", + "keymap-item:Pose:EMPTY:WINDOW:49", + "keymap-item:Pose:EMPTY:WINDOW:5", + "keymap-item:Pose:EMPTY:WINDOW:50", + "keymap-item:Pose:EMPTY:WINDOW:51", + "keymap-item:Pose:EMPTY:WINDOW:52", + "keymap-item:Pose:EMPTY:WINDOW:6", + "keymap-item:Pose:EMPTY:WINDOW:7", + "keymap-item:Pose:EMPTY:WINDOW:8", + "keymap-item:Pose:EMPTY:WINDOW:9", + "keymap-item:Preferences:PREFERENCES:WINDOW:0", + "keymap-item:Preferences:PREFERENCES:WINDOW:1", + "keymap-item:Preferences_nav:PREFERENCES:UI:0", + "keymap-item:Preferences_nav:PREFERENCES:UI:1", + "keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:10", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:11", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:12", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:13", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:14", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:15", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:16", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:17", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:18", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:19", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:20", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:21", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:22", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:23", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:24", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:25", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:26", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:27", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:28", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:29", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:30", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:31", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:32", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:33", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:34", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:35", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:36", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:37", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:38", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:39", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:40", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:41", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:42", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:43", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:44", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:45", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:46", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:47", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:48", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:49", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:5", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:50", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:51", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:52", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:53", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:54", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:55", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:56", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:57", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:58", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:59", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:6", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:60", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:61", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:62", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:63", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:64", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:65", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:66", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:67", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:68", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:69", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:7", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:70", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:71", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:72", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:73", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:74", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:75", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:76", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:77", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:78", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:79", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:8", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:80", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:81", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:82", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:83", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:84", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:85", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:86", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:87", + "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:9", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:0", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:1", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:10", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:11", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:12", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:13", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:2", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:3", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:4", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:5", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:6", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:7", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:8", + "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:9", + "keymap-item:Property Editor:PROPERTIES:WINDOW:0", + "keymap-item:Property Editor:PROPERTIES:WINDOW:1", + "keymap-item:Property Editor:PROPERTIES:WINDOW:10", + "keymap-item:Property Editor:PROPERTIES:WINDOW:11", + "keymap-item:Property Editor:PROPERTIES:WINDOW:12", + "keymap-item:Property Editor:PROPERTIES:WINDOW:13", + "keymap-item:Property Editor:PROPERTIES:WINDOW:14", + "keymap-item:Property Editor:PROPERTIES:WINDOW:15", + "keymap-item:Property Editor:PROPERTIES:WINDOW:16", + "keymap-item:Property Editor:PROPERTIES:WINDOW:17", + "keymap-item:Property Editor:PROPERTIES:WINDOW:18", + "keymap-item:Property Editor:PROPERTIES:WINDOW:19", + "keymap-item:Property Editor:PROPERTIES:WINDOW:2", + "keymap-item:Property Editor:PROPERTIES:WINDOW:3", + "keymap-item:Property Editor:PROPERTIES:WINDOW:4", + "keymap-item:Property Editor:PROPERTIES:WINDOW:5", + "keymap-item:Property Editor:PROPERTIES:WINDOW:6", + "keymap-item:Property Editor:PROPERTIES:WINDOW:7", + "keymap-item:Property Editor:PROPERTIES:WINDOW:8", + "keymap-item:Property Editor:PROPERTIES:WINDOW:9", + "keymap-item:Region Context Menu:EMPTY:WINDOW:0", + "keymap-item:Screen Editing:EMPTY:WINDOW:0", + "keymap-item:Screen Editing:EMPTY:WINDOW:1", + "keymap-item:Screen Editing:EMPTY:WINDOW:10", + "keymap-item:Screen Editing:EMPTY:WINDOW:11", + "keymap-item:Screen Editing:EMPTY:WINDOW:12", + "keymap-item:Screen Editing:EMPTY:WINDOW:13", + "keymap-item:Screen Editing:EMPTY:WINDOW:2", + "keymap-item:Screen Editing:EMPTY:WINDOW:3", + "keymap-item:Screen Editing:EMPTY:WINDOW:4", + "keymap-item:Screen Editing:EMPTY:WINDOW:5", + "keymap-item:Screen Editing:EMPTY:WINDOW:6", + "keymap-item:Screen Editing:EMPTY:WINDOW:7", + "keymap-item:Screen Editing:EMPTY:WINDOW:8", + "keymap-item:Screen Editing:EMPTY:WINDOW:9", + "keymap-item:Screen:EMPTY:WINDOW:0", + "keymap-item:Screen:EMPTY:WINDOW:1", + "keymap-item:Screen:EMPTY:WINDOW:10", + "keymap-item:Screen:EMPTY:WINDOW:11", + "keymap-item:Screen:EMPTY:WINDOW:12", + "keymap-item:Screen:EMPTY:WINDOW:13", + "keymap-item:Screen:EMPTY:WINDOW:14", + "keymap-item:Screen:EMPTY:WINDOW:15", + "keymap-item:Screen:EMPTY:WINDOW:16", + "keymap-item:Screen:EMPTY:WINDOW:17", + "keymap-item:Screen:EMPTY:WINDOW:18", + "keymap-item:Screen:EMPTY:WINDOW:19", + "keymap-item:Screen:EMPTY:WINDOW:2", + "keymap-item:Screen:EMPTY:WINDOW:20", + "keymap-item:Screen:EMPTY:WINDOW:21", + "keymap-item:Screen:EMPTY:WINDOW:22", + "keymap-item:Screen:EMPTY:WINDOW:23", + "keymap-item:Screen:EMPTY:WINDOW:24", + "keymap-item:Screen:EMPTY:WINDOW:25", + "keymap-item:Screen:EMPTY:WINDOW:3", + "keymap-item:Screen:EMPTY:WINDOW:4", + "keymap-item:Screen:EMPTY:WINDOW:5", + "keymap-item:Screen:EMPTY:WINDOW:6", + "keymap-item:Screen:EMPTY:WINDOW:7", + "keymap-item:Screen:EMPTY:WINDOW:8", + "keymap-item:Screen:EMPTY:WINDOW:9", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:0", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:1", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:10", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:11", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:12", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:13", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:14", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:15", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:2", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:3", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:4", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:5", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:6", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:7", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:8", + "keymap-item:Sculpt Curves:EMPTY:WINDOW:9", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:0", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:1", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:10", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:11", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:12", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:13", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:14", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:15", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:16", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:17", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:18", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:19", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:2", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:20", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:21", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:22", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:23", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:24", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:3", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:4", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:5", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:6", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:7", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:8", + "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:9", + "keymap-item:Sculpt:EMPTY:WINDOW:0", + "keymap-item:Sculpt:EMPTY:WINDOW:1", + "keymap-item:Sculpt:EMPTY:WINDOW:10", + "keymap-item:Sculpt:EMPTY:WINDOW:11", + "keymap-item:Sculpt:EMPTY:WINDOW:12", + "keymap-item:Sculpt:EMPTY:WINDOW:13", + "keymap-item:Sculpt:EMPTY:WINDOW:14", + "keymap-item:Sculpt:EMPTY:WINDOW:15", + "keymap-item:Sculpt:EMPTY:WINDOW:16", + "keymap-item:Sculpt:EMPTY:WINDOW:17", + "keymap-item:Sculpt:EMPTY:WINDOW:18", + "keymap-item:Sculpt:EMPTY:WINDOW:19", + "keymap-item:Sculpt:EMPTY:WINDOW:2", + "keymap-item:Sculpt:EMPTY:WINDOW:20", + "keymap-item:Sculpt:EMPTY:WINDOW:21", + "keymap-item:Sculpt:EMPTY:WINDOW:22", + "keymap-item:Sculpt:EMPTY:WINDOW:23", + "keymap-item:Sculpt:EMPTY:WINDOW:24", + "keymap-item:Sculpt:EMPTY:WINDOW:25", + "keymap-item:Sculpt:EMPTY:WINDOW:26", + "keymap-item:Sculpt:EMPTY:WINDOW:27", + "keymap-item:Sculpt:EMPTY:WINDOW:28", + "keymap-item:Sculpt:EMPTY:WINDOW:29", + "keymap-item:Sculpt:EMPTY:WINDOW:3", + "keymap-item:Sculpt:EMPTY:WINDOW:30", + "keymap-item:Sculpt:EMPTY:WINDOW:31", + "keymap-item:Sculpt:EMPTY:WINDOW:32", + "keymap-item:Sculpt:EMPTY:WINDOW:33", + "keymap-item:Sculpt:EMPTY:WINDOW:34", + "keymap-item:Sculpt:EMPTY:WINDOW:35", + "keymap-item:Sculpt:EMPTY:WINDOW:36", + "keymap-item:Sculpt:EMPTY:WINDOW:37", + "keymap-item:Sculpt:EMPTY:WINDOW:38", + "keymap-item:Sculpt:EMPTY:WINDOW:39", + "keymap-item:Sculpt:EMPTY:WINDOW:4", + "keymap-item:Sculpt:EMPTY:WINDOW:40", + "keymap-item:Sculpt:EMPTY:WINDOW:41", + "keymap-item:Sculpt:EMPTY:WINDOW:42", + "keymap-item:Sculpt:EMPTY:WINDOW:43", + "keymap-item:Sculpt:EMPTY:WINDOW:44", + "keymap-item:Sculpt:EMPTY:WINDOW:45", + "keymap-item:Sculpt:EMPTY:WINDOW:46", + "keymap-item:Sculpt:EMPTY:WINDOW:47", + "keymap-item:Sculpt:EMPTY:WINDOW:48", + "keymap-item:Sculpt:EMPTY:WINDOW:49", + "keymap-item:Sculpt:EMPTY:WINDOW:5", + "keymap-item:Sculpt:EMPTY:WINDOW:50", + "keymap-item:Sculpt:EMPTY:WINDOW:51", + "keymap-item:Sculpt:EMPTY:WINDOW:52", + "keymap-item:Sculpt:EMPTY:WINDOW:53", + "keymap-item:Sculpt:EMPTY:WINDOW:54", + "keymap-item:Sculpt:EMPTY:WINDOW:55", + "keymap-item:Sculpt:EMPTY:WINDOW:56", + "keymap-item:Sculpt:EMPTY:WINDOW:57", + "keymap-item:Sculpt:EMPTY:WINDOW:58", + "keymap-item:Sculpt:EMPTY:WINDOW:59", + "keymap-item:Sculpt:EMPTY:WINDOW:6", + "keymap-item:Sculpt:EMPTY:WINDOW:60", + "keymap-item:Sculpt:EMPTY:WINDOW:61", + "keymap-item:Sculpt:EMPTY:WINDOW:62", + "keymap-item:Sculpt:EMPTY:WINDOW:63", + "keymap-item:Sculpt:EMPTY:WINDOW:64", + "keymap-item:Sculpt:EMPTY:WINDOW:65", + "keymap-item:Sculpt:EMPTY:WINDOW:66", + "keymap-item:Sculpt:EMPTY:WINDOW:7", + "keymap-item:Sculpt:EMPTY:WINDOW:8", + "keymap-item:Sculpt:EMPTY:WINDOW:9", + "keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:5", + "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:5", + "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:5", + "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:10", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:11", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:12", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:13", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:14", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:15", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:16", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:17", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:18", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:19", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:20", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:21", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:22", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:23", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:24", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:25", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:26", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:27", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:28", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:29", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:30", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:31", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:32", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:33", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:34", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:35", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:36", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:37", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:38", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:39", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:40", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:41", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:42", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:43", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:44", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:45", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:46", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:47", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:48", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:49", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:5", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:50", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:51", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:52", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:53", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:54", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:55", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:56", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:57", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:58", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:59", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:6", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:60", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:61", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:62", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:63", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:64", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:65", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:66", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:67", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:68", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:69", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:7", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:70", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:71", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:72", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:73", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:74", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:75", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:76", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:77", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:78", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:79", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:8", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:80", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:81", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:82", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:83", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:84", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:85", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:86", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:87", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:88", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:89", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:9", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:90", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:91", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:92", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:93", + "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:94", + "keymap-item:Slip Modal:EMPTY:WINDOW:0", + "keymap-item:Slip Modal:EMPTY:WINDOW:1", + "keymap-item:Slip Modal:EMPTY:WINDOW:10", + "keymap-item:Slip Modal:EMPTY:WINDOW:11", + "keymap-item:Slip Modal:EMPTY:WINDOW:2", + "keymap-item:Slip Modal:EMPTY:WINDOW:3", + "keymap-item:Slip Modal:EMPTY:WINDOW:4", + "keymap-item:Slip Modal:EMPTY:WINDOW:5", + "keymap-item:Slip Modal:EMPTY:WINDOW:6", + "keymap-item:Slip Modal:EMPTY:WINDOW:7", + "keymap-item:Slip Modal:EMPTY:WINDOW:8", + "keymap-item:Slip Modal:EMPTY:WINDOW:9", + "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:0", + "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:1", + "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:2", + "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:3", + "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:4", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:0", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:1", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:2", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:3", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:4", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:5", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:6", + "keymap-item:Standard Modal Map:EMPTY:WINDOW:7", + "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:0", + "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:1", + "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:2", + "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:3", + "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:4", + "keymap-item:Text:TEXT_EDITOR:WINDOW:0", + "keymap-item:Text:TEXT_EDITOR:WINDOW:1", + "keymap-item:Text:TEXT_EDITOR:WINDOW:10", + "keymap-item:Text:TEXT_EDITOR:WINDOW:11", + "keymap-item:Text:TEXT_EDITOR:WINDOW:12", + "keymap-item:Text:TEXT_EDITOR:WINDOW:13", + "keymap-item:Text:TEXT_EDITOR:WINDOW:14", + "keymap-item:Text:TEXT_EDITOR:WINDOW:15", + "keymap-item:Text:TEXT_EDITOR:WINDOW:16", + "keymap-item:Text:TEXT_EDITOR:WINDOW:17", + "keymap-item:Text:TEXT_EDITOR:WINDOW:18", + "keymap-item:Text:TEXT_EDITOR:WINDOW:19", + "keymap-item:Text:TEXT_EDITOR:WINDOW:2", + "keymap-item:Text:TEXT_EDITOR:WINDOW:20", + "keymap-item:Text:TEXT_EDITOR:WINDOW:21", + "keymap-item:Text:TEXT_EDITOR:WINDOW:22", + "keymap-item:Text:TEXT_EDITOR:WINDOW:23", + "keymap-item:Text:TEXT_EDITOR:WINDOW:24", + "keymap-item:Text:TEXT_EDITOR:WINDOW:25", + "keymap-item:Text:TEXT_EDITOR:WINDOW:26", + "keymap-item:Text:TEXT_EDITOR:WINDOW:27", + "keymap-item:Text:TEXT_EDITOR:WINDOW:28", + "keymap-item:Text:TEXT_EDITOR:WINDOW:29", + "keymap-item:Text:TEXT_EDITOR:WINDOW:3", + "keymap-item:Text:TEXT_EDITOR:WINDOW:30", + "keymap-item:Text:TEXT_EDITOR:WINDOW:31", + "keymap-item:Text:TEXT_EDITOR:WINDOW:32", + "keymap-item:Text:TEXT_EDITOR:WINDOW:33", + "keymap-item:Text:TEXT_EDITOR:WINDOW:34", + "keymap-item:Text:TEXT_EDITOR:WINDOW:35", + "keymap-item:Text:TEXT_EDITOR:WINDOW:36", + "keymap-item:Text:TEXT_EDITOR:WINDOW:37", + "keymap-item:Text:TEXT_EDITOR:WINDOW:38", + "keymap-item:Text:TEXT_EDITOR:WINDOW:39", + "keymap-item:Text:TEXT_EDITOR:WINDOW:4", + "keymap-item:Text:TEXT_EDITOR:WINDOW:40", + "keymap-item:Text:TEXT_EDITOR:WINDOW:41", + "keymap-item:Text:TEXT_EDITOR:WINDOW:42", + "keymap-item:Text:TEXT_EDITOR:WINDOW:43", + "keymap-item:Text:TEXT_EDITOR:WINDOW:44", + "keymap-item:Text:TEXT_EDITOR:WINDOW:45", + "keymap-item:Text:TEXT_EDITOR:WINDOW:46", + "keymap-item:Text:TEXT_EDITOR:WINDOW:47", + "keymap-item:Text:TEXT_EDITOR:WINDOW:48", + "keymap-item:Text:TEXT_EDITOR:WINDOW:49", + "keymap-item:Text:TEXT_EDITOR:WINDOW:5", + "keymap-item:Text:TEXT_EDITOR:WINDOW:50", + "keymap-item:Text:TEXT_EDITOR:WINDOW:51", + "keymap-item:Text:TEXT_EDITOR:WINDOW:52", + "keymap-item:Text:TEXT_EDITOR:WINDOW:53", + "keymap-item:Text:TEXT_EDITOR:WINDOW:54", + "keymap-item:Text:TEXT_EDITOR:WINDOW:55", + "keymap-item:Text:TEXT_EDITOR:WINDOW:56", + "keymap-item:Text:TEXT_EDITOR:WINDOW:57", + "keymap-item:Text:TEXT_EDITOR:WINDOW:58", + "keymap-item:Text:TEXT_EDITOR:WINDOW:59", + "keymap-item:Text:TEXT_EDITOR:WINDOW:6", + "keymap-item:Text:TEXT_EDITOR:WINDOW:60", + "keymap-item:Text:TEXT_EDITOR:WINDOW:61", + "keymap-item:Text:TEXT_EDITOR:WINDOW:62", + "keymap-item:Text:TEXT_EDITOR:WINDOW:63", + "keymap-item:Text:TEXT_EDITOR:WINDOW:64", + "keymap-item:Text:TEXT_EDITOR:WINDOW:65", + "keymap-item:Text:TEXT_EDITOR:WINDOW:66", + "keymap-item:Text:TEXT_EDITOR:WINDOW:67", + "keymap-item:Text:TEXT_EDITOR:WINDOW:68", + "keymap-item:Text:TEXT_EDITOR:WINDOW:69", + "keymap-item:Text:TEXT_EDITOR:WINDOW:7", + "keymap-item:Text:TEXT_EDITOR:WINDOW:70", + "keymap-item:Text:TEXT_EDITOR:WINDOW:8", + "keymap-item:Text:TEXT_EDITOR:WINDOW:9", + "keymap-item:Time Scrub:EMPTY:WINDOW:0", + "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:0", + "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:1", + "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:2", + "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:3", + "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:4", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:0", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:1", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:2", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:3", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:4", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:5", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:6", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:7", + "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:8", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:0", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:1", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:10", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:11", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:12", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:13", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:14", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:15", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:16", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:17", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:18", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:19", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:2", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:20", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:21", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:22", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:23", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:24", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:25", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:26", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:27", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:28", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:29", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:3", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:30", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:31", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:32", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:33", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:34", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:35", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:36", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:37", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:38", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:39", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:4", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:40", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:41", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:42", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:43", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:44", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:45", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:46", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:47", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:48", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:49", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:5", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:50", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:51", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:52", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:53", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:54", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:55", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:6", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:7", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:8", + "keymap-item:Transform Modal Map:EMPTY:WINDOW:9", + "keymap-item:UV Editor:EMPTY:WINDOW:0", + "keymap-item:UV Editor:EMPTY:WINDOW:1", + "keymap-item:UV Editor:EMPTY:WINDOW:10", + "keymap-item:UV Editor:EMPTY:WINDOW:11", + "keymap-item:UV Editor:EMPTY:WINDOW:12", + "keymap-item:UV Editor:EMPTY:WINDOW:13", + "keymap-item:UV Editor:EMPTY:WINDOW:14", + "keymap-item:UV Editor:EMPTY:WINDOW:15", + "keymap-item:UV Editor:EMPTY:WINDOW:16", + "keymap-item:UV Editor:EMPTY:WINDOW:17", + "keymap-item:UV Editor:EMPTY:WINDOW:18", + "keymap-item:UV Editor:EMPTY:WINDOW:19", + "keymap-item:UV Editor:EMPTY:WINDOW:2", + "keymap-item:UV Editor:EMPTY:WINDOW:20", + "keymap-item:UV Editor:EMPTY:WINDOW:21", + "keymap-item:UV Editor:EMPTY:WINDOW:22", + "keymap-item:UV Editor:EMPTY:WINDOW:23", + "keymap-item:UV Editor:EMPTY:WINDOW:24", + "keymap-item:UV Editor:EMPTY:WINDOW:25", + "keymap-item:UV Editor:EMPTY:WINDOW:26", + "keymap-item:UV Editor:EMPTY:WINDOW:27", + "keymap-item:UV Editor:EMPTY:WINDOW:28", + "keymap-item:UV Editor:EMPTY:WINDOW:29", + "keymap-item:UV Editor:EMPTY:WINDOW:3", + "keymap-item:UV Editor:EMPTY:WINDOW:30", + "keymap-item:UV Editor:EMPTY:WINDOW:31", + "keymap-item:UV Editor:EMPTY:WINDOW:32", + "keymap-item:UV Editor:EMPTY:WINDOW:33", + "keymap-item:UV Editor:EMPTY:WINDOW:34", + "keymap-item:UV Editor:EMPTY:WINDOW:35", + "keymap-item:UV Editor:EMPTY:WINDOW:36", + "keymap-item:UV Editor:EMPTY:WINDOW:37", + "keymap-item:UV Editor:EMPTY:WINDOW:38", + "keymap-item:UV Editor:EMPTY:WINDOW:39", + "keymap-item:UV Editor:EMPTY:WINDOW:4", + "keymap-item:UV Editor:EMPTY:WINDOW:40", + "keymap-item:UV Editor:EMPTY:WINDOW:41", + "keymap-item:UV Editor:EMPTY:WINDOW:42", + "keymap-item:UV Editor:EMPTY:WINDOW:43", + "keymap-item:UV Editor:EMPTY:WINDOW:44", + "keymap-item:UV Editor:EMPTY:WINDOW:45", + "keymap-item:UV Editor:EMPTY:WINDOW:46", + "keymap-item:UV Editor:EMPTY:WINDOW:47", + "keymap-item:UV Editor:EMPTY:WINDOW:48", + "keymap-item:UV Editor:EMPTY:WINDOW:49", + "keymap-item:UV Editor:EMPTY:WINDOW:5", + "keymap-item:UV Editor:EMPTY:WINDOW:50", + "keymap-item:UV Editor:EMPTY:WINDOW:51", + "keymap-item:UV Editor:EMPTY:WINDOW:52", + "keymap-item:UV Editor:EMPTY:WINDOW:53", + "keymap-item:UV Editor:EMPTY:WINDOW:54", + "keymap-item:UV Editor:EMPTY:WINDOW:55", + "keymap-item:UV Editor:EMPTY:WINDOW:56", + "keymap-item:UV Editor:EMPTY:WINDOW:57", + "keymap-item:UV Editor:EMPTY:WINDOW:58", + "keymap-item:UV Editor:EMPTY:WINDOW:59", + "keymap-item:UV Editor:EMPTY:WINDOW:6", + "keymap-item:UV Editor:EMPTY:WINDOW:60", + "keymap-item:UV Editor:EMPTY:WINDOW:61", + "keymap-item:UV Editor:EMPTY:WINDOW:62", + "keymap-item:UV Editor:EMPTY:WINDOW:63", + "keymap-item:UV Editor:EMPTY:WINDOW:64", + "keymap-item:UV Editor:EMPTY:WINDOW:65", + "keymap-item:UV Editor:EMPTY:WINDOW:66", + "keymap-item:UV Editor:EMPTY:WINDOW:67", + "keymap-item:UV Editor:EMPTY:WINDOW:68", + "keymap-item:UV Editor:EMPTY:WINDOW:69", + "keymap-item:UV Editor:EMPTY:WINDOW:7", + "keymap-item:UV Editor:EMPTY:WINDOW:70", + "keymap-item:UV Editor:EMPTY:WINDOW:71", + "keymap-item:UV Editor:EMPTY:WINDOW:72", + "keymap-item:UV Editor:EMPTY:WINDOW:73", + "keymap-item:UV Editor:EMPTY:WINDOW:74", + "keymap-item:UV Editor:EMPTY:WINDOW:75", + "keymap-item:UV Editor:EMPTY:WINDOW:76", + "keymap-item:UV Editor:EMPTY:WINDOW:77", + "keymap-item:UV Editor:EMPTY:WINDOW:78", + "keymap-item:UV Editor:EMPTY:WINDOW:79", + "keymap-item:UV Editor:EMPTY:WINDOW:8", + "keymap-item:UV Editor:EMPTY:WINDOW:80", + "keymap-item:UV Editor:EMPTY:WINDOW:81", + "keymap-item:UV Editor:EMPTY:WINDOW:82", + "keymap-item:UV Editor:EMPTY:WINDOW:83", + "keymap-item:UV Editor:EMPTY:WINDOW:84", + "keymap-item:UV Editor:EMPTY:WINDOW:85", + "keymap-item:UV Editor:EMPTY:WINDOW:86", + "keymap-item:UV Editor:EMPTY:WINDOW:87", + "keymap-item:UV Editor:EMPTY:WINDOW:9", + "keymap-item:User Interface:EMPTY:WINDOW:0", + "keymap-item:User Interface:EMPTY:WINDOW:1", + "keymap-item:User Interface:EMPTY:WINDOW:10", + "keymap-item:User Interface:EMPTY:WINDOW:11", + "keymap-item:User Interface:EMPTY:WINDOW:12", + "keymap-item:User Interface:EMPTY:WINDOW:13", + "keymap-item:User Interface:EMPTY:WINDOW:14", + "keymap-item:User Interface:EMPTY:WINDOW:15", + "keymap-item:User Interface:EMPTY:WINDOW:16", + "keymap-item:User Interface:EMPTY:WINDOW:17", + "keymap-item:User Interface:EMPTY:WINDOW:18", + "keymap-item:User Interface:EMPTY:WINDOW:19", + "keymap-item:User Interface:EMPTY:WINDOW:2", + "keymap-item:User Interface:EMPTY:WINDOW:20", + "keymap-item:User Interface:EMPTY:WINDOW:21", + "keymap-item:User Interface:EMPTY:WINDOW:22", + "keymap-item:User Interface:EMPTY:WINDOW:23", + "keymap-item:User Interface:EMPTY:WINDOW:24", + "keymap-item:User Interface:EMPTY:WINDOW:25", + "keymap-item:User Interface:EMPTY:WINDOW:26", + "keymap-item:User Interface:EMPTY:WINDOW:27", + "keymap-item:User Interface:EMPTY:WINDOW:28", + "keymap-item:User Interface:EMPTY:WINDOW:29", + "keymap-item:User Interface:EMPTY:WINDOW:3", + "keymap-item:User Interface:EMPTY:WINDOW:30", + "keymap-item:User Interface:EMPTY:WINDOW:31", + "keymap-item:User Interface:EMPTY:WINDOW:32", + "keymap-item:User Interface:EMPTY:WINDOW:4", + "keymap-item:User Interface:EMPTY:WINDOW:5", + "keymap-item:User Interface:EMPTY:WINDOW:6", + "keymap-item:User Interface:EMPTY:WINDOW:7", + "keymap-item:User Interface:EMPTY:WINDOW:8", + "keymap-item:User Interface:EMPTY:WINDOW:9", + "keymap-item:Vertex Paint:EMPTY:WINDOW:0", + "keymap-item:Vertex Paint:EMPTY:WINDOW:1", + "keymap-item:Vertex Paint:EMPTY:WINDOW:10", + "keymap-item:Vertex Paint:EMPTY:WINDOW:11", + "keymap-item:Vertex Paint:EMPTY:WINDOW:12", + "keymap-item:Vertex Paint:EMPTY:WINDOW:13", + "keymap-item:Vertex Paint:EMPTY:WINDOW:14", + "keymap-item:Vertex Paint:EMPTY:WINDOW:15", + "keymap-item:Vertex Paint:EMPTY:WINDOW:16", + "keymap-item:Vertex Paint:EMPTY:WINDOW:17", + "keymap-item:Vertex Paint:EMPTY:WINDOW:18", + "keymap-item:Vertex Paint:EMPTY:WINDOW:19", + "keymap-item:Vertex Paint:EMPTY:WINDOW:2", + "keymap-item:Vertex Paint:EMPTY:WINDOW:20", + "keymap-item:Vertex Paint:EMPTY:WINDOW:21", + "keymap-item:Vertex Paint:EMPTY:WINDOW:22", + "keymap-item:Vertex Paint:EMPTY:WINDOW:23", + "keymap-item:Vertex Paint:EMPTY:WINDOW:24", + "keymap-item:Vertex Paint:EMPTY:WINDOW:25", + "keymap-item:Vertex Paint:EMPTY:WINDOW:3", + "keymap-item:Vertex Paint:EMPTY:WINDOW:4", + "keymap-item:Vertex Paint:EMPTY:WINDOW:5", + "keymap-item:Vertex Paint:EMPTY:WINDOW:6", + "keymap-item:Vertex Paint:EMPTY:WINDOW:7", + "keymap-item:Vertex Paint:EMPTY:WINDOW:8", + "keymap-item:Vertex Paint:EMPTY:WINDOW:9", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:0", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:1", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:2", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:3", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:4", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:5", + "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:6", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:0", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:1", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:10", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:11", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:12", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:13", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:2", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:3", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:4", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:5", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:6", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:7", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:8", + "keymap-item:View2D Buttons List:EMPTY:WINDOW:9", + "keymap-item:View2D:EMPTY:WINDOW:0", + "keymap-item:View2D:EMPTY:WINDOW:1", + "keymap-item:View2D:EMPTY:WINDOW:10", + "keymap-item:View2D:EMPTY:WINDOW:11", + "keymap-item:View2D:EMPTY:WINDOW:12", + "keymap-item:View2D:EMPTY:WINDOW:13", + "keymap-item:View2D:EMPTY:WINDOW:14", + "keymap-item:View2D:EMPTY:WINDOW:15", + "keymap-item:View2D:EMPTY:WINDOW:16", + "keymap-item:View2D:EMPTY:WINDOW:17", + "keymap-item:View2D:EMPTY:WINDOW:18", + "keymap-item:View2D:EMPTY:WINDOW:19", + "keymap-item:View2D:EMPTY:WINDOW:2", + "keymap-item:View2D:EMPTY:WINDOW:20", + "keymap-item:View2D:EMPTY:WINDOW:21", + "keymap-item:View2D:EMPTY:WINDOW:22", + "keymap-item:View2D:EMPTY:WINDOW:23", + "keymap-item:View2D:EMPTY:WINDOW:24", + "keymap-item:View2D:EMPTY:WINDOW:3", + "keymap-item:View2D:EMPTY:WINDOW:4", + "keymap-item:View2D:EMPTY:WINDOW:5", + "keymap-item:View2D:EMPTY:WINDOW:6", + "keymap-item:View2D:EMPTY:WINDOW:7", + "keymap-item:View2D:EMPTY:WINDOW:8", + "keymap-item:View2D:EMPTY:WINDOW:9", + "keymap-item:View3D Dolly Modal:EMPTY:WINDOW:0", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:0", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:1", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:10", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:11", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:12", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:13", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:14", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:15", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:16", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:17", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:18", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:19", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:2", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:20", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:21", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:22", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:23", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:24", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:25", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:26", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:27", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:28", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:29", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:3", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:30", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:31", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:32", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:33", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:34", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:35", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:36", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:37", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:38", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:4", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:5", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:6", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:7", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:8", + "keymap-item:View3D Fly Modal:EMPTY:WINDOW:9", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:0", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:1", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:10", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:11", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:12", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:13", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:2", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:3", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:4", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:5", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:6", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:7", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:8", + "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:9", + "keymap-item:View3D Move Modal:EMPTY:WINDOW:0", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:0", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:1", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:10", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:11", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:2", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:3", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:4", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:5", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:6", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:7", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:8", + "keymap-item:View3D Placement Modal:EMPTY:WINDOW:9", + "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:0", + "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:1", + "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:2", + "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:3", + "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:4", + "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:0", + "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:1", + "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:2", + "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:3", + "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:4", + "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:5", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:0", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:1", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:10", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:11", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:12", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:13", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:14", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:15", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:16", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:17", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:18", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:19", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:2", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:20", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:21", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:22", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:23", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:24", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:25", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:26", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:27", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:28", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:29", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:3", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:30", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:31", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:32", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:33", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:34", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:35", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:36", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:37", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:38", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:39", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:4", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:40", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:41", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:42", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:43", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:44", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:45", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:46", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:47", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:48", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:49", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:5", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:6", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:7", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:8", + "keymap-item:View3D Walk Modal:EMPTY:WINDOW:9", + "keymap-item:View3D Zoom Modal:EMPTY:WINDOW:0", + "keymap-item:Weight Paint:EMPTY:WINDOW:0", + "keymap-item:Weight Paint:EMPTY:WINDOW:1", + "keymap-item:Weight Paint:EMPTY:WINDOW:10", + "keymap-item:Weight Paint:EMPTY:WINDOW:11", + "keymap-item:Weight Paint:EMPTY:WINDOW:12", + "keymap-item:Weight Paint:EMPTY:WINDOW:13", + "keymap-item:Weight Paint:EMPTY:WINDOW:14", + "keymap-item:Weight Paint:EMPTY:WINDOW:15", + "keymap-item:Weight Paint:EMPTY:WINDOW:16", + "keymap-item:Weight Paint:EMPTY:WINDOW:17", + "keymap-item:Weight Paint:EMPTY:WINDOW:18", + "keymap-item:Weight Paint:EMPTY:WINDOW:19", + "keymap-item:Weight Paint:EMPTY:WINDOW:2", + "keymap-item:Weight Paint:EMPTY:WINDOW:20", + "keymap-item:Weight Paint:EMPTY:WINDOW:21", + "keymap-item:Weight Paint:EMPTY:WINDOW:22", + "keymap-item:Weight Paint:EMPTY:WINDOW:23", + "keymap-item:Weight Paint:EMPTY:WINDOW:24", + "keymap-item:Weight Paint:EMPTY:WINDOW:3", + "keymap-item:Weight Paint:EMPTY:WINDOW:4", + "keymap-item:Weight Paint:EMPTY:WINDOW:5", + "keymap-item:Weight Paint:EMPTY:WINDOW:6", + "keymap-item:Weight Paint:EMPTY:WINDOW:7", + "keymap-item:Weight Paint:EMPTY:WINDOW:8", + "keymap-item:Weight Paint:EMPTY:WINDOW:9", + "keymap-item:Window:EMPTY:WINDOW:0", + "keymap-item:Window:EMPTY:WINDOW:1", + "keymap-item:Window:EMPTY:WINDOW:10", + "keymap-item:Window:EMPTY:WINDOW:11", + "keymap-item:Window:EMPTY:WINDOW:12", + "keymap-item:Window:EMPTY:WINDOW:13", + "keymap-item:Window:EMPTY:WINDOW:14", + "keymap-item:Window:EMPTY:WINDOW:15", + "keymap-item:Window:EMPTY:WINDOW:16", + "keymap-item:Window:EMPTY:WINDOW:17", + "keymap-item:Window:EMPTY:WINDOW:18", + "keymap-item:Window:EMPTY:WINDOW:19", + "keymap-item:Window:EMPTY:WINDOW:2", + "keymap-item:Window:EMPTY:WINDOW:20", + "keymap-item:Window:EMPTY:WINDOW:21", + "keymap-item:Window:EMPTY:WINDOW:22", + "keymap-item:Window:EMPTY:WINDOW:23", + "keymap-item:Window:EMPTY:WINDOW:24", + "keymap-item:Window:EMPTY:WINDOW:25", + "keymap-item:Window:EMPTY:WINDOW:26", + "keymap-item:Window:EMPTY:WINDOW:27", + "keymap-item:Window:EMPTY:WINDOW:28", + "keymap-item:Window:EMPTY:WINDOW:29", + "keymap-item:Window:EMPTY:WINDOW:3", + "keymap-item:Window:EMPTY:WINDOW:30", + "keymap-item:Window:EMPTY:WINDOW:31", + "keymap-item:Window:EMPTY:WINDOW:32", + "keymap-item:Window:EMPTY:WINDOW:4", + "keymap-item:Window:EMPTY:WINDOW:5", + "keymap-item:Window:EMPTY:WINDOW:6", + "keymap-item:Window:EMPTY:WINDOW:7", + "keymap-item:Window:EMPTY:WINDOW:8", + "keymap-item:Window:EMPTY:WINDOW:9", + "keymap:3D View Generic:VIEW_3D:WINDOW", + "keymap:3D View Tool: Bend:VIEW_3D:WINDOW", + "keymap:3D View Tool: Breakdowner:VIEW_3D:WINDOW", + "keymap:3D View Tool: Cursor:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW", + "keymap:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW", + "keymap:3D View Tool: Measure:VIEW_3D:WINDOW", + "keymap:3D View Tool: Move:VIEW_3D:WINDOW", + "keymap:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW", + "keymap:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW", + "keymap:3D View Tool: Push:VIEW_3D:WINDOW", + "keymap:3D View Tool: Relax:VIEW_3D:WINDOW", + "keymap:3D View Tool: Rotate:VIEW_3D:WINDOW", + "keymap:3D View Tool: Scale:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW", + "keymap:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW", + "keymap:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "keymap:3D View Tool: Select Box:VIEW_3D:WINDOW", + "keymap:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "keymap:3D View Tool: Select Circle:VIEW_3D:WINDOW", + "keymap:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "keymap:3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "keymap:3D View Tool: Shear:VIEW_3D:WINDOW", + "keymap:3D View Tool: Transform:VIEW_3D:WINDOW", + "keymap:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "keymap:3D View Tool: Tweak:VIEW_3D:WINDOW", + "keymap:3D View:VIEW_3D:WINDOW", + "keymap:Animation Channels:EMPTY:WINDOW", + "keymap:Animation:EMPTY:WINDOW", + "keymap:Armature:EMPTY:WINDOW", + "keymap:Bevel Modal Map:EMPTY:WINDOW", + "keymap:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "keymap:Clip Editor:CLIP_EDITOR:WINDOW", + "keymap:Clip Graph Editor:CLIP_EDITOR:WINDOW", + "keymap:Clip Time Scrub:CLIP_EDITOR:PREVIEW", + "keymap:Clip:CLIP_EDITOR:WINDOW", + "keymap:Console:CONSOLE:WINDOW", + "keymap:Curve Pen Modal Map:EMPTY:WINDOW", + "keymap:Curve:EMPTY:WINDOW", + "keymap:Curves:EMPTY:WINDOW", + "keymap:Custom Normals Modal Map:EMPTY:WINDOW", + "keymap:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW", + "keymap:Dopesheet:DOPESHEET_EDITOR:WINDOW", + "keymap:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "keymap:Eyedropper Modal Map:EMPTY:WINDOW", + "keymap:File Browser Buttons:FILE_BROWSER:WINDOW", + "keymap:File Browser Main:FILE_BROWSER:WINDOW", + "keymap:File Browser:FILE_BROWSER:WINDOW", + "keymap:Fill Tool Modal Map:EMPTY:WINDOW", + "keymap:Font:EMPTY:WINDOW", + "keymap:Frames:EMPTY:WINDOW", + "keymap:Generic Gizmo Click Drag:EMPTY:WINDOW", + "keymap:Generic Gizmo Drag:EMPTY:WINDOW", + "keymap:Generic Gizmo Maybe Drag:EMPTY:WINDOW", + "keymap:Generic Gizmo Select:EMPTY:WINDOW", + "keymap:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "keymap:Generic Gizmo:EMPTY:WINDOW", + "keymap:Generic Tool: Annotate Eraser:EMPTY:WINDOW", + "keymap:Generic Tool: Annotate Line:EMPTY:WINDOW", + "keymap:Generic Tool: Annotate Polygon:EMPTY:WINDOW", + "keymap:Generic Tool: Annotate:EMPTY:WINDOW", + "keymap:Gesture Box:EMPTY:WINDOW", + "keymap:Gesture Lasso:EMPTY:WINDOW", + "keymap:Gesture Polyline:EMPTY:WINDOW", + "keymap:Gesture Straight Line:EMPTY:WINDOW", + "keymap:Gesture Zoom Border:EMPTY:WINDOW", + "keymap:Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "keymap:Graph Editor:GRAPH_EDITOR:WINDOW", + "keymap:Grease Pencil Brush Stroke:EMPTY:WINDOW", + "keymap:Grease Pencil Draw Mode:EMPTY:WINDOW", + "keymap:Grease Pencil Edit Mode:EMPTY:WINDOW", + "keymap:Grease Pencil Fill Tool:EMPTY:WINDOW", + "keymap:Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "keymap:Grease Pencil Selection:EMPTY:WINDOW", + "keymap:Grease Pencil Vertex Paint:EMPTY:WINDOW", + "keymap:Grease Pencil Weight Paint:EMPTY:WINDOW", + "keymap:Grease Pencil:EMPTY:WINDOW", + "keymap:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "keymap:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW", + "keymap:Image Generic:IMAGE_EDITOR:WINDOW", + "keymap:Image Paint:EMPTY:WINDOW", + "keymap:Image:IMAGE_EDITOR:WINDOW", + "keymap:Info:INFO:WINDOW", + "keymap:Interpolate Tool Modal Map:EMPTY:WINDOW", + "keymap:Knife Tool Modal Map:EMPTY:WINDOW", + "keymap:Lattice:EMPTY:WINDOW", + "keymap:Markers:EMPTY:WINDOW", + "keymap:Mask Editing:EMPTY:WINDOW", + "keymap:Mesh Filter Modal Map:EMPTY:WINDOW", + "keymap:Mesh:EMPTY:WINDOW", + "keymap:Metaball:EMPTY:WINDOW", + "keymap:NLA Editor:NLA_EDITOR:WINDOW", + "keymap:NLA Generic:NLA_EDITOR:WINDOW", + "keymap:NLA Tracks:NLA_EDITOR:WINDOW", + "keymap:Node Editor:NODE_EDITOR:WINDOW", + "keymap:Node Generic:NODE_EDITOR:WINDOW", + "keymap:Node Link Modal Map:EMPTY:WINDOW", + "keymap:Node Resize Modal Map:EMPTY:WINDOW", + "keymap:Node Tool: Add Reroute:NODE_EDITOR:WINDOW", + "keymap:Node Tool: Links Cut:NODE_EDITOR:WINDOW", + "keymap:Node Tool: Mute Links:NODE_EDITOR:WINDOW", + "keymap:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "keymap:Node Tool: Select Box:NODE_EDITOR:WINDOW", + "keymap:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW", + "keymap:Node Tool: Select Circle:NODE_EDITOR:WINDOW", + "keymap:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW", + "keymap:Node Tool: Select Lasso:NODE_EDITOR:WINDOW", + "keymap:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "keymap:Node Tool: Tweak:NODE_EDITOR:WINDOW", + "keymap:Object Mode:EMPTY:WINDOW", + "keymap:Object Non-modal:EMPTY:WINDOW", + "keymap:Outliner:OUTLINER:WINDOW", + "keymap:Paint Curve:EMPTY:WINDOW", + "keymap:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "keymap:Paint Stroke Modal:EMPTY:WINDOW", + "keymap:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "keymap:Particle:EMPTY:WINDOW", + "keymap:Pen Tool Modal Map:EMPTY:WINDOW", + "keymap:Point Cloud:EMPTY:WINDOW", + "keymap:Pose:EMPTY:WINDOW", + "keymap:Preferences:PREFERENCES:WINDOW", + "keymap:Preferences_nav:PREFERENCES:UI", + "keymap:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "keymap:Preview:SEQUENCE_EDITOR:WINDOW", + "keymap:Primitive Tool Modal Map:EMPTY:WINDOW", + "keymap:Property Editor:PROPERTIES:WINDOW", + "keymap:Region Context Menu:EMPTY:WINDOW", + "keymap:Screen Editing:EMPTY:WINDOW", + "keymap:Screen:EMPTY:WINDOW", + "keymap:Sculpt Curves:EMPTY:WINDOW", + "keymap:Sculpt Expand Modal:EMPTY:WINDOW", + "keymap:Sculpt:EMPTY:WINDOW", + "keymap:Sequencer Channels:SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW", + "keymap:Sequencer:SEQUENCE_EDITOR:WINDOW", + "keymap:Slip Modal:EMPTY:WINDOW", + "keymap:Spreadsheet Generic:SPREADSHEET:WINDOW", + "keymap:Standard Modal Map:EMPTY:WINDOW", + "keymap:Text Generic:TEXT_EDITOR:WINDOW", + "keymap:Text:TEXT_EDITOR:WINDOW", + "keymap:Time Scrub:EMPTY:WINDOW", + "keymap:Toolbar Popup:EMPTY:TEMPORARY", + "keymap:Transform Axis Target Modal Map:EMPTY:WINDOW", + "keymap:Transform Modal Map:EMPTY:WINDOW", + "keymap:UV Editor:EMPTY:WINDOW", + "keymap:User Interface:EMPTY:WINDOW", + "keymap:Vertex Paint:EMPTY:WINDOW", + "keymap:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "keymap:View2D Buttons List:EMPTY:WINDOW", + "keymap:View2D:EMPTY:WINDOW", + "keymap:View3D Dolly Modal:EMPTY:WINDOW", + "keymap:View3D Fly Modal:EMPTY:WINDOW", + "keymap:View3D Gesture Circle:EMPTY:WINDOW", + "keymap:View3D Move Modal:EMPTY:WINDOW", + "keymap:View3D Placement Modal:EMPTY:WINDOW", + "keymap:View3D Rotate Modal:EMPTY:WINDOW", + "keymap:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "keymap:View3D Walk Modal:EMPTY:WINDOW", + "keymap:View3D Zoom Modal:EMPTY:WINDOW", + "keymap:Weight Paint:EMPTY:WINDOW", + "keymap:Window:EMPTY:WINDOW", + "modifier:ARMATURE", + "modifier:ARRAY", + "modifier:BEVEL", + "modifier:BOOLEAN", + "modifier:BUILD", + "modifier:CAST", + "modifier:CLOTH", + "modifier:COLLISION", + "modifier:CORRECTIVE_SMOOTH", + "modifier:CURVE", + "modifier:DATA_TRANSFER", + "modifier:DECIMATE", + "modifier:DISPLACE", + "modifier:DYNAMIC_PAINT", + "modifier:EDGE_SPLIT", + "modifier:EXPLODE", + "modifier:FLUID", + "modifier:GREASE_PENCIL_ARMATURE", + "modifier:GREASE_PENCIL_ARRAY", + "modifier:GREASE_PENCIL_BUILD", + "modifier:GREASE_PENCIL_COLOR", + "modifier:GREASE_PENCIL_DASH", + "modifier:GREASE_PENCIL_ENVELOPE", + "modifier:GREASE_PENCIL_HOOK", + "modifier:GREASE_PENCIL_LATTICE", + "modifier:GREASE_PENCIL_LENGTH", + "modifier:GREASE_PENCIL_MIRROR", + "modifier:GREASE_PENCIL_MULTIPLY", + "modifier:GREASE_PENCIL_NOISE", + "modifier:GREASE_PENCIL_OFFSET", + "modifier:GREASE_PENCIL_OPACITY", + "modifier:GREASE_PENCIL_OUTLINE", + "modifier:GREASE_PENCIL_SHRINKWRAP", + "modifier:GREASE_PENCIL_SIMPLIFY", + "modifier:GREASE_PENCIL_SMOOTH", + "modifier:GREASE_PENCIL_SUBDIV", + "modifier:GREASE_PENCIL_TEXTURE", + "modifier:GREASE_PENCIL_THICKNESS", + "modifier:GREASE_PENCIL_TIME", + "modifier:GREASE_PENCIL_TINT", + "modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", + "modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", + "modifier:HOOK", + "modifier:LAPLACIANDEFORM", + "modifier:LAPLACIANSMOOTH", + "modifier:LATTICE", + "modifier:LINEART", + "modifier:MASK", + "modifier:MESH_CACHE", + "modifier:MESH_DEFORM", + "modifier:MESH_SEQUENCE_CACHE", + "modifier:MESH_TO_VOLUME", + "modifier:MIRROR", + "modifier:MULTIRES", + "modifier:NODES", + "modifier:NORMAL_EDIT", + "modifier:OCEAN", + "modifier:PARTICLE_INSTANCE", + "modifier:PARTICLE_SYSTEM", + "modifier:REMESH", + "modifier:SCREW", + "modifier:SHRINKWRAP", + "modifier:SIMPLE_DEFORM", + "modifier:SKIN", + "modifier:SMOOTH", + "modifier:SOFT_BODY", + "modifier:SOLIDIFY", + "modifier:SUBSURF", + "modifier:SURFACE", + "modifier:SURFACE_DEFORM", + "modifier:TRIANGULATE", + "modifier:UV_PROJECT", + "modifier:UV_WARP", + "modifier:VERTEX_WEIGHT_EDIT", + "modifier:VERTEX_WEIGHT_MIX", + "modifier:VERTEX_WEIGHT_PROXIMITY", + "modifier:VOLUME_DISPLACE", + "modifier:VOLUME_TO_MESH", + "modifier:WARP", + "modifier:WAVE", + "modifier:WEIGHTED_NORMAL", + "modifier:WELD", + "modifier:WIREFRAME", + "node:Compositor:CompositorNodeAlphaOver", + "node:Compositor:CompositorNodeAntiAliasing", + "node:Compositor:CompositorNodeBilateralblur", + "node:Compositor:CompositorNodeBlankImage", + "node:Compositor:CompositorNodeBlur", + "node:Compositor:CompositorNodeBokehBlur", + "node:Compositor:CompositorNodeBokehImage", + "node:Compositor:CompositorNodeBoxMask", + "node:Compositor:CompositorNodeBrightContrast", + "node:Compositor:CompositorNodeChannelMatte", + "node:Compositor:CompositorNodeChromaMatte", + "node:Compositor:CompositorNodeColorBalance", + "node:Compositor:CompositorNodeColorCorrection", + "node:Compositor:CompositorNodeColorMatte", + "node:Compositor:CompositorNodeColorSpill", + "node:Compositor:CompositorNodeCombineColor", + "node:Compositor:CompositorNodeConvertColorSpace", + "node:Compositor:CompositorNodeConvertToDisplay", + "node:Compositor:CompositorNodeConvolve", + "node:Compositor:CompositorNodeCornerPin", + "node:Compositor:CompositorNodeCrop", + "node:Compositor:CompositorNodeCryptomatte", + "node:Compositor:CompositorNodeCryptomatteV2", + "node:Compositor:CompositorNodeCurveRGB", + "node:Compositor:CompositorNodeDBlur", + "node:Compositor:CompositorNodeDefocus", + "node:Compositor:CompositorNodeDenoise", + "node:Compositor:CompositorNodeDespeckle", + "node:Compositor:CompositorNodeDiffMatte", + "node:Compositor:CompositorNodeDilateErode", + "node:Compositor:CompositorNodeDisplace", + "node:Compositor:CompositorNodeDistanceMatte", + "node:Compositor:CompositorNodeDoubleEdgeMask", + "node:Compositor:CompositorNodeEllipseMask", + "node:Compositor:CompositorNodeExposure", + "node:Compositor:CompositorNodeFilter", + "node:Compositor:CompositorNodeFlip", + "node:Compositor:CompositorNodeGlare", + "node:Compositor:CompositorNodeGroup", + "node:Compositor:CompositorNodeHueCorrect", + "node:Compositor:CompositorNodeHueSat", + "node:Compositor:CompositorNodeIDMask", + "node:Compositor:CompositorNodeImage", + "node:Compositor:CompositorNodeImageCoordinates", + "node:Compositor:CompositorNodeImageInfo", + "node:Compositor:CompositorNodeInpaint", + "node:Compositor:CompositorNodeInvert", + "node:Compositor:CompositorNodeKeying", + "node:Compositor:CompositorNodeKeyingScreen", + "node:Compositor:CompositorNodeKuwahara", + "node:Compositor:CompositorNodeLensdist", + "node:Compositor:CompositorNodeLevels", + "node:Compositor:CompositorNodeLumaMatte", + "node:Compositor:CompositorNodeMapUV", + "node:Compositor:CompositorNodeMask", + "node:Compositor:CompositorNodeMaskToSDF", + "node:Compositor:CompositorNodeMovieClip", + "node:Compositor:CompositorNodeMovieDistortion", + "node:Compositor:CompositorNodeNormal", + "node:Compositor:CompositorNodeNormalize", + "node:Compositor:CompositorNodeOutputFile", + "node:Compositor:CompositorNodePixelate", + "node:Compositor:CompositorNodePlaneTrackDeform", + "node:Compositor:CompositorNodePosterize", + "node:Compositor:CompositorNodePremulKey", + "node:Compositor:CompositorNodeRGB", + "node:Compositor:CompositorNodeRGBToBW", + "node:Compositor:CompositorNodeRLayers", + "node:Compositor:CompositorNodeRelativeToPixel", + "node:Compositor:CompositorNodeRotate", + "node:Compositor:CompositorNodeScale", + "node:Compositor:CompositorNodeSceneTime", + "node:Compositor:CompositorNodeSeparateColor", + "node:Compositor:CompositorNodeSequencerStripInfo", + "node:Compositor:CompositorNodeSetAlpha", + "node:Compositor:CompositorNodeSplit", + "node:Compositor:CompositorNodeStabilize", + "node:Compositor:CompositorNodeStringToImage", + "node:Compositor:CompositorNodeSwitch", + "node:Compositor:CompositorNodeSwitchView", + "node:Compositor:CompositorNodeTime", + "node:Compositor:CompositorNodeTonemap", + "node:Compositor:CompositorNodeTrackPos", + "node:Compositor:CompositorNodeTransform", + "node:Compositor:CompositorNodeTranslate", + "node:Compositor:CompositorNodeVecBlur", + "node:Compositor:CompositorNodeViewer", + "node:Compositor:CompositorNodeZcombine", + "node:Geometry:GeometryNodeAccumulateField", + "node:Geometry:GeometryNodeAttributeDomainSize", + "node:Geometry:GeometryNodeAttributeStatistic", + "node:Geometry:GeometryNodeBake", + "node:Geometry:GeometryNodeBlurAttribute", + "node:Geometry:GeometryNodeBoneInfo", + "node:Geometry:GeometryNodeBoundBox", + "node:Geometry:GeometryNodeCameraInfo", + "node:Geometry:GeometryNodeCaptureAttribute", + "node:Geometry:GeometryNodeClosureToList", + "node:Geometry:GeometryNodeClusterByConnected", + "node:Geometry:GeometryNodeClusterByDistance", + "node:Geometry:GeometryNodeCollectionChildren", + "node:Geometry:GeometryNodeCollectionInfo", + "node:Geometry:GeometryNodeConvexHull", + "node:Geometry:GeometryNodeCornersOfEdge", + "node:Geometry:GeometryNodeCornersOfFace", + "node:Geometry:GeometryNodeCornersOfVertex", + "node:Geometry:GeometryNodeCubeGridTopology", + "node:Geometry:GeometryNodeCurveArc", + "node:Geometry:GeometryNodeCurveEndpointSelection", + "node:Geometry:GeometryNodeCurveHandleTypeSelection", + "node:Geometry:GeometryNodeCurveLength", + "node:Geometry:GeometryNodeCurveOfPoint", + "node:Geometry:GeometryNodeCurvePrimitiveBezierSegment", + "node:Geometry:GeometryNodeCurvePrimitiveCircle", + "node:Geometry:GeometryNodeCurvePrimitiveLine", + "node:Geometry:GeometryNodeCurvePrimitiveQuadrilateral", + "node:Geometry:GeometryNodeCurveQuadraticBezier", + "node:Geometry:GeometryNodeCurveSetHandles", + "node:Geometry:GeometryNodeCurveSpiral", + "node:Geometry:GeometryNodeCurveSplineType", + "node:Geometry:GeometryNodeCurveStar", + "node:Geometry:GeometryNodeCurveToMesh", + "node:Geometry:GeometryNodeCurveToPoints", + "node:Geometry:GeometryNodeCurvesToGreasePencil", + "node:Geometry:GeometryNodeDeformCurvesOnSurface", + "node:Geometry:GeometryNodeDeleteGeometry", + "node:Geometry:GeometryNodeDistributePointsInGrid", + "node:Geometry:GeometryNodeDistributePointsInVolume", + "node:Geometry:GeometryNodeDistributePointsOnFaces", + "node:Geometry:GeometryNodeDualMesh", + "node:Geometry:GeometryNodeDuplicateElements", + "node:Geometry:GeometryNodeEdgePathsToCurves", + "node:Geometry:GeometryNodeEdgePathsToSelection", + "node:Geometry:GeometryNodeEdgesOfCorner", + "node:Geometry:GeometryNodeEdgesOfVertex", + "node:Geometry:GeometryNodeEdgesToFaceGroups", + "node:Geometry:GeometryNodeExtrudeMesh", + "node:Geometry:GeometryNodeFaceOfCorner", + "node:Geometry:GeometryNodeFieldAtIndex", + "node:Geometry:GeometryNodeFieldAverage", + "node:Geometry:GeometryNodeFieldMinAndMax", + "node:Geometry:GeometryNodeFieldOnDomain", + "node:Geometry:GeometryNodeFieldToGrid", + "node:Geometry:GeometryNodeFieldToList", + "node:Geometry:GeometryNodeFieldVariance", + "node:Geometry:GeometryNodeFillCurve", + "node:Geometry:GeometryNodeFilletCurve", + "node:Geometry:GeometryNodeFilterList", + "node:Geometry:GeometryNodeFlipFaces", + "node:Geometry:GeometryNodeForeachGeometryElementInput", + "node:Geometry:GeometryNodeForeachGeometryElementOutput", + "node:Geometry:GeometryNodeGeometryToInstance", + "node:Geometry:GeometryNodeGetAttributeNames", + "node:Geometry:GeometryNodeGetGeometryBundle", + "node:Geometry:GeometryNodeGetGeometryComponent", + "node:Geometry:GeometryNodeGetNamedGrid", + "node:Geometry:GeometryNodeGizmoDial", + "node:Geometry:GeometryNodeGizmoLinear", + "node:Geometry:GeometryNodeGizmoTransform", + "node:Geometry:GeometryNodeGreasePencilToCurves", + "node:Geometry:GeometryNodeGridAdvect", + "node:Geometry:GeometryNodeGridClip", + "node:Geometry:GeometryNodeGridCurl", + "node:Geometry:GeometryNodeGridDilateAndErode", + "node:Geometry:GeometryNodeGridDivergence", + "node:Geometry:GeometryNodeGridGradient", + "node:Geometry:GeometryNodeGridInfo", + "node:Geometry:GeometryNodeGridLaplacian", + "node:Geometry:GeometryNodeGridMean", + "node:Geometry:GeometryNodeGridMedian", + "node:Geometry:GeometryNodeGridPrune", + "node:Geometry:GeometryNodeGridToMesh", + "node:Geometry:GeometryNodeGridToPoints", + "node:Geometry:GeometryNodeGridVoxelize", + "node:Geometry:GeometryNodeGroup", + "node:Geometry:GeometryNodeImageInfo", + "node:Geometry:GeometryNodeImageTexture", + "node:Geometry:GeometryNodeImportCSV", + "node:Geometry:GeometryNodeImportOBJ", + "node:Geometry:GeometryNodeImportPLY", + "node:Geometry:GeometryNodeImportSTL", + "node:Geometry:GeometryNodeImportText", + "node:Geometry:GeometryNodeImportVDB", + "node:Geometry:GeometryNodeIndexOfNearest", + "node:Geometry:GeometryNodeIndexSwitch", + "node:Geometry:GeometryNodeInputActiveCamera", + "node:Geometry:GeometryNodeInputCollection", + "node:Geometry:GeometryNodeInputCurveHandlePositions", + "node:Geometry:GeometryNodeInputCurveTilt", + "node:Geometry:GeometryNodeInputEdgeSmooth", + "node:Geometry:GeometryNodeInputFont", + "node:Geometry:GeometryNodeInputID", + "node:Geometry:GeometryNodeInputImage", + "node:Geometry:GeometryNodeInputIndex", + "node:Geometry:GeometryNodeInputInstanceBounds", + "node:Geometry:GeometryNodeInputInstanceReference", + "node:Geometry:GeometryNodeInputInstanceRotation", + "node:Geometry:GeometryNodeInputInstanceScale", + "node:Geometry:GeometryNodeInputMaterial", + "node:Geometry:GeometryNodeInputMaterialIndex", + "node:Geometry:GeometryNodeInputMeshEdgeAngle", + "node:Geometry:GeometryNodeInputMeshEdgeNeighbors", + "node:Geometry:GeometryNodeInputMeshEdgeVertices", + "node:Geometry:GeometryNodeInputMeshFaceArea", + "node:Geometry:GeometryNodeInputMeshFaceIsPlanar", + "node:Geometry:GeometryNodeInputMeshFaceNeighbors", + "node:Geometry:GeometryNodeInputMeshIsland", + "node:Geometry:GeometryNodeInputMeshVertexNeighbors", + "node:Geometry:GeometryNodeInputNamedAttribute", + "node:Geometry:GeometryNodeInputNamedLayerSelection", + "node:Geometry:GeometryNodeInputNormal", + "node:Geometry:GeometryNodeInputObject", + "node:Geometry:GeometryNodeInputPosition", + "node:Geometry:GeometryNodeInputRadius", + "node:Geometry:GeometryNodeInputSceneTime", + "node:Geometry:GeometryNodeInputShadeSmooth", + "node:Geometry:GeometryNodeInputShortestEdgePaths", + "node:Geometry:GeometryNodeInputSplineCyclic", + "node:Geometry:GeometryNodeInputSplineResolution", + "node:Geometry:GeometryNodeInputTangent", + "node:Geometry:GeometryNodeInputVoxelIndex", + "node:Geometry:GeometryNodeInstanceOnPoints", + "node:Geometry:GeometryNodeInstanceTransform", + "node:Geometry:GeometryNodeInstancesToPoints", + "node:Geometry:GeometryNodeInterpolateCurves", + "node:Geometry:GeometryNodeIsViewport", + "node:Geometry:GeometryNodeJoinGeometry", + "node:Geometry:GeometryNodeListGetItem", + "node:Geometry:GeometryNodeListLength", + "node:Geometry:GeometryNodeMaterialSelection", + "node:Geometry:GeometryNodeMenuSwitch", + "node:Geometry:GeometryNodeMergeByDistance", + "node:Geometry:GeometryNodeMergeLayers", + "node:Geometry:GeometryNodeMergePoints", + "node:Geometry:GeometryNodeMeshBevel", + "node:Geometry:GeometryNodeMeshBoolean", + "node:Geometry:GeometryNodeMeshCircle", + "node:Geometry:GeometryNodeMeshCone", + "node:Geometry:GeometryNodeMeshCube", + "node:Geometry:GeometryNodeMeshCylinder", + "node:Geometry:GeometryNodeMeshFaceSetBoundaries", + "node:Geometry:GeometryNodeMeshGrid", + "node:Geometry:GeometryNodeMeshIcoSphere", + "node:Geometry:GeometryNodeMeshLine", + "node:Geometry:GeometryNodeMeshToCurve", + "node:Geometry:GeometryNodeMeshToDensityGrid", + "node:Geometry:GeometryNodeMeshToPoints", + "node:Geometry:GeometryNodeMeshToSDFGrid", + "node:Geometry:GeometryNodeMeshToVolume", + "node:Geometry:GeometryNodeMeshUVSphere", + "node:Geometry:GeometryNodeObjectInfo", + "node:Geometry:GeometryNodeOffsetCornerInFace", + "node:Geometry:GeometryNodeOffsetPointInCurve", + "node:Geometry:GeometryNodePoints", + "node:Geometry:GeometryNodePointsOfCurve", + "node:Geometry:GeometryNodePointsToCurves", + "node:Geometry:GeometryNodePointsToSDFGrid", + "node:Geometry:GeometryNodePointsToVertices", + "node:Geometry:GeometryNodePointsToVolume", + "node:Geometry:GeometryNodeProximity", + "node:Geometry:GeometryNodeRaycast", + "node:Geometry:GeometryNodeRealizeInstances", + "node:Geometry:GeometryNodeRemoveAttribute", + "node:Geometry:GeometryNodeRenameAttribute", + "node:Geometry:GeometryNodeRepeatInput", + "node:Geometry:GeometryNodeRepeatOutput", + "node:Geometry:GeometryNodeReplaceMaterial", + "node:Geometry:GeometryNodeResampleCurve", + "node:Geometry:GeometryNodeReverseCurve", + "node:Geometry:GeometryNodeRotateInstances", + "node:Geometry:GeometryNodeSDFGridBoolean", + "node:Geometry:GeometryNodeSDFGridFillet", + "node:Geometry:GeometryNodeSDFGridLaplacian", + "node:Geometry:GeometryNodeSDFGridMean", + "node:Geometry:GeometryNodeSDFGridMeanCurvature", + "node:Geometry:GeometryNodeSDFGridMedian", + "node:Geometry:GeometryNodeSDFGridOffset", + "node:Geometry:GeometryNodeSampleCurve", + "node:Geometry:GeometryNodeSampleGrid", + "node:Geometry:GeometryNodeSampleGridIndex", + "node:Geometry:GeometryNodeSampleIndex", + "node:Geometry:GeometryNodeSampleNearest", + "node:Geometry:GeometryNodeSampleNearestSurface", + "node:Geometry:GeometryNodeSampleSoundFrequencies", + "node:Geometry:GeometryNodeSampleUVSurface", + "node:Geometry:GeometryNodeScaleElements", + "node:Geometry:GeometryNodeScaleInstances", + "node:Geometry:GeometryNodeSelfObject", + "node:Geometry:GeometryNodeSeparateComponents", + "node:Geometry:GeometryNodeSeparateGeometry", + "node:Geometry:GeometryNodeSetCurveHandlePositions", + "node:Geometry:GeometryNodeSetCurveNormal", + "node:Geometry:GeometryNodeSetCurveRadius", + "node:Geometry:GeometryNodeSetCurveTilt", + "node:Geometry:GeometryNodeSetGeometryBundle", + "node:Geometry:GeometryNodeSetGeometryName", + "node:Geometry:GeometryNodeSetGreasePencilColor", + "node:Geometry:GeometryNodeSetGreasePencilDepth", + "node:Geometry:GeometryNodeSetGreasePencilSoftness", + "node:Geometry:GeometryNodeSetGridBackground", + "node:Geometry:GeometryNodeSetGridTransform", + "node:Geometry:GeometryNodeSetID", + "node:Geometry:GeometryNodeSetInstanceTransform", + "node:Geometry:GeometryNodeSetMaterial", + "node:Geometry:GeometryNodeSetMaterialIndex", + "node:Geometry:GeometryNodeSetMeshNormal", + "node:Geometry:GeometryNodeSetNURBSOrder", + "node:Geometry:GeometryNodeSetNURBSWeight", + "node:Geometry:GeometryNodeSetPointRadius", + "node:Geometry:GeometryNodeSetPosition", + "node:Geometry:GeometryNodeSetShadeSmooth", + "node:Geometry:GeometryNodeSetSplineCyclic", + "node:Geometry:GeometryNodeSetSplineResolution", + "node:Geometry:GeometryNodeSimulationInput", + "node:Geometry:GeometryNodeSimulationOutput", + "node:Geometry:GeometryNodeSortElements", + "node:Geometry:GeometryNodeSortList", + "node:Geometry:GeometryNodeSplineLength", + "node:Geometry:GeometryNodeSplineParameter", + "node:Geometry:GeometryNodeSplitEdges", + "node:Geometry:GeometryNodeSplitToInstances", + "node:Geometry:GeometryNodeStoreNamedAttribute", + "node:Geometry:GeometryNodeStoreNamedGrid", + "node:Geometry:GeometryNodeStringJoin", + "node:Geometry:GeometryNodeStringToCurves", + "node:Geometry:GeometryNodeSubdivideCurve", + "node:Geometry:GeometryNodeSubdivideMesh", + "node:Geometry:GeometryNodeSubdivisionSurface", + "node:Geometry:GeometryNodeSwitch", + "node:Geometry:GeometryNodeTagFilter", + "node:Geometry:GeometryNodeTool3DCursor", + "node:Geometry:GeometryNodeToolActiveElement", + "node:Geometry:GeometryNodeToolFaceSet", + "node:Geometry:GeometryNodeToolMousePosition", + "node:Geometry:GeometryNodeToolSelection", + "node:Geometry:GeometryNodeToolSetFaceSet", + "node:Geometry:GeometryNodeToolSetSelection", + "node:Geometry:GeometryNodeTransferAttributes", + "node:Geometry:GeometryNodeTransform", + "node:Geometry:GeometryNodeTranslateInstances", + "node:Geometry:GeometryNodeTriangulate", + "node:Geometry:GeometryNodeTrimCurve", + "node:Geometry:GeometryNodeUVPackIslands", + "node:Geometry:GeometryNodeUVTangent", + "node:Geometry:GeometryNodeUVUnwrap", + "node:Geometry:GeometryNodeVertexOfCorner", + "node:Geometry:GeometryNodeViewer", + "node:Geometry:GeometryNodeViewportTransform", + "node:Geometry:GeometryNodeVolumeCube", + "node:Geometry:GeometryNodeVolumeToMesh", + "node:Geometry:GeometryNodeWarning", + "node:Geometry:GeometryNodeXPBDSolver", + "node:Shader:ShaderNodeAddShader", + "node:Shader:ShaderNodeAmbientOcclusion", + "node:Shader:ShaderNodeAttribute", + "node:Shader:ShaderNodeBackground", + "node:Shader:ShaderNodeBevel", + "node:Shader:ShaderNodeBlackbody", + "node:Shader:ShaderNodeBrightContrast", + "node:Shader:ShaderNodeBsdfAnisotropic", + "node:Shader:ShaderNodeBsdfDiffuse", + "node:Shader:ShaderNodeBsdfGlass", + "node:Shader:ShaderNodeBsdfHair", + "node:Shader:ShaderNodeBsdfHairPrincipled", + "node:Shader:ShaderNodeBsdfMetallic", + "node:Shader:ShaderNodeBsdfPrincipled", + "node:Shader:ShaderNodeBsdfRayPortal", + "node:Shader:ShaderNodeBsdfRefraction", + "node:Shader:ShaderNodeBsdfSheen", + "node:Shader:ShaderNodeBsdfToon", + "node:Shader:ShaderNodeBsdfTranslucent", + "node:Shader:ShaderNodeBsdfTransparent", + "node:Shader:ShaderNodeBump", + "node:Shader:ShaderNodeCameraData", + "node:Shader:ShaderNodeClamp", + "node:Shader:ShaderNodeCombineColor", + "node:Shader:ShaderNodeCombineXYZ", + "node:Shader:ShaderNodeDisplacement", + "node:Shader:ShaderNodeEeveeSpecular", + "node:Shader:ShaderNodeEmission", + "node:Shader:ShaderNodeFloatCurve", + "node:Shader:ShaderNodeFresnel", + "node:Shader:ShaderNodeGamma", + "node:Shader:ShaderNodeGroup", + "node:Shader:ShaderNodeHairInfo", + "node:Shader:ShaderNodeHoldout", + "node:Shader:ShaderNodeHueSaturation", + "node:Shader:ShaderNodeInvert", + "node:Shader:ShaderNodeLayerWeight", + "node:Shader:ShaderNodeLightFalloff", + "node:Shader:ShaderNodeLightPath", + "node:Shader:ShaderNodeMapRange", + "node:Shader:ShaderNodeMapping", + "node:Shader:ShaderNodeMath", + "node:Shader:ShaderNodeMix", + "node:Shader:ShaderNodeMixRGB", + "node:Shader:ShaderNodeMixShader", + "node:Shader:ShaderNodeNewGeometry", + "node:Shader:ShaderNodeNormal", + "node:Shader:ShaderNodeNormalMap", + "node:Shader:ShaderNodeObjectInfo", + "node:Shader:ShaderNodeOutputAOV", + "node:Shader:ShaderNodeOutputLight", + "node:Shader:ShaderNodeOutputLineStyle", + "node:Shader:ShaderNodeOutputMaterial", + "node:Shader:ShaderNodeOutputWorld", + "node:Shader:ShaderNodeParticleInfo", + "node:Shader:ShaderNodePointInfo", + "node:Shader:ShaderNodeRGB", + "node:Shader:ShaderNodeRGBCurve", + "node:Shader:ShaderNodeRGBToBW", + "node:Shader:ShaderNodeRadialTiling", + "node:Shader:ShaderNodeRaycast", + "node:Shader:ShaderNodeScript", + "node:Shader:ShaderNodeSeparateColor", + "node:Shader:ShaderNodeSeparateXYZ", + "node:Shader:ShaderNodeShaderToRGB", + "node:Shader:ShaderNodeSqueeze", + "node:Shader:ShaderNodeSubsurfaceScattering", + "node:Shader:ShaderNodeTangent", + "node:Shader:ShaderNodeTexBrick", + "node:Shader:ShaderNodeTexChecker", + "node:Shader:ShaderNodeTexCoord", + "node:Shader:ShaderNodeTexEnvironment", + "node:Shader:ShaderNodeTexGabor", + "node:Shader:ShaderNodeTexGradient", + "node:Shader:ShaderNodeTexIES", + "node:Shader:ShaderNodeTexImage", + "node:Shader:ShaderNodeTexMagic", + "node:Shader:ShaderNodeTexNoise", + "node:Shader:ShaderNodeTexSky", + "node:Shader:ShaderNodeTexVoronoi", + "node:Shader:ShaderNodeTexWave", + "node:Shader:ShaderNodeTexWhiteNoise", + "node:Shader:ShaderNodeUVAlongStroke", + "node:Shader:ShaderNodeUVMap", + "node:Shader:ShaderNodeValToRGB", + "node:Shader:ShaderNodeValue", + "node:Shader:ShaderNodeVectorCurve", + "node:Shader:ShaderNodeVectorDisplacement", + "node:Shader:ShaderNodeVectorMath", + "node:Shader:ShaderNodeVectorRotate", + "node:Shader:ShaderNodeVectorTransform", + "node:Shader:ShaderNodeVertexColor", + "node:Shader:ShaderNodeVolumeAbsorption", + "node:Shader:ShaderNodeVolumeCoefficients", + "node:Shader:ShaderNodeVolumeInfo", + "node:Shader:ShaderNodeVolumePrincipled", + "node:Shader:ShaderNodeVolumeScatter", + "node:Shader:ShaderNodeWavelength", + "node:Shader:ShaderNodeWireframe", + "operator:action.bake_keys", + "operator:action.clean", + "operator:action.clickselect", + "operator:action.copy", + "operator:action.delete", + "operator:action.duplicate", + "operator:action.duplicate_move", + "operator:action.easing_type", + "operator:action.extrapolation_type", + "operator:action.frame_jump", + "operator:action.handle_type", + "operator:action.interpolation_type", + "operator:action.keyframe_insert", + "operator:action.keyframe_type", + "operator:action.markers_make_local", + "operator:action.mirror", + "operator:action.new", + "operator:action.paste", + "operator:action.previewrange_set", + "operator:action.push_down", + "operator:action.select_all", + "operator:action.select_box", + "operator:action.select_by_type", + "operator:action.select_circle", + "operator:action.select_column", + "operator:action.select_lasso", + "operator:action.select_leftright", + "operator:action.select_less", + "operator:action.select_linked", + "operator:action.select_more", + "operator:action.snap", + "operator:action.stash", + "operator:action.stash_and_create", + "operator:action.unlink", + "operator:action.view_all", + "operator:action.view_frame", + "operator:action.view_selected", + "operator:anim.change_frame", + "operator:anim.channel_select_keys", + "operator:anim.channel_view_pick", + "operator:anim.channels_bake", + "operator:anim.channels_clean_empty", + "operator:anim.channels_click", + "operator:anim.channels_collapse", + "operator:anim.channels_delete", + "operator:anim.channels_editable_toggle", + "operator:anim.channels_expand", + "operator:anim.channels_fcurves_enable", + "operator:anim.channels_group", + "operator:anim.channels_move", + "operator:anim.channels_rename", + "operator:anim.channels_select_all", + "operator:anim.channels_select_box", + "operator:anim.channels_select_filter", + "operator:anim.channels_setting_disable", + "operator:anim.channels_setting_enable", + "operator:anim.channels_setting_toggle", + "operator:anim.channels_ungroup", + "operator:anim.channels_view_selected", + "operator:anim.clear_useless_actions", + "operator:anim.copy_driver_button", + "operator:anim.driver_button_add", + "operator:anim.driver_button_edit", + "operator:anim.driver_button_remove", + "operator:anim.end_frame_set", + "operator:anim.keyframe_clear_button", + "operator:anim.keyframe_clear_v3d", + "operator:anim.keyframe_clear_vse", + "operator:anim.keyframe_delete", + "operator:anim.keyframe_delete_button", + "operator:anim.keyframe_delete_by_name", + "operator:anim.keyframe_delete_v3d", + "operator:anim.keyframe_delete_vse", + "operator:anim.keyframe_insert", + "operator:anim.keyframe_insert_button", + "operator:anim.keyframe_insert_by_name", + "operator:anim.keyframe_insert_menu", + "operator:anim.keying_set_active_set", + "operator:anim.keying_set_add", + "operator:anim.keying_set_export", + "operator:anim.keying_set_path_add", + "operator:anim.keying_set_path_remove", + "operator:anim.keying_set_remove", + "operator:anim.keyingset_button_add", + "operator:anim.keyingset_button_remove", + "operator:anim.merge_animation", + "operator:anim.paste_driver_button", + "operator:anim.previewrange_clear", + "operator:anim.previewrange_set", + "operator:anim.replace_action", + "operator:anim.replace_action_new", + "operator:anim.scene_range_frame", + "operator:anim.separate_slots", + "operator:anim.slot_channels_move_to_new_action", + "operator:anim.slot_new_for_id", + "operator:anim.slot_unassign_from_constraint", + "operator:anim.slot_unassign_from_id", + "operator:anim.slot_unassign_from_nla_strip", + "operator:anim.start_frame_set", + "operator:anim.update_animated_transform_constraints", + "operator:anim.version_bone_hide_property", + "operator:anim.view_curve_in_graph_editor", + "operator:armature.align", + "operator:armature.assign_to_collection", + "operator:armature.autoside_names", + "operator:armature.bone_primitive_add", + "operator:armature.calculate_roll", + "operator:armature.click_extrude", + "operator:armature.collection_add", + "operator:armature.collection_assign", + "operator:armature.collection_create_and_assign", + "operator:armature.collection_deselect", + "operator:armature.collection_move", + "operator:armature.collection_remove", + "operator:armature.collection_remove_unused", + "operator:armature.collection_select", + "operator:armature.collection_show_all", + "operator:armature.collection_unassign", + "operator:armature.collection_unassign_named", + "operator:armature.collection_unsolo_all", + "operator:armature.copy_bone_color_to_selected", + "operator:armature.delete", + "operator:armature.dissolve", + "operator:armature.duplicate", + "operator:armature.duplicate_move", + "operator:armature.duplicate_rename", + "operator:armature.extrude", + "operator:armature.extrude_forked", + "operator:armature.extrude_move", + "operator:armature.fill", + "operator:armature.flip_names", + "operator:armature.hide", + "operator:armature.move_to_collection", + "operator:armature.parent_clear", + "operator:armature.parent_set", + "operator:armature.reveal", + "operator:armature.roll_clear", + "operator:armature.select_all", + "operator:armature.select_hierarchy", + "operator:armature.select_less", + "operator:armature.select_linked", + "operator:armature.select_linked_pick", + "operator:armature.select_mirror", + "operator:armature.select_more", + "operator:armature.select_similar", + "operator:armature.separate", + "operator:armature.shortest_path_pick", + "operator:armature.split", + "operator:armature.subdivide", + "operator:armature.switch_direction", + "operator:armature.symmetrize", + "operator:asset.asset_download", + "operator:asset.assets_download", + "operator:asset.assign_action", + "operator:asset.browse_containing_blend_file", + "operator:asset.bundle_install", + "operator:asset.catalog_delete", + "operator:asset.catalog_new", + "operator:asset.catalog_redo", + "operator:asset.catalog_undo", + "operator:asset.catalog_undo_push", + "operator:asset.catalogs_save", + "operator:asset.clear", + "operator:asset.clear_single", + "operator:asset.library_refresh", + "operator:asset.library_reload_listing", + "operator:asset.mark", + "operator:asset.mark_single", + "operator:asset.open_containing_blend_file", + "operator:asset.screenshot_preview", + "operator:asset.tag_add", + "operator:asset.tag_remove", + "operator:boid.rule_add", + "operator:boid.rule_del", + "operator:boid.rule_move_down", + "operator:boid.rule_move_up", + "operator:boid.state_add", + "operator:boid.state_del", + "operator:boid.state_move_down", + "operator:boid.state_move_up", + "operator:brush.asset_activate", + "operator:brush.asset_delete", + "operator:brush.asset_edit_metadata", + "operator:brush.asset_load_preview", + "operator:brush.asset_revert", + "operator:brush.asset_save", + "operator:brush.asset_save_as", + "operator:brush.scale_size", + "operator:brush.stencil_control", + "operator:brush.stencil_fit_image_aspect", + "operator:brush.stencil_reset_transform", + "operator:buttons.clear_filter", + "operator:buttons.context_menu", + "operator:buttons.directory_browse", + "operator:buttons.file_browse", + "operator:buttons.start_filter", + "operator:buttons.toggle_pin", + "operator:cachefile.layer_add", + "operator:cachefile.layer_move", + "operator:cachefile.layer_remove", + "operator:cachefile.open", + "operator:cachefile.reload", + "operator:camera.preset_add", + "operator:camera.safe_areas_preset_add", + "operator:clip.add_marker", + "operator:clip.add_marker_at_click", + "operator:clip.add_marker_move", + "operator:clip.add_marker_slide", + "operator:clip.apply_solution_scale", + "operator:clip.average_tracks", + "operator:clip.bundles_to_mesh", + "operator:clip.camera_preset_add", + "operator:clip.change_frame", + "operator:clip.clean_tracks", + "operator:clip.clear_solution", + "operator:clip.clear_track_path", + "operator:clip.constraint_to_fcurve", + "operator:clip.copy_tracks", + "operator:clip.create_plane_track", + "operator:clip.cursor_set", + "operator:clip.delete_marker", + "operator:clip.delete_proxy", + "operator:clip.delete_track", + "operator:clip.detect_features", + "operator:clip.disable_markers", + "operator:clip.dopesheet_select_channel", + "operator:clip.dopesheet_view_all", + "operator:clip.filter_tracks", + "operator:clip.frame_jump", + "operator:clip.graph_center_current_frame", + "operator:clip.graph_delete_curve", + "operator:clip.graph_delete_knot", + "operator:clip.graph_disable_markers", + "operator:clip.graph_select", + "operator:clip.graph_select_all_markers", + "operator:clip.graph_select_box", + "operator:clip.graph_view_all", + "operator:clip.hide_tracks", + "operator:clip.hide_tracks_clear", + "operator:clip.join_tracks", + "operator:clip.keyframe_delete", + "operator:clip.keyframe_insert", + "operator:clip.lock_selection_toggle", + "operator:clip.lock_tracks", + "operator:clip.mode_set", + "operator:clip.new_image_from_plane_marker", + "operator:clip.open", + "operator:clip.paste_tracks", + "operator:clip.prefetch", + "operator:clip.rebuild_proxy", + "operator:clip.refine_markers", + "operator:clip.reload", + "operator:clip.select", + "operator:clip.select_all", + "operator:clip.select_box", + "operator:clip.select_circle", + "operator:clip.select_grouped", + "operator:clip.select_lasso", + "operator:clip.set_active_clip", + "operator:clip.set_axis", + "operator:clip.set_origin", + "operator:clip.set_plane", + "operator:clip.set_scale", + "operator:clip.set_scene_frames", + "operator:clip.set_solution_scale", + "operator:clip.set_solver_keyframe", + "operator:clip.set_viewport_background", + "operator:clip.setup_tracking_scene", + "operator:clip.slide_marker", + "operator:clip.slide_plane_marker", + "operator:clip.solve_camera", + "operator:clip.stabilize_2d_add", + "operator:clip.stabilize_2d_remove", + "operator:clip.stabilize_2d_rotation_add", + "operator:clip.stabilize_2d_rotation_remove", + "operator:clip.stabilize_2d_rotation_select", + "operator:clip.stabilize_2d_select", + "operator:clip.track_color_preset_add", + "operator:clip.track_copy_color", + "operator:clip.track_markers", + "operator:clip.track_settings_as_default", + "operator:clip.track_settings_to_track", + "operator:clip.track_to_empty", + "operator:clip.tracking_object_new", + "operator:clip.tracking_object_remove", + "operator:clip.tracking_settings_preset_add", + "operator:clip.update_image_from_plane_marker", + "operator:clip.view_all", + "operator:clip.view_center_cursor", + "operator:clip.view_ndof", + "operator:clip.view_pan", + "operator:clip.view_selected", + "operator:clip.view_zoom", + "operator:clip.view_zoom_in", + "operator:clip.view_zoom_out", + "operator:clip.view_zoom_ratio", + "operator:cloth.preset_add", + "operator:collection.create", + "operator:collection.export_all", + "operator:collection.exporter_add", + "operator:collection.exporter_export", + "operator:collection.exporter_move", + "operator:collection.exporter_remove", + "operator:collection.importer_add", + "operator:collection.importer_remove", + "operator:collection.objects_add_active", + "operator:collection.objects_remove", + "operator:collection.objects_remove_active", + "operator:collection.objects_remove_all", + "operator:console.autocomplete", + "operator:console.banner", + "operator:console.clear", + "operator:console.clear_line", + "operator:console.copy", + "operator:console.copy_as_script", + "operator:console.delete", + "operator:console.execute", + "operator:console.history_append", + "operator:console.history_cycle", + "operator:console.indent", + "operator:console.indent_or_autocomplete", + "operator:console.insert", + "operator:console.language", + "operator:console.move", + "operator:console.paste", + "operator:console.scrollback_append", + "operator:console.select_all", + "operator:console.select_set", + "operator:console.select_word", + "operator:console.unindent", + "operator:constraint.add_target", + "operator:constraint.apply", + "operator:constraint.childof_clear_inverse", + "operator:constraint.childof_set_inverse", + "operator:constraint.copy", + "operator:constraint.copy_to_selected", + "operator:constraint.delete", + "operator:constraint.disable_keep_transform", + "operator:constraint.followpath_path_animate", + "operator:constraint.limitdistance_reset", + "operator:constraint.move_down", + "operator:constraint.move_to_index", + "operator:constraint.move_up", + "operator:constraint.normalize_target_weights", + "operator:constraint.objectsolver_clear_inverse", + "operator:constraint.objectsolver_set_inverse", + "operator:constraint.remove_target", + "operator:constraint.stretchto_reset", + "operator:curve.cyclic_toggle", + "operator:curve.de_select_first", + "operator:curve.de_select_last", + "operator:curve.decimate", + "operator:curve.delete", + "operator:curve.dissolve_verts", + "operator:curve.draw", + "operator:curve.duplicate", + "operator:curve.duplicate_move", + "operator:curve.extrude", + "operator:curve.extrude_move", + "operator:curve.handle_type_set", + "operator:curve.hide", + "operator:curve.make_segment", + "operator:curve.match_texture_space", + "operator:curve.normals_make_consistent", + "operator:curve.pen", + "operator:curve.primitive_bezier_circle_add", + "operator:curve.primitive_bezier_curve_add", + "operator:curve.primitive_nurbs_circle_add", + "operator:curve.primitive_nurbs_curve_add", + "operator:curve.primitive_nurbs_path_add", + "operator:curve.radius_set", + "operator:curve.reveal", + "operator:curve.select_all", + "operator:curve.select_less", + "operator:curve.select_linked", + "operator:curve.select_linked_pick", + "operator:curve.select_more", + "operator:curve.select_next", + "operator:curve.select_nth", + "operator:curve.select_previous", + "operator:curve.select_random", + "operator:curve.select_row", + "operator:curve.select_similar", + "operator:curve.separate", + "operator:curve.shade_flat", + "operator:curve.shade_smooth", + "operator:curve.shortest_path_pick", + "operator:curve.smooth", + "operator:curve.smooth_radius", + "operator:curve.smooth_tilt", + "operator:curve.smooth_weight", + "operator:curve.spin", + "operator:curve.spline_type_set", + "operator:curve.spline_weight_set", + "operator:curve.split", + "operator:curve.subdivide", + "operator:curve.switch_direction", + "operator:curve.tilt_clear", + "operator:curve.vertex_add", + "operator:curves.add_bezier", + "operator:curves.add_circle", + "operator:curves.attribute_set", + "operator:curves.convert_from_particle_system", + "operator:curves.convert_to_particle_system", + "operator:curves.curve_type_set", + "operator:curves.cyclic_toggle", + "operator:curves.delete", + "operator:curves.draw", + "operator:curves.duplicate", + "operator:curves.duplicate_move", + "operator:curves.extrude", + "operator:curves.extrude_move", + "operator:curves.handle_type_set", + "operator:curves.pen", + "operator:curves.sculptmode_toggle", + "operator:curves.select_all", + "operator:curves.select_ends", + "operator:curves.select_less", + "operator:curves.select_linked", + "operator:curves.select_linked_pick", + "operator:curves.select_more", + "operator:curves.select_random", + "operator:curves.separate", + "operator:curves.set_selection_domain", + "operator:curves.snap_curves_to_surface", + "operator:curves.split", + "operator:curves.subdivide", + "operator:curves.surface_set", + "operator:curves.switch_direction", + "operator:curves.tilt_clear", + "operator:cycles.denoise_animation", + "operator:cycles.merge_images", + "operator:cycles.use_shading_nodes", + "operator:dpaint.bake", + "operator:dpaint.output_toggle", + "operator:dpaint.surface_slot_add", + "operator:dpaint.surface_slot_remove", + "operator:dpaint.type_toggle", + "operator:ed.flush_edits", + "operator:ed.lib_id_fake_user_toggle", + "operator:ed.lib_id_generate_preview", + "operator:ed.lib_id_generate_preview_from_object", + "operator:ed.lib_id_load_custom_preview", + "operator:ed.lib_id_override_editable_toggle", + "operator:ed.lib_id_remove_preview", + "operator:ed.lib_id_unlink", + "operator:ed.redo", + "operator:ed.undo", + "operator:ed.undo_history", + "operator:ed.undo_push", + "operator:ed.undo_redo", + "operator:export_anim.bvh", + "operator:export_scene.fbx", + "operator:export_scene.gltf", + "operator:extensions.package_disable", + "operator:extensions.package_install", + "operator:extensions.package_install_files", + "operator:extensions.package_install_marked", + "operator:extensions.package_mark_clear", + "operator:extensions.package_mark_clear_all", + "operator:extensions.package_mark_set", + "operator:extensions.package_mark_set_all", + "operator:extensions.package_obsolete_marked", + "operator:extensions.package_show_clear", + "operator:extensions.package_show_set", + "operator:extensions.package_show_settings", + "operator:extensions.package_theme_disable", + "operator:extensions.package_theme_enable", + "operator:extensions.package_uninstall", + "operator:extensions.package_uninstall_marked", + "operator:extensions.package_uninstall_system", + "operator:extensions.package_upgrade_all", + "operator:extensions.repo_enable_from_drop", + "operator:extensions.repo_lock_all", + "operator:extensions.repo_refresh_all", + "operator:extensions.repo_sync", + "operator:extensions.repo_sync_all", + "operator:extensions.repo_unlock", + "operator:extensions.repo_unlock_all", + "operator:extensions.status_clear", + "operator:extensions.status_clear_errors", + "operator:extensions.userpref_allow_online", + "operator:extensions.userpref_allow_online_popup", + "operator:extensions.userpref_show_for_update", + "operator:extensions.userpref_show_online", + "operator:extensions.userpref_tags_set", + "operator:file.autopack_toggle", + "operator:file.bookmark_add", + "operator:file.bookmark_cleanup", + "operator:file.bookmark_delete", + "operator:file.bookmark_move", + "operator:file.cancel", + "operator:file.delete", + "operator:file.directory_new", + "operator:file.edit_directory_path", + "operator:file.execute", + "operator:file.external_operation", + "operator:file.filenum", + "operator:file.filepath_drop", + "operator:file.find_missing_files", + "operator:file.hidedot", + "operator:file.highlight", + "operator:file.make_paths_absolute", + "operator:file.make_paths_relative", + "operator:file.mouse_execute", + "operator:file.next", + "operator:file.pack_all", + "operator:file.pack_libraries", + "operator:file.parent", + "operator:file.previous", + "operator:file.refresh", + "operator:file.rename", + "operator:file.report_missing_files", + "operator:file.reset_recent", + "operator:file.select", + "operator:file.select_all", + "operator:file.select_bookmark", + "operator:file.select_box", + "operator:file.select_walk", + "operator:file.smoothscroll", + "operator:file.sort_column_ui_context", + "operator:file.start_filter", + "operator:file.unpack_all", + "operator:file.unpack_item", + "operator:file.unpack_libraries", + "operator:file.view_selected", + "operator:fluid.bake_all", + "operator:fluid.bake_data", + "operator:fluid.bake_guides", + "operator:fluid.bake_mesh", + "operator:fluid.bake_noise", + "operator:fluid.bake_particles", + "operator:fluid.free_all", + "operator:fluid.free_data", + "operator:fluid.free_guides", + "operator:fluid.free_mesh", + "operator:fluid.free_noise", + "operator:fluid.free_particles", + "operator:fluid.pause_bake", + "operator:fluid.preset_add", + "operator:font.case_set", + "operator:font.case_toggle", + "operator:font.change_character", + "operator:font.change_spacing", + "operator:font.delete", + "operator:font.line_break", + "operator:font.move", + "operator:font.move_select", + "operator:font.open", + "operator:font.select_all", + "operator:font.select_word", + "operator:font.selection_set", + "operator:font.style_set", + "operator:font.style_toggle", + "operator:font.text_copy", + "operator:font.text_cut", + "operator:font.text_insert", + "operator:font.text_insert_unicode", + "operator:font.text_paste", + "operator:font.text_paste_from_file", + "operator:font.textbox_add", + "operator:font.textbox_remove", + "operator:font.unlink", + "operator:geometry.attribute_add", + "operator:geometry.attribute_convert", + "operator:geometry.attribute_remove", + "operator:geometry.color_attribute_add", + "operator:geometry.color_attribute_convert", + "operator:geometry.color_attribute_duplicate", + "operator:geometry.color_attribute_remove", + "operator:geometry.color_attribute_render_set", + "operator:geometry.geometry_randomization", + "operator:gizmogroup.gizmo_select", + "operator:gizmogroup.gizmo_tweak", + "operator:gpencil.annotate", + "operator:gpencil.annotation_active_frame_delete", + "operator:gpencil.annotation_add", + "operator:gpencil.data_unlink", + "operator:gpencil.layer_annotation_add", + "operator:gpencil.layer_annotation_move", + "operator:gpencil.layer_annotation_remove", + "operator:graph.bake_keys", + "operator:graph.blend_offset", + "operator:graph.blend_to_default", + "operator:graph.blend_to_ease", + "operator:graph.blend_to_neighbor", + "operator:graph.breakdown", + "operator:graph.butterworth_smooth", + "operator:graph.clean", + "operator:graph.click_insert", + "operator:graph.clickselect", + "operator:graph.copy", + "operator:graph.cursor_set", + "operator:graph.decimate", + "operator:graph.delete", + "operator:graph.driver_delete_invalid", + "operator:graph.driver_variables_copy", + "operator:graph.driver_variables_paste", + "operator:graph.duplicate", + "operator:graph.duplicate_move", + "operator:graph.ease", + "operator:graph.easing_type", + "operator:graph.equalize_handles", + "operator:graph.euler_filter", + "operator:graph.extrapolation_type", + "operator:graph.fmodifier_add", + "operator:graph.fmodifier_copy", + "operator:graph.fmodifier_delete", + "operator:graph.fmodifier_paste", + "operator:graph.frame_jump", + "operator:graph.gaussian_smooth", + "operator:graph.ghost_curves_clear", + "operator:graph.ghost_curves_create", + "operator:graph.handle_type", + "operator:graph.hide", + "operator:graph.interpolation_type", + "operator:graph.keyframe_insert", + "operator:graph.keyframe_jump", + "operator:graph.keys_to_samples", + "operator:graph.local_view", + "operator:graph.match_slope", + "operator:graph.mirror", + "operator:graph.paste", + "operator:graph.previewrange_set", + "operator:graph.push_pull", + "operator:graph.reveal", + "operator:graph.samples_to_keys", + "operator:graph.scale_average", + "operator:graph.scale_from_neighbor", + "operator:graph.select_all", + "operator:graph.select_box", + "operator:graph.select_circle", + "operator:graph.select_column", + "operator:graph.select_key_handles", + "operator:graph.select_lasso", + "operator:graph.select_leftright", + "operator:graph.select_less", + "operator:graph.select_linked", + "operator:graph.select_more", + "operator:graph.shear", + "operator:graph.smooth", + "operator:graph.snap", + "operator:graph.snap_cursor_value", + "operator:graph.sound_to_samples", + "operator:graph.time_offset", + "operator:graph.view_all", + "operator:graph.view_frame", + "operator:graph.view_selected", + "operator:grease_pencil.active_frame_delete", + "operator:grease_pencil.bake_grease_pencil_animation", + "operator:grease_pencil.brush_stroke", + "operator:grease_pencil.caps_set", + "operator:grease_pencil.clean_loose", + "operator:grease_pencil.convert_curve_type", + "operator:grease_pencil.copy", + "operator:grease_pencil.cyclical_set", + "operator:grease_pencil.delete", + "operator:grease_pencil.delete_breakdown", + "operator:grease_pencil.delete_frame", + "operator:grease_pencil.dissolve", + "operator:grease_pencil.duplicate", + "operator:grease_pencil.duplicate_move", + "operator:grease_pencil.erase_box", + "operator:grease_pencil.erase_lasso", + "operator:grease_pencil.extrude", + "operator:grease_pencil.extrude_move", + "operator:grease_pencil.fill", + "operator:grease_pencil.frame_clean_duplicate", + "operator:grease_pencil.frame_duplicate", + "operator:grease_pencil.insert_blank_frame", + "operator:grease_pencil.interpolate", + "operator:grease_pencil.interpolate_sequence", + "operator:grease_pencil.join_fills", + "operator:grease_pencil.join_selection", + "operator:grease_pencil.layer_active", + "operator:grease_pencil.layer_add", + "operator:grease_pencil.layer_duplicate", + "operator:grease_pencil.layer_duplicate_object", + "operator:grease_pencil.layer_group_add", + "operator:grease_pencil.layer_group_color_tag", + "operator:grease_pencil.layer_group_remove", + "operator:grease_pencil.layer_hide", + "operator:grease_pencil.layer_isolate", + "operator:grease_pencil.layer_lock_all", + "operator:grease_pencil.layer_mask_add", + "operator:grease_pencil.layer_mask_remove", + "operator:grease_pencil.layer_mask_reorder", + "operator:grease_pencil.layer_merge", + "operator:grease_pencil.layer_move", + "operator:grease_pencil.layer_remove", + "operator:grease_pencil.layer_reveal", + "operator:grease_pencil.material_copy_to_object", + "operator:grease_pencil.material_hide", + "operator:grease_pencil.material_isolate", + "operator:grease_pencil.material_lock_all", + "operator:grease_pencil.material_lock_unselected", + "operator:grease_pencil.material_lock_unused", + "operator:grease_pencil.material_reveal", + "operator:grease_pencil.material_select", + "operator:grease_pencil.material_unlock_all", + "operator:grease_pencil.move_to_layer", + "operator:grease_pencil.outline", + "operator:grease_pencil.paintmode_toggle", + "operator:grease_pencil.paste", + "operator:grease_pencil.pen", + "operator:grease_pencil.primitive_arc", + "operator:grease_pencil.primitive_box", + "operator:grease_pencil.primitive_circle", + "operator:grease_pencil.primitive_curve", + "operator:grease_pencil.primitive_line", + "operator:grease_pencil.primitive_polyline", + "operator:grease_pencil.relative_layer_mask_add", + "operator:grease_pencil.remove_fill_guides", + "operator:grease_pencil.reorder", + "operator:grease_pencil.reproject", + "operator:grease_pencil.reset_uvs", + "operator:grease_pencil.sculpt_paint", + "operator:grease_pencil.sculptmode_toggle", + "operator:grease_pencil.select_all", + "operator:grease_pencil.select_alternate", + "operator:grease_pencil.select_by_stroke_type", + "operator:grease_pencil.select_ends", + "operator:grease_pencil.select_fill", + "operator:grease_pencil.select_less", + "operator:grease_pencil.select_linked", + "operator:grease_pencil.select_more", + "operator:grease_pencil.select_random", + "operator:grease_pencil.select_similar", + "operator:grease_pencil.separate", + "operator:grease_pencil.separate_fills", + "operator:grease_pencil.set_active_material", + "operator:grease_pencil.set_corner_type", + "operator:grease_pencil.set_curve_resolution", + "operator:grease_pencil.set_curve_type", + "operator:grease_pencil.set_handle_type", + "operator:grease_pencil.set_material", + "operator:grease_pencil.set_selection_mode", + "operator:grease_pencil.set_start_point", + "operator:grease_pencil.set_stroke_type", + "operator:grease_pencil.set_uniform_opacity", + "operator:grease_pencil.set_uniform_thickness", + "operator:grease_pencil.snap_cursor_to_selected", + "operator:grease_pencil.snap_to_cursor", + "operator:grease_pencil.snap_to_grid", + "operator:grease_pencil.stroke_material_set", + "operator:grease_pencil.stroke_merge_by_distance", + "operator:grease_pencil.stroke_reset_vertex_color", + "operator:grease_pencil.stroke_simplify", + "operator:grease_pencil.stroke_smooth", + "operator:grease_pencil.stroke_split", + "operator:grease_pencil.stroke_subdivide", + "operator:grease_pencil.stroke_subdivide_smooth", + "operator:grease_pencil.stroke_switch_direction", + "operator:grease_pencil.stroke_trim", + "operator:grease_pencil.texture_gradient", + "operator:grease_pencil.trace_image", + "operator:grease_pencil.vertex_brush_stroke", + "operator:grease_pencil.vertex_color_brightness_contrast", + "operator:grease_pencil.vertex_color_hsv", + "operator:grease_pencil.vertex_color_invert", + "operator:grease_pencil.vertex_color_levels", + "operator:grease_pencil.vertex_color_set", + "operator:grease_pencil.vertex_group_normalize", + "operator:grease_pencil.vertex_group_normalize_all", + "operator:grease_pencil.vertex_group_smooth", + "operator:grease_pencil.vertexmode_toggle", + "operator:grease_pencil.weight_brush_stroke", + "operator:grease_pencil.weight_invert", + "operator:grease_pencil.weight_sample", + "operator:grease_pencil.weight_toggle_direction", + "operator:grease_pencil.weightmode_toggle", + "operator:image.add_render_slot", + "operator:image.change_frame", + "operator:image.clear_render_border", + "operator:image.clear_render_slot", + "operator:image.clipboard_copy", + "operator:image.clipboard_paste", + "operator:image.convert_to_mesh_plane", + "operator:image.curves_point_set", + "operator:image.cycle_render_slot", + "operator:image.external_edit", + "operator:image.file_browse", + "operator:image.flip", + "operator:image.import_as_mesh_planes", + "operator:image.invert", + "operator:image.match_movie_length", + "operator:image.new", + "operator:image.open", + "operator:image.open_images", + "operator:image.pack", + "operator:image.project_apply", + "operator:image.project_edit", + "operator:image.read_viewlayers", + "operator:image.reload", + "operator:image.remove_render_slot", + "operator:image.render_border", + "operator:image.replace", + "operator:image.resize", + "operator:image.rotate_orthogonal", + "operator:image.sample", + "operator:image.sample_line", + "operator:image.save", + "operator:image.save_all_modified", + "operator:image.save_as", + "operator:image.save_sequence", + "operator:image.tile_add", + "operator:image.tile_fill", + "operator:image.tile_remove", + "operator:image.unpack", + "operator:image.view_all", + "operator:image.view_center_cursor", + "operator:image.view_cursor_center", + "operator:image.view_ndof", + "operator:image.view_pan", + "operator:image.view_selected", + "operator:image.view_zoom", + "operator:image.view_zoom_border", + "operator:image.view_zoom_in", + "operator:image.view_zoom_out", + "operator:image.view_zoom_ratio", + "operator:import_anim.bvh", + "operator:import_curve.svg", + "operator:import_scene.fbx", + "operator:import_scene.gltf", + "operator:info.report_copy", + "operator:info.report_delete", + "operator:info.report_replay", + "operator:info.reports_display_update", + "operator:info.select_all", + "operator:info.select_box", + "operator:info.select_pick", + "operator:lattice.flip", + "operator:lattice.make_regular", + "operator:lattice.select_all", + "operator:lattice.select_less", + "operator:lattice.select_mirror", + "operator:lattice.select_more", + "operator:lattice.select_random", + "operator:lattice.select_ungrouped", + "operator:marker.add", + "operator:marker.camera_bind", + "operator:marker.delete", + "operator:marker.duplicate", + "operator:marker.make_links_scene", + "operator:marker.move", + "operator:marker.rename", + "operator:marker.select", + "operator:marker.select_all", + "operator:marker.select_box", + "operator:marker.select_leftright", + "operator:mask.add_feather_vertex", + "operator:mask.add_feather_vertex_slide", + "operator:mask.add_vertex", + "operator:mask.add_vertex_slide", + "operator:mask.copy_splines", + "operator:mask.cyclic_toggle", + "operator:mask.delete", + "operator:mask.duplicate", + "operator:mask.duplicate_move", + "operator:mask.feather_weight_clear", + "operator:mask.handle_type_set", + "operator:mask.hide_view_clear", + "operator:mask.hide_view_set", + "operator:mask.layer_move", + "operator:mask.layer_new", + "operator:mask.layer_remove", + "operator:mask.move_to_layer", + "operator:mask.new", + "operator:mask.normals_make_consistent", + "operator:mask.parent_clear", + "operator:mask.parent_set", + "operator:mask.paste_splines", + "operator:mask.primitive_circle_add", + "operator:mask.primitive_square_add", + "operator:mask.select", + "operator:mask.select_all", + "operator:mask.select_box", + "operator:mask.select_circle", + "operator:mask.select_lasso", + "operator:mask.select_less", + "operator:mask.select_linked", + "operator:mask.select_linked_pick", + "operator:mask.select_more", + "operator:mask.shape_key_clear", + "operator:mask.shape_key_feather_reset", + "operator:mask.shape_key_insert", + "operator:mask.shape_key_rekey", + "operator:mask.slide_point", + "operator:mask.slide_spline_curvature", + "operator:mask.switch_direction", + "operator:material.copy", + "operator:material.new", + "operator:material.paste", + "operator:mball.delete_metaelems", + "operator:mball.duplicate_metaelems", + "operator:mball.duplicate_move", + "operator:mball.hide_metaelems", + "operator:mball.reveal_metaelems", + "operator:mball.select_all", + "operator:mball.select_random_metaelems", + "operator:mball.select_similar", + "operator:mesh.attribute_set", + "operator:mesh.average_normals", + "operator:mesh.beautify_fill", + "operator:mesh.bevel", + "operator:mesh.bisect", + "operator:mesh.blend_from_shape", + "operator:mesh.bridge_edge_loops", + "operator:mesh.circularize", + "operator:mesh.colors_reverse", + "operator:mesh.colors_rotate", + "operator:mesh.convex_hull", + "operator:mesh.customdata_custom_splitnormals_add", + "operator:mesh.customdata_custom_splitnormals_clear", + "operator:mesh.customdata_face_sets_clear", + "operator:mesh.customdata_mask_clear", + "operator:mesh.customdata_skin_add", + "operator:mesh.customdata_skin_clear", + "operator:mesh.decimate", + "operator:mesh.delete", + "operator:mesh.delete_edgeloop", + "operator:mesh.delete_loose", + "operator:mesh.dissolve_degenerate", + "operator:mesh.dissolve_edges", + "operator:mesh.dissolve_faces", + "operator:mesh.dissolve_limited", + "operator:mesh.dissolve_mode", + "operator:mesh.dissolve_verts", + "operator:mesh.dupli_extrude_cursor", + "operator:mesh.duplicate", + "operator:mesh.duplicate_move", + "operator:mesh.edge_collapse", + "operator:mesh.edge_face_add", + "operator:mesh.edge_rotate", + "operator:mesh.edge_split", + "operator:mesh.edgering_select", + "operator:mesh.edges_select_sharp", + "operator:mesh.extrude_context", + "operator:mesh.extrude_context_move", + "operator:mesh.extrude_edges_indiv", + "operator:mesh.extrude_edges_move", + "operator:mesh.extrude_faces_indiv", + "operator:mesh.extrude_faces_move", + "operator:mesh.extrude_manifold", + "operator:mesh.extrude_region", + "operator:mesh.extrude_region_move", + "operator:mesh.extrude_region_shrink_fatten", + "operator:mesh.extrude_repeat", + "operator:mesh.extrude_vertices_move", + "operator:mesh.extrude_verts_indiv", + "operator:mesh.face_make_planar", + "operator:mesh.face_split_by_edges", + "operator:mesh.faces_select_linked_flat", + "operator:mesh.faces_shade_flat", + "operator:mesh.faces_shade_smooth", + "operator:mesh.fill", + "operator:mesh.fill_grid", + "operator:mesh.fill_holes", + "operator:mesh.flatten", + "operator:mesh.flip_normals", + "operator:mesh.flip_quad_tessellation", + "operator:mesh.hide", + "operator:mesh.inset", + "operator:mesh.intersect", + "operator:mesh.intersect_boolean", + "operator:mesh.knife_project", + "operator:mesh.knife_tool", + "operator:mesh.loop_select", + "operator:mesh.loop_to_region", + "operator:mesh.loopcut", + "operator:mesh.loopcut_slide", + "operator:mesh.mark_freestyle_edge", + "operator:mesh.mark_freestyle_face", + "operator:mesh.mark_seam", + "operator:mesh.mark_sharp", + "operator:mesh.merge", + "operator:mesh.merge_normals", + "operator:mesh.mod_weighted_strength", + "operator:mesh.normals_make_consistent", + "operator:mesh.normals_tools", + "operator:mesh.offset_edge_loops", + "operator:mesh.offset_edge_loops_slide", + "operator:mesh.point_normals", + "operator:mesh.poke", + "operator:mesh.polybuild_delete_at_cursor", + "operator:mesh.polybuild_dissolve_at_cursor", + "operator:mesh.polybuild_extrude_at_cursor_move", + "operator:mesh.polybuild_face_at_cursor", + "operator:mesh.polybuild_face_at_cursor_move", + "operator:mesh.polybuild_split_at_cursor", + "operator:mesh.polybuild_split_at_cursor_move", + "operator:mesh.polybuild_transform_at_cursor", + "operator:mesh.polybuild_transform_at_cursor_move", + "operator:mesh.primitive_circle_add", + "operator:mesh.primitive_cone_add", + "operator:mesh.primitive_cube_add", + "operator:mesh.primitive_cube_add_gizmo", + "operator:mesh.primitive_cylinder_add", + "operator:mesh.primitive_grid_add", + "operator:mesh.primitive_ico_sphere_add", + "operator:mesh.primitive_monkey_add", + "operator:mesh.primitive_plane_add", + "operator:mesh.primitive_torus_add", + "operator:mesh.primitive_uv_sphere_add", + "operator:mesh.quads_convert_to_tris", + "operator:mesh.region_to_loop", + "operator:mesh.remove_doubles", + "operator:mesh.reorder_vertices_spatial", + "operator:mesh.reveal", + "operator:mesh.rip", + "operator:mesh.rip_edge", + "operator:mesh.rip_edge_move", + "operator:mesh.rip_move", + "operator:mesh.screw", + "operator:mesh.select_all", + "operator:mesh.select_axis", + "operator:mesh.select_boundary_loop_multi", + "operator:mesh.select_by_attribute", + "operator:mesh.select_by_pole_count", + "operator:mesh.select_edge_loop_multi", + "operator:mesh.select_edge_ring_multi", + "operator:mesh.select_face_by_sides", + "operator:mesh.select_interior_faces", + "operator:mesh.select_less", + "operator:mesh.select_linked", + "operator:mesh.select_linked_pick", + "operator:mesh.select_loose", + "operator:mesh.select_mirror", + "operator:mesh.select_mode", + "operator:mesh.select_more", + "operator:mesh.select_next_item", + "operator:mesh.select_non_manifold", + "operator:mesh.select_nth", + "operator:mesh.select_prev_item", + "operator:mesh.select_random", + "operator:mesh.select_similar", + "operator:mesh.select_similar_region", + "operator:mesh.select_ungrouped", + "operator:mesh.separate", + "operator:mesh.set_normals_from_faces", + "operator:mesh.set_sharpness_by_angle", + "operator:mesh.shape_propagate_to_all", + "operator:mesh.shortest_path_pick", + "operator:mesh.shortest_path_select", + "operator:mesh.smooth_normals", + "operator:mesh.solidify", + "operator:mesh.sort_elements", + "operator:mesh.space_edge_loops_evenly", + "operator:mesh.spin", + "operator:mesh.split", + "operator:mesh.split_normals", + "operator:mesh.subdivide", + "operator:mesh.subdivide_edgering", + "operator:mesh.symmetrize", + "operator:mesh.symmetry_snap", + "operator:mesh.tris_convert_to_quads", + "operator:mesh.unsubdivide", + "operator:mesh.uv_texture_add", + "operator:mesh.uv_texture_remove", + "operator:mesh.uvs_reverse", + "operator:mesh.uvs_rotate", + "operator:mesh.vert_connect", + "operator:mesh.vert_connect_concave", + "operator:mesh.vert_connect_nonplanar", + "operator:mesh.vert_connect_path", + "operator:mesh.vertices_smooth", + "operator:mesh.vertices_smooth_laplacian", + "operator:mesh.wireframe", + "operator:nla.action_pushdown", + "operator:nla.action_sync_length", + "operator:nla.action_unlink", + "operator:nla.actionclip_add", + "operator:nla.apply_scale", + "operator:nla.bake", + "operator:nla.channels_click", + "operator:nla.clear_scale", + "operator:nla.click_select", + "operator:nla.delete", + "operator:nla.duplicate", + "operator:nla.duplicate_linked_move", + "operator:nla.duplicate_move", + "operator:nla.fmodifier_add", + "operator:nla.fmodifier_copy", + "operator:nla.fmodifier_paste", + "operator:nla.make_single_user", + "operator:nla.meta_add", + "operator:nla.meta_remove", + "operator:nla.move_down", + "operator:nla.move_up", + "operator:nla.mute_toggle", + "operator:nla.previewrange_set", + "operator:nla.select_all", + "operator:nla.select_box", + "operator:nla.select_leftright", + "operator:nla.selected_objects_add", + "operator:nla.snap", + "operator:nla.soundclip_add", + "operator:nla.split", + "operator:nla.swap", + "operator:nla.tracks_add", + "operator:nla.tracks_delete", + "operator:nla.transition_add", + "operator:nla.tweakmode_enter", + "operator:nla.tweakmode_exit", + "operator:nla.view_all", + "operator:nla.view_frame", + "operator:nla.view_selected", + "operator:node.activate_viewer", + "operator:node.add_closure_zone", + "operator:node.add_collection", + "operator:node.add_color", + "operator:node.add_empty_group", + "operator:node.add_foreach_geometry_element_zone", + "operator:node.add_group", + "operator:node.add_group_asset", + "operator:node.add_group_input_node", + "operator:node.add_image", + "operator:node.add_import_node", + "operator:node.add_mask", + "operator:node.add_material", + "operator:node.add_node", + "operator:node.add_object", + "operator:node.add_repeat_zone", + "operator:node.add_reroute", + "operator:node.add_simulation_zone", + "operator:node.add_typed_bundle", + "operator:node.add_zone", + "operator:node.attach", + "operator:node.backimage_fit", + "operator:node.backimage_move", + "operator:node.backimage_sample", + "operator:node.backimage_zoom", + "operator:node.bake_node_item_add", + "operator:node.bake_node_item_move", + "operator:node.bake_node_item_remove", + "operator:node.capture_attribute_item_add", + "operator:node.capture_attribute_item_move", + "operator:node.capture_attribute_item_remove", + "operator:node.clear_viewer_border", + "operator:node.clipboard_copy", + "operator:node.clipboard_paste", + "operator:node.closure_input_item_add", + "operator:node.closure_input_item_move", + "operator:node.closure_input_item_remove", + "operator:node.closure_output_item_add", + "operator:node.closure_output_item_move", + "operator:node.closure_output_item_remove", + "operator:node.closure_to_list_item_add", + "operator:node.closure_to_list_item_move", + "operator:node.closure_to_list_item_remove", + "operator:node.collapse_hide_unused_toggle", + "operator:node.combine_bundle_item_add", + "operator:node.combine_bundle_item_move", + "operator:node.combine_bundle_item_remove", + "operator:node.connect_to_output", + "operator:node.cryptomatte_layer_add", + "operator:node.cryptomatte_layer_remove", + "operator:node.deactivate_viewer", + "operator:node.default_group_width_set", + "operator:node.delete", + "operator:node.delete_copy_reconnect", + "operator:node.delete_reconnect", + "operator:node.detach", + "operator:node.detach_translate_attach", + "operator:node.duplicate", + "operator:node.duplicate_compositing_modifier_node_group", + "operator:node.duplicate_compositing_node_group", + "operator:node.duplicate_move", + "operator:node.duplicate_move_keep_inputs", + "operator:node.duplicate_move_linked", + "operator:node.enum_definition_item_add", + "operator:node.enum_definition_item_move", + "operator:node.enum_definition_item_remove", + "operator:node.evaluate_closure_input_item_add", + "operator:node.evaluate_closure_input_item_move", + "operator:node.evaluate_closure_input_item_remove", + "operator:node.evaluate_closure_output_item_add", + "operator:node.evaluate_closure_output_item_move", + "operator:node.evaluate_closure_output_item_remove", + "operator:node.field_to_grid_item_add", + "operator:node.field_to_grid_item_move", + "operator:node.field_to_grid_item_remove", + "operator:node.field_to_list_item_add", + "operator:node.field_to_list_item_move", + "operator:node.field_to_list_item_remove", + "operator:node.file_output_item_add", + "operator:node.file_output_item_move", + "operator:node.file_output_item_remove", + "operator:node.find_node", + "operator:node.foreach_geometry_element_zone_generation_item_add", + "operator:node.foreach_geometry_element_zone_generation_item_move", + "operator:node.foreach_geometry_element_zone_generation_item_remove", + "operator:node.foreach_geometry_element_zone_input_item_add", + "operator:node.foreach_geometry_element_zone_input_item_move", + "operator:node.foreach_geometry_element_zone_input_item_remove", + "operator:node.foreach_geometry_element_zone_main_item_add", + "operator:node.foreach_geometry_element_zone_main_item_move", + "operator:node.foreach_geometry_element_zone_main_item_remove", + "operator:node.format_string_item_add", + "operator:node.format_string_item_move", + "operator:node.format_string_item_remove", + "operator:node.geometry_nodes_viewer_item_add", + "operator:node.geometry_nodes_viewer_item_move", + "operator:node.geometry_nodes_viewer_item_remove", + "operator:node.gltf_settings_node_operator", + "operator:node.group_edit", + "operator:node.group_enter_exit", + "operator:node.group_insert", + "operator:node.group_make", + "operator:node.group_separate", + "operator:node.group_ungroup", + "operator:node.hide_socket_toggle", + "operator:node.hide_toggle", + "operator:node.index_switch_item_add", + "operator:node.index_switch_item_move", + "operator:node.index_switch_item_remove", + "operator:node.insert_offset", + "operator:node.interface_item_duplicate", + "operator:node.interface_item_make_panel_toggle", + "operator:node.interface_item_new", + "operator:node.interface_item_new_panel_toggle", + "operator:node.interface_item_remove", + "operator:node.interface_item_unlink_panel_toggle", + "operator:node.join", + "operator:node.join_named", + "operator:node.join_nodes", + "operator:node.link", + "operator:node.link_drag_operation_test", + "operator:node.link_make", + "operator:node.link_viewer", + "operator:node.links_cut", + "operator:node.links_detach", + "operator:node.links_mute", + "operator:node.move_detach_links", + "operator:node.move_detach_links_release", + "operator:node.mute_toggle", + "operator:node.new_compositing_node_group", + "operator:node.new_compositor_sequencer_node_group", + "operator:node.new_geometry_node_group_assign", + "operator:node.new_geometry_node_group_tool", + "operator:node.new_geometry_nodes_modifier", + "operator:node.new_node_tree", + "operator:node.node_color_preset_add", + "operator:node.node_copy_color", + "operator:node.options_toggle", + "operator:node.parent_set", + "operator:node.preview_toggle", + "operator:node.read_viewlayers", + "operator:node.render_changed", + "operator:node.repeat_zone_item_add", + "operator:node.repeat_zone_item_move", + "operator:node.repeat_zone_item_remove", + "operator:node.resize", + "operator:node.sample_attribute_items_item_add", + "operator:node.sample_attribute_items_item_move", + "operator:node.sample_attribute_items_item_remove", + "operator:node.select", + "operator:node.select_all", + "operator:node.select_box", + "operator:node.select_circle", + "operator:node.select_grouped", + "operator:node.select_lasso", + "operator:node.select_link_viewer", + "operator:node.select_linked_from", + "operator:node.select_linked_to", + "operator:node.select_same_type_step", + "operator:node.separate_bundle_item_add", + "operator:node.separate_bundle_item_move", + "operator:node.separate_bundle_item_remove", + "operator:node.shader_script_update", + "operator:node.simulation_zone_item_add", + "operator:node.simulation_zone_item_move", + "operator:node.simulation_zone_item_remove", + "operator:node.sockets_sync", + "operator:node.swap_empty_group", + "operator:node.swap_group_asset", + "operator:node.swap_node", + "operator:node.swap_typed_bundle", + "operator:node.swap_zone", + "operator:node.test_inlining_shader_nodes", + "operator:node.toggle_viewer", + "operator:node.translate_attach", + "operator:node.translate_attach_remove_on_cancel", + "operator:node.tree_path_parent", + "operator:node.view_all", + "operator:node.view_selected", + "operator:node.viewer_border", + "operator:node.viewer_shortcut_get", + "operator:node.viewer_shortcut_set", + "operator:object.add", + "operator:object.add_modifier_menu", + "operator:object.add_named", + "operator:object.align", + "operator:object.anim_transforms_to_deltas", + "operator:object.armature_add", + "operator:object.assign_property_defaults", + "operator:object.bake", + "operator:object.bake_image", + "operator:object.camera_add", + "operator:object.camera_custom_update", + "operator:object.clear_override_library", + "operator:object.collection_add", + "operator:object.collection_external_asset_drop", + "operator:object.collection_instance_add", + "operator:object.collection_link", + "operator:object.collection_objects_select", + "operator:object.collection_remove", + "operator:object.collection_unlink", + "operator:object.constraint_add", + "operator:object.constraint_add_with_targets", + "operator:object.constraints_clear", + "operator:object.constraints_copy", + "operator:object.convert", + "operator:object.copy_global_transform", + "operator:object.copy_relative_transform", + "operator:object.correctivesmooth_bind", + "operator:object.curves_empty_hair_add", + "operator:object.curves_random_add", + "operator:object.data_instance_add", + "operator:object.data_transfer", + "operator:object.datalayout_transfer", + "operator:object.delete", + "operator:object.delete_fix_to_camera_keys", + "operator:object.drop_geometry_nodes", + "operator:object.drop_named_material", + "operator:object.duplicate", + "operator:object.duplicate_move", + "operator:object.duplicate_move_linked", + "operator:object.duplicates_make_real", + "operator:object.editmode_toggle", + "operator:object.effector_add", + "operator:object.empty_add", + "operator:object.empty_image_add", + "operator:object.explode_refresh", + "operator:object.fix_to_camera", + "operator:object.forcefield_toggle", + "operator:object.geometry_node_bake_delete_single", + "operator:object.geometry_node_bake_pack_single", + "operator:object.geometry_node_bake_single", + "operator:object.geometry_node_bake_unpack_single", + "operator:object.geometry_node_tree_copy_assign", + "operator:object.geometry_nodes_input_attribute_toggle", + "operator:object.geometry_nodes_move_to_nodes", + "operator:object.grease_pencil_add", + "operator:object.grease_pencil_dash_modifier_segment_add", + "operator:object.grease_pencil_dash_modifier_segment_move", + "operator:object.grease_pencil_dash_modifier_segment_remove", + "operator:object.grease_pencil_time_modifier_segment_add", + "operator:object.grease_pencil_time_modifier_segment_move", + "operator:object.grease_pencil_time_modifier_segment_remove", + "operator:object.hide_collection", + "operator:object.hide_render_clear_all", + "operator:object.hide_view_clear", + "operator:object.hide_view_set", + "operator:object.hook_add_newob", + "operator:object.hook_add_selob", + "operator:object.hook_assign", + "operator:object.hook_recenter", + "operator:object.hook_remove", + "operator:object.hook_reset", + "operator:object.hook_select", + "operator:object.instance_offset_from_cursor", + "operator:object.instance_offset_from_object", + "operator:object.instance_offset_to_cursor", + "operator:object.isolate_type_render", + "operator:object.join", + "operator:object.join_shapes", + "operator:object.join_uvs", + "operator:object.laplaciandeform_bind", + "operator:object.lattice_add_to_selected", + "operator:object.light_add", + "operator:object.light_linking_blocker_collection_new", + "operator:object.light_linking_blockers_link", + "operator:object.light_linking_blockers_select", + "operator:object.light_linking_receiver_collection_new", + "operator:object.light_linking_receivers_link", + "operator:object.light_linking_receivers_select", + "operator:object.light_linking_unlink_from_collection", + "operator:object.lightprobe_add", + "operator:object.lightprobe_cache_bake", + "operator:object.lightprobe_cache_free", + "operator:object.lineart_bake_strokes", + "operator:object.lineart_clear", + "operator:object.link_to_collection", + "operator:object.location_clear", + "operator:object.make_dupli_face", + "operator:object.make_links_data", + "operator:object.make_links_scene", + "operator:object.make_local", + "operator:object.make_override_library", + "operator:object.make_single_user", + "operator:object.material_slot_add", + "operator:object.material_slot_assign", + "operator:object.material_slot_copy", + "operator:object.material_slot_deselect", + "operator:object.material_slot_move", + "operator:object.material_slot_remove", + "operator:object.material_slot_remove_all", + "operator:object.material_slot_remove_unused", + "operator:object.material_slot_select", + "operator:object.meshdeform_bind", + "operator:object.metaball_add", + "operator:object.mode_set", + "operator:object.mode_set_with_submode", + "operator:object.modifier_add", + "operator:object.modifier_add_node_group", + "operator:object.modifier_apply", + "operator:object.modifier_apply_as_shapekey", + "operator:object.modifier_convert", + "operator:object.modifier_copy", + "operator:object.modifier_copy_to_selected", + "operator:object.modifier_move_down", + "operator:object.modifier_move_to_index", + "operator:object.modifier_move_up", + "operator:object.modifier_remove", + "operator:object.modifier_set_active", + "operator:object.modifiers_clear", + "operator:object.modifiers_copy_to_selected", + "operator:object.move_to_collection", + "operator:object.multires_base_apply", + "operator:object.multires_external_pack", + "operator:object.multires_external_save", + "operator:object.multires_higher_levels_delete", + "operator:object.multires_rebuild_subdiv", + "operator:object.multires_reshape", + "operator:object.multires_subdivide", + "operator:object.multires_unsubdivide", + "operator:object.ocean_bake", + "operator:object.origin_clear", + "operator:object.origin_set", + "operator:object.parent_clear", + "operator:object.parent_inverse_apply", + "operator:object.parent_no_inverse_set", + "operator:object.parent_set", + "operator:object.particle_system_add", + "operator:object.particle_system_remove", + "operator:object.paste_transform", + "operator:object.paths_calculate", + "operator:object.paths_clear", + "operator:object.paths_update", + "operator:object.paths_update_visible", + "operator:object.pointcloud_random_add", + "operator:object.posemode_toggle", + "operator:object.quadriflow_remesh", + "operator:object.quick_explode", + "operator:object.quick_fur", + "operator:object.quick_liquid", + "operator:object.quick_smoke", + "operator:object.randomize_transform", + "operator:object.reset_override_library", + "operator:object.rotation_clear", + "operator:object.scale_clear", + "operator:object.select_all", + "operator:object.select_by_type", + "operator:object.select_camera", + "operator:object.select_grouped", + "operator:object.select_hierarchy", + "operator:object.select_less", + "operator:object.select_linked", + "operator:object.select_mirror", + "operator:object.select_more", + "operator:object.select_pattern", + "operator:object.select_random", + "operator:object.select_same_collection", + "operator:object.shade_auto_smooth", + "operator:object.shade_flat", + "operator:object.shade_smooth", + "operator:object.shade_smooth_by_angle", + "operator:object.shaderfx_add", + "operator:object.shaderfx_copy", + "operator:object.shaderfx_move_down", + "operator:object.shaderfx_move_to_index", + "operator:object.shaderfx_move_up", + "operator:object.shaderfx_remove", + "operator:object.shape_key_add", + "operator:object.shape_key_apply_to_basis", + "operator:object.shape_key_clear", + "operator:object.shape_key_copy", + "operator:object.shape_key_lock", + "operator:object.shape_key_make_basis", + "operator:object.shape_key_mirror", + "operator:object.shape_key_move", + "operator:object.shape_key_remove", + "operator:object.shape_key_retime", + "operator:object.shape_key_transfer", + "operator:object.simulation_nodes_cache_bake", + "operator:object.simulation_nodes_cache_calculate_to_frame", + "operator:object.simulation_nodes_cache_delete", + "operator:object.skin_armature_create", + "operator:object.skin_loose_mark_clear", + "operator:object.skin_radii_equalize", + "operator:object.skin_root_mark", + "operator:object.speaker_add", + "operator:object.subdivision_set", + "operator:object.surfacedeform_bind", + "operator:object.text_add", + "operator:object.track_clear", + "operator:object.track_set", + "operator:object.transfer_mode", + "operator:object.transform_apply", + "operator:object.transform_axis_target", + "operator:object.transform_to_mouse", + "operator:object.transforms_to_deltas", + "operator:object.unlink_data", + "operator:object.update_shapes", + "operator:object.vertex_group_add", + "operator:object.vertex_group_assign", + "operator:object.vertex_group_assign_new", + "operator:object.vertex_group_clean", + "operator:object.vertex_group_copy", + "operator:object.vertex_group_copy_to_selected", + "operator:object.vertex_group_deselect", + "operator:object.vertex_group_invert", + "operator:object.vertex_group_levels", + "operator:object.vertex_group_limit_total", + "operator:object.vertex_group_lock", + "operator:object.vertex_group_mirror", + "operator:object.vertex_group_move", + "operator:object.vertex_group_normalize", + "operator:object.vertex_group_normalize_all", + "operator:object.vertex_group_quantize", + "operator:object.vertex_group_remove", + "operator:object.vertex_group_remove_from", + "operator:object.vertex_group_select", + "operator:object.vertex_group_set_active", + "operator:object.vertex_group_smooth", + "operator:object.vertex_group_sort", + "operator:object.vertex_parent_set", + "operator:object.vertex_weight_copy", + "operator:object.vertex_weight_delete", + "operator:object.vertex_weight_normalize_active_vertex", + "operator:object.vertex_weight_paste", + "operator:object.vertex_weight_set_active", + "operator:object.visual_geometry_to_objects", + "operator:object.visual_transform_apply", + "operator:object.volume_add", + "operator:object.volume_import", + "operator:object.voxel_remesh", + "operator:object.voxel_size_edit", + "operator:outliner.action_set", + "operator:outliner.animdata_operation", + "operator:outliner.clear_filter", + "operator:outliner.collection_color_tag_set", + "operator:outliner.collection_disable", + "operator:outliner.collection_disable_render", + "operator:outliner.collection_drop", + "operator:outliner.collection_duplicate", + "operator:outliner.collection_duplicate_linked", + "operator:outliner.collection_enable", + "operator:outliner.collection_enable_render", + "operator:outliner.collection_exclude_clear", + "operator:outliner.collection_exclude_set", + "operator:outliner.collection_hide", + "operator:outliner.collection_hide_inside", + "operator:outliner.collection_hierarchy_delete", + "operator:outliner.collection_holdout_clear", + "operator:outliner.collection_holdout_set", + "operator:outliner.collection_indirect_only_clear", + "operator:outliner.collection_indirect_only_set", + "operator:outliner.collection_instance", + "operator:outliner.collection_isolate", + "operator:outliner.collection_link", + "operator:outliner.collection_new", + "operator:outliner.collection_objects_deselect", + "operator:outliner.collection_objects_select", + "operator:outliner.collection_show", + "operator:outliner.collection_show_inside", + "operator:outliner.constraint_operation", + "operator:outliner.data_operation", + "operator:outliner.datastack_drop", + "operator:outliner.delete", + "operator:outliner.drivers_add_selected", + "operator:outliner.drivers_delete_selected", + "operator:outliner.expanded_toggle", + "operator:outliner.hide", + "operator:outliner.highlight_update", + "operator:outliner.id_copy", + "operator:outliner.id_delete", + "operator:outliner.id_linked_relocate", + "operator:outliner.id_operation", + "operator:outliner.id_paste", + "operator:outliner.id_remap", + "operator:outliner.item_activate", + "operator:outliner.item_drag_drop", + "operator:outliner.item_openclose", + "operator:outliner.item_rename", + "operator:outliner.keyingset_add_selected", + "operator:outliner.keyingset_remove_selected", + "operator:outliner.lib_operation", + "operator:outliner.lib_relocate", + "operator:outliner.liboverride_operation", + "operator:outliner.liboverride_property_remove", + "operator:outliner.liboverride_troubleshoot_operation", + "operator:outliner.material_drop", + "operator:outliner.modifier_operation", + "operator:outliner.object_operation", + "operator:outliner.operation", + "operator:outliner.orphans_manage", + "operator:outliner.orphans_purge", + "operator:outliner.parent_clear", + "operator:outliner.parent_drop", + "operator:outliner.scene_drop", + "operator:outliner.scene_operation", + "operator:outliner.scroll_page", + "operator:outliner.select_all", + "operator:outliner.select_box", + "operator:outliner.select_walk", + "operator:outliner.show_active", + "operator:outliner.show_hierarchy", + "operator:outliner.show_one_level", + "operator:outliner.start_filter", + "operator:outliner.unhide_all", + "operator:paint.add_simple_uvs", + "operator:paint.add_texture_paint_slot", + "operator:paint.brush_colors_flip", + "operator:paint.face_select_all", + "operator:paint.face_select_hide", + "operator:paint.face_select_less", + "operator:paint.face_select_linked", + "operator:paint.face_select_linked_pick", + "operator:paint.face_select_loop", + "operator:paint.face_select_more", + "operator:paint.face_vert_reveal", + "operator:paint.grab_clone", + "operator:paint.hide_show", + "operator:paint.hide_show_all", + "operator:paint.hide_show_lasso_gesture", + "operator:paint.hide_show_line_gesture", + "operator:paint.hide_show_masked", + "operator:paint.hide_show_polyline_gesture", + "operator:paint.image_from_view", + "operator:paint.image_paint", + "operator:paint.mask_box_gesture", + "operator:paint.mask_flood_fill", + "operator:paint.mask_lasso_gesture", + "operator:paint.mask_line_gesture", + "operator:paint.mask_polyline_gesture", + "operator:paint.project_image", + "operator:paint.sample_color", + "operator:paint.texture_paint_toggle", + "operator:paint.vert_select_all", + "operator:paint.vert_select_hide", + "operator:paint.vert_select_less", + "operator:paint.vert_select_linked", + "operator:paint.vert_select_linked_pick", + "operator:paint.vert_select_loop", + "operator:paint.vert_select_more", + "operator:paint.vert_select_ungrouped", + "operator:paint.vertex_color_brightness_contrast", + "operator:paint.vertex_color_dirt", + "operator:paint.vertex_color_from_weight", + "operator:paint.vertex_color_hsv", + "operator:paint.vertex_color_invert", + "operator:paint.vertex_color_levels", + "operator:paint.vertex_color_set", + "operator:paint.vertex_color_smooth", + "operator:paint.vertex_paint", + "operator:paint.vertex_paint_toggle", + "operator:paint.visibility_filter", + "operator:paint.visibility_invert", + "operator:paint.weight_from_bones", + "operator:paint.weight_gradient", + "operator:paint.weight_paint", + "operator:paint.weight_paint_toggle", + "operator:paint.weight_sample", + "operator:paint.weight_sample_group", + "operator:paint.weight_set", + "operator:paintcurve.add_point", + "operator:paintcurve.add_point_slide", + "operator:paintcurve.cursor", + "operator:paintcurve.delete_point", + "operator:paintcurve.draw", + "operator:paintcurve.new", + "operator:paintcurve.select", + "operator:paintcurve.slide", + "operator:palette.color_add", + "operator:palette.color_delete", + "operator:palette.color_move", + "operator:palette.extract_from_image", + "operator:palette.join", + "operator:palette.new", + "operator:palette.sort", + "operator:particle.brush_edit", + "operator:particle.connect_hair", + "operator:particle.copy_particle_systems", + "operator:particle.delete", + "operator:particle.disconnect_hair", + "operator:particle.duplicate_particle_system", + "operator:particle.dupliob_copy", + "operator:particle.dupliob_move_down", + "operator:particle.dupliob_move_up", + "operator:particle.dupliob_refresh", + "operator:particle.dupliob_remove", + "operator:particle.edited_clear", + "operator:particle.hair_dynamics_preset_add", + "operator:particle.hide", + "operator:particle.mirror", + "operator:particle.new", + "operator:particle.new_target", + "operator:particle.particle_edit_toggle", + "operator:particle.particle_system_remove_all", + "operator:particle.rekey", + "operator:particle.remove_doubles", + "operator:particle.reveal", + "operator:particle.select_all", + "operator:particle.select_less", + "operator:particle.select_linked", + "operator:particle.select_linked_pick", + "operator:particle.select_more", + "operator:particle.select_random", + "operator:particle.select_roots", + "operator:particle.select_tips", + "operator:particle.shape_cut", + "operator:particle.subdivide", + "operator:particle.target_move_down", + "operator:particle.target_move_up", + "operator:particle.target_remove", + "operator:particle.unify_length", + "operator:particle.weight_set", + "operator:pointcloud.attribute_set", + "operator:pointcloud.delete", + "operator:pointcloud.duplicate", + "operator:pointcloud.duplicate_move", + "operator:pointcloud.select_all", + "operator:pointcloud.select_random", + "operator:pointcloud.separate", + "operator:pose.armature_apply", + "operator:pose.autoside_names", + "operator:pose.blend_to_neighbor", + "operator:pose.blend_with_rest", + "operator:pose.breakdown", + "operator:pose.constraint_add", + "operator:pose.constraint_add_with_targets", + "operator:pose.constraints_clear", + "operator:pose.constraints_copy", + "operator:pose.copy", + "operator:pose.flip_names", + "operator:pose.hide", + "operator:pose.ik_add", + "operator:pose.ik_clear", + "operator:pose.loc_clear", + "operator:pose.paste", + "operator:pose.paths_calculate", + "operator:pose.paths_clear", + "operator:pose.paths_range_update", + "operator:pose.paths_update", + "operator:pose.propagate", + "operator:pose.push", + "operator:pose.quaternions_flip", + "operator:pose.relax", + "operator:pose.reveal", + "operator:pose.rot_clear", + "operator:pose.rotation_mode_set", + "operator:pose.scale_clear", + "operator:pose.select_all", + "operator:pose.select_constraint_target", + "operator:pose.select_grouped", + "operator:pose.select_hierarchy", + "operator:pose.select_linked", + "operator:pose.select_linked_pick", + "operator:pose.select_mirror", + "operator:pose.select_parent", + "operator:pose.selection_set_add", + "operator:pose.selection_set_add_and_assign", + "operator:pose.selection_set_assign", + "operator:pose.selection_set_copy", + "operator:pose.selection_set_delete_all", + "operator:pose.selection_set_deselect", + "operator:pose.selection_set_move", + "operator:pose.selection_set_paste", + "operator:pose.selection_set_remove", + "operator:pose.selection_set_remove_bones", + "operator:pose.selection_set_select", + "operator:pose.selection_set_unassign", + "operator:pose.transforms_clear", + "operator:pose.user_transforms_clear", + "operator:pose.visual_transform_apply", + "operator:poselib.apply_pose_asset", + "operator:poselib.asset_delete", + "operator:poselib.asset_modify", + "operator:poselib.blend_pose_asset", + "operator:poselib.copy_as_asset", + "operator:poselib.create_pose_asset", + "operator:poselib.paste_asset", + "operator:poselib.pose_asset_select_bones", + "operator:poselib.restore_previous_action", + "operator:preferences.addon_disable", + "operator:preferences.addon_enable", + "operator:preferences.addon_expand", + "operator:preferences.addon_install", + "operator:preferences.addon_refresh", + "operator:preferences.addon_remove", + "operator:preferences.addon_show", + "operator:preferences.app_template_install", + "operator:preferences.asset_library_add", + "operator:preferences.asset_library_remove", + "operator:preferences.associate_blend", + "operator:preferences.autoexec_path_add", + "operator:preferences.autoexec_path_remove", + "operator:preferences.clear_filter", + "operator:preferences.copy_prev", + "operator:preferences.extension_repo_add", + "operator:preferences.extension_repo_remove", + "operator:preferences.extension_url_drop", + "operator:preferences.keyconfig_activate", + "operator:preferences.keyconfig_export", + "operator:preferences.keyconfig_import", + "operator:preferences.keyconfig_remove", + "operator:preferences.keyconfig_test", + "operator:preferences.keyitem_add", + "operator:preferences.keyitem_remove", + "operator:preferences.keyitem_restore", + "operator:preferences.keymap_restore", + "operator:preferences.reset_default_theme", + "operator:preferences.script_directory_add", + "operator:preferences.script_directory_remove", + "operator:preferences.start_filter", + "operator:preferences.studiolight_copy_settings", + "operator:preferences.studiolight_install", + "operator:preferences.studiolight_new", + "operator:preferences.studiolight_uninstall", + "operator:preferences.theme_install", + "operator:preferences.unassociate_blend", + "operator:ptcache.add", + "operator:ptcache.bake", + "operator:ptcache.bake_all", + "operator:ptcache.bake_from_cache", + "operator:ptcache.free_bake", + "operator:ptcache.free_bake_all", + "operator:ptcache.remove", + "operator:render.clear_texture_cache", + "operator:render.color_management_white_balance_preset_add", + "operator:render.cycles_integrator_preset_add", + "operator:render.cycles_performance_preset_add", + "operator:render.cycles_sampling_preset_add", + "operator:render.cycles_viewport_sampling_preset_add", + "operator:render.eevee_raytracing_preset_add", + "operator:render.generate_texture_cache", + "operator:render.opengl", + "operator:render.play_rendered_anim", + "operator:render.preset_add", + "operator:render.render", + "operator:render.shutter_curve_preset", + "operator:render.swap_dimensions", + "operator:render.view_cancel", + "operator:render.view_show", + "operator:rigidbody.bake_to_keyframes", + "operator:rigidbody.connect", + "operator:rigidbody.constraint_add", + "operator:rigidbody.constraint_remove", + "operator:rigidbody.mass_calculate", + "operator:rigidbody.object_add", + "operator:rigidbody.object_remove", + "operator:rigidbody.object_settings_copy", + "operator:rigidbody.objects_add", + "operator:rigidbody.objects_remove", + "operator:rigidbody.shape_change", + "operator:rigidbody.world_add", + "operator:rigidbody.world_remove", + "operator:scene.delete", + "operator:scene.drop_scene_asset", + "operator:scene.freestyle_add_edge_marks_to_keying_set", + "operator:scene.freestyle_add_face_marks_to_keying_set", + "operator:scene.freestyle_alpha_modifier_add", + "operator:scene.freestyle_color_modifier_add", + "operator:scene.freestyle_fill_range_by_selection", + "operator:scene.freestyle_geometry_modifier_add", + "operator:scene.freestyle_lineset_add", + "operator:scene.freestyle_lineset_copy", + "operator:scene.freestyle_lineset_move", + "operator:scene.freestyle_lineset_paste", + "operator:scene.freestyle_lineset_remove", + "operator:scene.freestyle_linestyle_new", + "operator:scene.freestyle_modifier_copy", + "operator:scene.freestyle_modifier_move", + "operator:scene.freestyle_modifier_remove", + "operator:scene.freestyle_module_add", + "operator:scene.freestyle_module_move", + "operator:scene.freestyle_module_open", + "operator:scene.freestyle_module_remove", + "operator:scene.freestyle_stroke_material_create", + "operator:scene.freestyle_thickness_modifier_add", + "operator:scene.gltf2_action_filter_refresh", + "operator:scene.gpencil_brush_preset_add", + "operator:scene.gpencil_material_preset_add", + "operator:scene.new", + "operator:scene.new_sequencer", + "operator:scene.new_sequencer_scene", + "operator:scene.render_view_add", + "operator:scene.render_view_remove", + "operator:scene.view_layer_add", + "operator:scene.view_layer_add_aov", + "operator:scene.view_layer_add_lightgroup", + "operator:scene.view_layer_add_used_lightgroups", + "operator:scene.view_layer_remove", + "operator:scene.view_layer_remove_aov", + "operator:scene.view_layer_remove_lightgroup", + "operator:scene.view_layer_remove_unused_lightgroups", + "operator:screen.actionzone", + "operator:screen.animation_cancel", + "operator:screen.animation_pause", + "operator:screen.animation_play", + "operator:screen.animation_step", + "operator:screen.area_close", + "operator:screen.area_dupli", + "operator:screen.area_join", + "operator:screen.area_move", + "operator:screen.area_options", + "operator:screen.area_split", + "operator:screen.area_swap", + "operator:screen.back_to_previous", + "operator:screen.delete", + "operator:screen.drivers_editor_show", + "operator:screen.edge_merge", + "operator:screen.frame_jump", + "operator:screen.frame_offset", + "operator:screen.header_toggle_menus", + "operator:screen.info_log_show", + "operator:screen.keyframe_jump", + "operator:screen.marker_jump", + "operator:screen.new", + "operator:screen.quadview_size", + "operator:screen.redo_last", + "operator:screen.region_blend", + "operator:screen.region_context_menu", + "operator:screen.region_flip", + "operator:screen.region_quadview", + "operator:screen.region_scale", + "operator:screen.region_toggle", + "operator:screen.repeat_history", + "operator:screen.repeat_last", + "operator:screen.screen_full_area", + "operator:screen.screen_set", + "operator:screen.screenshot", + "operator:screen.screenshot_area", + "operator:screen.space_context_cycle", + "operator:screen.space_type_set_or_cycle", + "operator:screen.spacedata_cleanup", + "operator:screen.time_jump", + "operator:screen.userpref_show", + "operator:screen.workspace_cycle", + "operator:script.execute_preset", + "operator:script.python_file_run", + "operator:script.reload", + "operator:sculpt.brush_stroke", + "operator:sculpt.cloth_filter", + "operator:sculpt.color_filter", + "operator:sculpt.detail_flood_fill", + "operator:sculpt.dynamic_topology_toggle", + "operator:sculpt.dyntopo_detail_size_edit", + "operator:sculpt.expand", + "operator:sculpt.face_set_box_gesture", + "operator:sculpt.face_set_change_visibility", + "operator:sculpt.face_set_edit", + "operator:sculpt.face_set_extract", + "operator:sculpt.face_set_lasso_gesture", + "operator:sculpt.face_set_line_gesture", + "operator:sculpt.face_set_polyline_gesture", + "operator:sculpt.face_sets_create", + "operator:sculpt.face_sets_init", + "operator:sculpt.face_sets_randomize_colors", + "operator:sculpt.mask_by_color", + "operator:sculpt.mask_filter", + "operator:sculpt.mask_from_boundary", + "operator:sculpt.mask_from_cavity", + "operator:sculpt.mask_init", + "operator:sculpt.mesh_filter", + "operator:sculpt.optimize", + "operator:sculpt.paint_mask_extract", + "operator:sculpt.paint_mask_slice", + "operator:sculpt.project_line_gesture", + "operator:sculpt.sample_detail_size", + "operator:sculpt.sculptmode_toggle", + "operator:sculpt.set_persistent_base", + "operator:sculpt.set_pivot_position", + "operator:sculpt.symmetrize", + "operator:sculpt.trim_box_gesture", + "operator:sculpt.trim_lasso_gesture", + "operator:sculpt.trim_line_gesture", + "operator:sculpt.trim_polyline_gesture", + "operator:sculpt.uv_sculpt_grab", + "operator:sculpt.uv_sculpt_pinch", + "operator:sculpt.uv_sculpt_relax", + "operator:sculpt_curves.brush_stroke", + "operator:sculpt_curves.min_distance_edit", + "operator:sculpt_curves.select_grow", + "operator:sculpt_curves.select_random", + "operator:sequencer.add_scene_strip_from_scene_asset", + "operator:sequencer.box_blade", + "operator:sequencer.change_effect_type", + "operator:sequencer.change_path", + "operator:sequencer.change_scene", + "operator:sequencer.connect", + "operator:sequencer.copy", + "operator:sequencer.crossfade_sounds", + "operator:sequencer.cursor_set", + "operator:sequencer.deinterlace_selected_movies", + "operator:sequencer.delete", + "operator:sequencer.disconnect", + "operator:sequencer.duplicate", + "operator:sequencer.duplicate_move", + "operator:sequencer.duplicate_move_linked", + "operator:sequencer.effect_strip_add", + "operator:sequencer.enable_proxies", + "operator:sequencer.export_subtitles", + "operator:sequencer.fades_add", + "operator:sequencer.fades_clear", + "operator:sequencer.gap_insert", + "operator:sequencer.gap_remove", + "operator:sequencer.image_strip_add", + "operator:sequencer.images_separate", + "operator:sequencer.lock", + "operator:sequencer.mask_strip_add", + "operator:sequencer.meta_make", + "operator:sequencer.meta_separate", + "operator:sequencer.meta_toggle", + "operator:sequencer.movie_strip_add", + "operator:sequencer.movieclip_strip_add", + "operator:sequencer.mute", + "operator:sequencer.offset_clear", + "operator:sequencer.paste", + "operator:sequencer.preview_duplicate_move", + "operator:sequencer.preview_duplicate_move_linked", + "operator:sequencer.reassign_inputs", + "operator:sequencer.rebuild_proxy", + "operator:sequencer.refresh_all", + "operator:sequencer.reload", + "operator:sequencer.rename_channel", + "operator:sequencer.rendersize", + "operator:sequencer.retiming_add_freeze_frame_slide", + "operator:sequencer.retiming_add_transition_slide", + "operator:sequencer.retiming_freeze_frame_add", + "operator:sequencer.retiming_key_add", + "operator:sequencer.retiming_key_delete", + "operator:sequencer.retiming_reset", + "operator:sequencer.retiming_segment_speed_set", + "operator:sequencer.retiming_show", + "operator:sequencer.retiming_transition_add", + "operator:sequencer.sample", + "operator:sequencer.scene_frame_range_update", + "operator:sequencer.scene_strip_add", + "operator:sequencer.scene_strip_add_new", + "operator:sequencer.select", + "operator:sequencer.select_all", + "operator:sequencer.select_box", + "operator:sequencer.select_circle", + "operator:sequencer.select_grouped", + "operator:sequencer.select_handle", + "operator:sequencer.select_handles", + "operator:sequencer.select_lasso", + "operator:sequencer.select_less", + "operator:sequencer.select_linked", + "operator:sequencer.select_linked_pick", + "operator:sequencer.select_more", + "operator:sequencer.select_side", + "operator:sequencer.select_side_of_frame", + "operator:sequencer.set_range_to_strips", + "operator:sequencer.slip", + "operator:sequencer.snap", + "operator:sequencer.sound_strip_add", + "operator:sequencer.split", + "operator:sequencer.split_multicam", + "operator:sequencer.strip_color_tag_set", + "operator:sequencer.strip_jump", + "operator:sequencer.strip_modifier_add", + "operator:sequencer.strip_modifier_add_node_group", + "operator:sequencer.strip_modifier_copy", + "operator:sequencer.strip_modifier_duplicate", + "operator:sequencer.strip_modifier_equalizer_redefine", + "operator:sequencer.strip_modifier_move", + "operator:sequencer.strip_modifier_move_to_index", + "operator:sequencer.strip_modifier_remove", + "operator:sequencer.strip_modifier_set_active", + "operator:sequencer.strip_transform_clear", + "operator:sequencer.strip_transform_fit", + "operator:sequencer.swap", + "operator:sequencer.swap_data", + "operator:sequencer.swap_inputs", + "operator:sequencer.text_cursor_move", + "operator:sequencer.text_cursor_set", + "operator:sequencer.text_delete", + "operator:sequencer.text_deselect_all", + "operator:sequencer.text_edit_copy", + "operator:sequencer.text_edit_cut", + "operator:sequencer.text_edit_mode_toggle", + "operator:sequencer.text_edit_paste", + "operator:sequencer.text_insert", + "operator:sequencer.text_line_break", + "operator:sequencer.text_select_all", + "operator:sequencer.text_strip_style_preset_add", + "operator:sequencer.unlock", + "operator:sequencer.unmute", + "operator:sequencer.view_all", + "operator:sequencer.view_all_preview", + "operator:sequencer.view_frame", + "operator:sequencer.view_ghost_border", + "operator:sequencer.view_selected", + "operator:sequencer.view_zoom_ratio", + "operator:sound.bake_animation", + "operator:sound.mixdown", + "operator:sound.open", + "operator:sound.open_mono", + "operator:sound.pack", + "operator:sound.unpack", + "operator:sound.update_animation_flags", + "operator:spreadsheet.add_row_filter_rule", + "operator:spreadsheet.change_spreadsheet_data_source", + "operator:spreadsheet.fit_column", + "operator:spreadsheet.remove_row_filter_rule", + "operator:spreadsheet.reorder_columns", + "operator:spreadsheet.resize_column", + "operator:spreadsheet.toggle_pin", + "operator:surface.primitive_nurbs_surface_circle_add", + "operator:surface.primitive_nurbs_surface_curve_add", + "operator:surface.primitive_nurbs_surface_cylinder_add", + "operator:surface.primitive_nurbs_surface_sphere_add", + "operator:surface.primitive_nurbs_surface_surface_add", + "operator:surface.primitive_nurbs_surface_torus_add", + "operator:text.autocomplete", + "operator:text.comment_toggle", + "operator:text.convert_whitespace", + "operator:text.copy", + "operator:text.cursor_set", + "operator:text.cut", + "operator:text.delete", + "operator:text.duplicate_line", + "operator:text.find", + "operator:text.find_set_selected", + "operator:text.indent", + "operator:text.indent_or_autocomplete", + "operator:text.insert", + "operator:text.jump", + "operator:text.jump_to_file_at_point", + "operator:text.line_break", + "operator:text.line_number", + "operator:text.make_internal", + "operator:text.move", + "operator:text.move_lines", + "operator:text.move_select", + "operator:text.new", + "operator:text.open", + "operator:text.overwrite_toggle", + "operator:text.paste", + "operator:text.reload", + "operator:text.replace", + "operator:text.replace_set_selected", + "operator:text.resolve_conflict", + "operator:text.run_script", + "operator:text.save", + "operator:text.save_as", + "operator:text.scroll", + "operator:text.scroll_bar", + "operator:text.select_all", + "operator:text.select_line", + "operator:text.select_word", + "operator:text.selection_set", + "operator:text.start_find", + "operator:text.to_3d_object", + "operator:text.unindent", + "operator:text.unlink", + "operator:text.update_shader", + "operator:text_editor.preset_add", + "operator:texture.new", + "operator:texture.slot_copy", + "operator:texture.slot_move", + "operator:texture.slot_paste", + "operator:transform.bbone_resize", + "operator:transform.bend", + "operator:transform.create_orientation", + "operator:transform.delete_orientation", + "operator:transform.edge_bevelweight", + "operator:transform.edge_crease", + "operator:transform.edge_slide", + "operator:transform.from_gizmo", + "operator:transform.mirror", + "operator:transform.push_pull", + "operator:transform.resize", + "operator:transform.rotate", + "operator:transform.rotate_normal", + "operator:transform.select_orientation", + "operator:transform.seq_slide", + "operator:transform.shear", + "operator:transform.shrink_fatten", + "operator:transform.skin_resize", + "operator:transform.tilt", + "operator:transform.tosphere", + "operator:transform.trackball", + "operator:transform.transform", + "operator:transform.translate", + "operator:transform.vert_crease", + "operator:transform.vert_slide", + "operator:transform.vertex_random", + "operator:transform.vertex_warp", + "operator:ui.assign_default_button", + "operator:ui.button_execute", + "operator:ui.button_string_clear", + "operator:ui.copy_as_driver_button", + "operator:ui.copy_data_path_button", + "operator:ui.copy_driver_to_selected_button", + "operator:ui.copy_python_command_button", + "operator:ui.copy_to_selected_button", + "operator:ui.drop_color", + "operator:ui.drop_material", + "operator:ui.drop_name", + "operator:ui.editsource", + "operator:ui.eyedropper_bone", + "operator:ui.eyedropper_color", + "operator:ui.eyedropper_colorramp", + "operator:ui.eyedropper_colorramp_point", + "operator:ui.eyedropper_depth", + "operator:ui.eyedropper_driver", + "operator:ui.eyedropper_grease_pencil_color", + "operator:ui.eyedropper_id", + "operator:ui.jump_to_target_button", + "operator:ui.list_start_filter", + "operator:ui.override_add_button", + "operator:ui.override_idtemplate_clear", + "operator:ui.override_idtemplate_make", + "operator:ui.override_idtemplate_reset", + "operator:ui.override_remove_button", + "operator:ui.reloadtranslation", + "operator:ui.reset_default_button", + "operator:ui.unset_property_button", + "operator:ui.view_drop", + "operator:ui.view_item_delete", + "operator:ui.view_item_focus", + "operator:ui.view_item_navigate", + "operator:ui.view_item_rename", + "operator:ui.view_item_select", + "operator:ui.view_scroll", + "operator:ui.view_start_filter", + "operator:uilist.entry_add", + "operator:uilist.entry_move", + "operator:uilist.entry_remove", + "operator:uv.align", + "operator:uv.align_rotation", + "operator:uv.arrange_islands", + "operator:uv.average_islands_scale", + "operator:uv.copy", + "operator:uv.copy_mirrored_faces", + "operator:uv.cube_project", + "operator:uv.cursor_set", + "operator:uv.custom_region_set", + "operator:uv.cylinder_project", + "operator:uv.export_layout", + "operator:uv.follow_active_quads", + "operator:uv.hide", + "operator:uv.lightmap_pack", + "operator:uv.mark_seam", + "operator:uv.minimize_stretch", + "operator:uv.move_on_axis", + "operator:uv.pack_islands", + "operator:uv.paste", + "operator:uv.pin", + "operator:uv.project_from_view", + "operator:uv.randomize_uv_transform", + "operator:uv.remove_doubles", + "operator:uv.reset", + "operator:uv.reveal", + "operator:uv.rip", + "operator:uv.rip_move", + "operator:uv.seams_from_islands", + "operator:uv.select", + "operator:uv.select_all", + "operator:uv.select_box", + "operator:uv.select_by_winding", + "operator:uv.select_circle", + "operator:uv.select_edge_ring", + "operator:uv.select_lasso", + "operator:uv.select_less", + "operator:uv.select_linked", + "operator:uv.select_linked_pick", + "operator:uv.select_loop", + "operator:uv.select_mode", + "operator:uv.select_more", + "operator:uv.select_overlap", + "operator:uv.select_pinned", + "operator:uv.select_similar", + "operator:uv.select_split", + "operator:uv.select_tile", + "operator:uv.shortest_path_pick", + "operator:uv.shortest_path_select", + "operator:uv.smart_project", + "operator:uv.snap_cursor", + "operator:uv.snap_selected", + "operator:uv.sphere_project", + "operator:uv.stitch", + "operator:uv.unwrap", + "operator:uv.weld", + "operator:view2d.edge_pan", + "operator:view2d.ndof", + "operator:view2d.pan", + "operator:view2d.reset", + "operator:view2d.scroll_down", + "operator:view2d.scroll_left", + "operator:view2d.scroll_right", + "operator:view2d.scroll_up", + "operator:view2d.scroller_activate", + "operator:view2d.smoothview", + "operator:view2d.zoom", + "operator:view2d.zoom_border", + "operator:view2d.zoom_in", + "operator:view2d.zoom_out", + "operator:view3d.bone_select_menu", + "operator:view3d.camera_background_image_add", + "operator:view3d.camera_background_image_remove", + "operator:view3d.camera_to_view", + "operator:view3d.camera_to_view_selected", + "operator:view3d.clear_render_border", + "operator:view3d.clip_border", + "operator:view3d.copybuffer", + "operator:view3d.cursor3d", + "operator:view3d.dolly", + "operator:view3d.drop_world", + "operator:view3d.edit_mesh_extrude_individual_move", + "operator:view3d.edit_mesh_extrude_manifold_normal", + "operator:view3d.edit_mesh_extrude_move_normal", + "operator:view3d.edit_mesh_extrude_move_shrink_fatten", + "operator:view3d.fly", + "operator:view3d.interactive_add", + "operator:view3d.localview", + "operator:view3d.localview_remove_from", + "operator:view3d.move", + "operator:view3d.navigate", + "operator:view3d.ndof_all", + "operator:view3d.ndof_orbit", + "operator:view3d.ndof_orbit_zoom", + "operator:view3d.ndof_pan", + "operator:view3d.object_as_camera", + "operator:view3d.object_mode_pie_or_toggle", + "operator:view3d.pastebuffer", + "operator:view3d.render_border", + "operator:view3d.rotate", + "operator:view3d.ruler_add", + "operator:view3d.ruler_remove", + "operator:view3d.select", + "operator:view3d.select_box", + "operator:view3d.select_circle", + "operator:view3d.select_lasso", + "operator:view3d.select_menu", + "operator:view3d.smoothview", + "operator:view3d.snap_cursor_to_active", + "operator:view3d.snap_cursor_to_center", + "operator:view3d.snap_cursor_to_grid", + "operator:view3d.snap_cursor_to_selected", + "operator:view3d.snap_selected_to_active", + "operator:view3d.snap_selected_to_cursor", + "operator:view3d.snap_selected_to_grid", + "operator:view3d.toggle_matcap_flip", + "operator:view3d.toggle_shading", + "operator:view3d.toggle_xray", + "operator:view3d.transform_gizmo_set", + "operator:view3d.view_all", + "operator:view3d.view_axis", + "operator:view3d.view_camera", + "operator:view3d.view_center_camera", + "operator:view3d.view_center_cursor", + "operator:view3d.view_center_lock", + "operator:view3d.view_center_pick", + "operator:view3d.view_lock_clear", + "operator:view3d.view_lock_to_active", + "operator:view3d.view_orbit", + "operator:view3d.view_pan", + "operator:view3d.view_persportho", + "operator:view3d.view_roll", + "operator:view3d.view_selected", + "operator:view3d.walk", + "operator:view3d.zoom", + "operator:view3d.zoom_border", + "operator:view3d.zoom_camera_1_to_1", + "operator:wm.append", + "operator:wm.batch_rename", + "operator:wm.blend_strings_utf8_validate", + "operator:wm.call_asset_shelf_popover", + "operator:wm.call_menu", + "operator:wm.call_menu_pie", + "operator:wm.call_panel", + "operator:wm.clear_recent_files", + "operator:wm.collection_export_all", + "operator:wm.context_collection_boolean_set", + "operator:wm.context_cycle_array", + "operator:wm.context_cycle_enum", + "operator:wm.context_cycle_int", + "operator:wm.context_menu_enum", + "operator:wm.context_modal_mouse", + "operator:wm.context_pie_enum", + "operator:wm.context_scale_float", + "operator:wm.context_scale_int", + "operator:wm.context_set_boolean", + "operator:wm.context_set_enum", + "operator:wm.context_set_float", + "operator:wm.context_set_id", + "operator:wm.context_set_int", + "operator:wm.context_set_string", + "operator:wm.context_set_value", + "operator:wm.context_toggle", + "operator:wm.context_toggle_enum", + "operator:wm.debug_menu", + "operator:wm.doc_view", + "operator:wm.doc_view_manual", + "operator:wm.doc_view_manual_ui_context", + "operator:wm.drop_blend_file", + "operator:wm.drop_import_file", + "operator:wm.fbx_import", + "operator:wm.grease_pencil_export_svg", + "operator:wm.grease_pencil_import_svg", + "operator:wm.id_linked_relocate", + "operator:wm.interface_theme_preset_add", + "operator:wm.interface_theme_preset_remove", + "operator:wm.interface_theme_preset_save", + "operator:wm.keyconfig_preset_add", + "operator:wm.keyconfig_preset_remove", + "operator:wm.lib_reload", + "operator:wm.lib_relocate", + "operator:wm.link", + "operator:wm.memory_statistics", + "operator:wm.obj_export", + "operator:wm.obj_import", + "operator:wm.open_mainfile", + "operator:wm.operator_cheat_sheet", + "operator:wm.operator_defaults", + "operator:wm.operator_pie_enum", + "operator:wm.operator_preset_add", + "operator:wm.operator_presets_cleanup", + "operator:wm.owner_disable", + "operator:wm.owner_enable", + "operator:wm.path_open", + "operator:wm.ply_export", + "operator:wm.ply_import", + "operator:wm.previews_batch_clear", + "operator:wm.previews_batch_generate", + "operator:wm.previews_clear", + "operator:wm.previews_ensure", + "operator:wm.properties_add", + "operator:wm.properties_context_change", + "operator:wm.properties_edit", + "operator:wm.properties_edit_value", + "operator:wm.properties_remove", + "operator:wm.quit_blender", + "operator:wm.radial_control", + "operator:wm.read_factory_settings", + "operator:wm.read_factory_userpref", + "operator:wm.read_history", + "operator:wm.read_homefile", + "operator:wm.read_userpref", + "operator:wm.recover_auto_save", + "operator:wm.recover_last_session", + "operator:wm.redraw_timer", + "operator:wm.revert_mainfile", + "operator:wm.save_as_mainfile", + "operator:wm.save_auto_save", + "operator:wm.save_homefile", + "operator:wm.save_mainfile", + "operator:wm.save_userpref", + "operator:wm.search_menu", + "operator:wm.search_operator", + "operator:wm.search_single_menu", + "operator:wm.set_stereo_3d", + "operator:wm.set_working_color_space", + "operator:wm.splash", + "operator:wm.splash_about", + "operator:wm.stl_export", + "operator:wm.stl_import", + "operator:wm.sysinfo", + "operator:wm.tool_set_by_brush_type", + "operator:wm.tool_set_by_id", + "operator:wm.tool_set_by_index", + "operator:wm.toolbar", + "operator:wm.toolbar_fallback_pie", + "operator:wm.toolbar_prompt", + "operator:wm.url_open", + "operator:wm.url_open_preset", + "operator:wm.window_close", + "operator:wm.window_fullscreen_toggle", + "operator:wm.window_new", + "operator:wm.window_new_main", + "operator:workspace.add", + "operator:workspace.append_activate", + "operator:workspace.delete", + "operator:workspace.delete_all_others", + "operator:workspace.duplicate", + "operator:workspace.reorder_to_back", + "operator:workspace.reorder_to_front", + "operator:workspace.scene_pin_toggle", + "operator:world.convert_volume_to_mesh", + "operator:world.new", + "physics:BakeSettings", + "physics:BlendDataParticles", + "physics:BoidRule", + "physics:BoidRuleAverageSpeed", + "physics:BoidRuleAvoid", + "physics:BoidRuleAvoidCollision", + "physics:BoidRuleFight", + "physics:BoidRuleFollowLeader", + "physics:BoidRuleGoal", + "physics:BoidSettings", + "physics:BoidState", + "physics:ChildParticle", + "physics:ClothCollisionSettings", + "physics:ClothModifier", + "physics:ClothSettings", + "physics:ClothSolverResult", + "physics:CollisionModifier", + "physics:CollisionSettings", + "physics:DynamicPaintBrushSettings", + "physics:DynamicPaintCanvasSettings", + "physics:DynamicPaintModifier", + "physics:DynamicPaintSurface", + "physics:DynamicPaintSurfaces", + "physics:EffectorWeights", + "physics:FieldSettings", + "physics:FluidDomainSettings", + "physics:FluidEffectorSettings", + "physics:FluidFlowSettings", + "physics:FluidModifier", + "physics:GeometryNodeAccumulateField", + "physics:GeometryNodeFieldAtIndex", + "physics:GeometryNodeFieldAverage", + "physics:GeometryNodeFieldMinAndMax", + "physics:GeometryNodeFieldOnDomain", + "physics:GeometryNodeFieldToGrid", + "physics:GeometryNodeFieldToGridItem", + "physics:GeometryNodeFieldToGridItems", + "physics:GeometryNodeFieldToList", + "physics:GeometryNodeFieldToListItem", + "physics:GeometryNodeFieldToListItems", + "physics:GeometryNodeFieldVariance", + "physics:Particle", + "physics:ParticleBrush", + "physics:ParticleDupliWeight", + "physics:ParticleEdit", + "physics:ParticleHairKey", + "physics:ParticleInstanceModifier", + "physics:ParticleKey", + "physics:ParticleSettings", + "physics:ParticleSettingsTextureSlot", + "physics:ParticleSettingsTextureSlots", + "physics:ParticleSystem", + "physics:ParticleSystemModifier", + "physics:ParticleSystems", + "physics:ParticleTarget", + "physics:PointCache", + "physics:PointCacheItem", + "physics:PointCaches", + "physics:RigidBodyConstraint", + "physics:RigidBodyObject", + "physics:RigidBodyWorld", + "physics:SPHFluidSettings", + "physics:ShaderNodeParticleInfo", + "physics:SoftBodyModifier", + "physics:SoftBodySettings", + "region:ASSET_SHELF", + "region:ASSET_SHELF_HEADER", + "region:CHANNELS", + "region:EXECUTE", + "region:FOOTER", + "region:HEADER", + "region:HUD", + "region:NAVIGATION_BAR", + "region:PREVIEW", + "region:SCRUBBING", + "region:TEMPORARY", + "region:TOOLS", + "region:TOOL_HEADER", + "region:TOOL_PROPS", + "region:UI", + "region:WINDOW", + "region:XR", + "rna:Core:Action", + "rna:Core:Armature", + "rna:Core:Brush", + "rna:Core:Curve", + "rna:Core:Curves", + "rna:Core:GreasePencil", + "rna:Core:ID", + "rna:Core:Image", + "rna:Core:Key", + "rna:Core:Lattice", + "rna:Core:Mask", + "rna:Core:MetaBall", + "rna:Core:MovieClip", + "rna:Core:Palette", + "rna:Core:ParticleSettings", + "rna:Core:PointCloud", + "rna:Core:Sound", + "rna:Core:Speaker", + "rna:Core:Text", + "rna:Core:Volume", + "rna:Depsgraph:Depsgraph", + "rna:Depsgraph:DepsgraphObjectInstance", + "rna:Depsgraph:DepsgraphUpdate", + "rna:Main:BlendData", + "rna:Main:BlendDataActions", + "rna:Main:BlendDataAnnotations", + "rna:Main:BlendDataArmatures", + "rna:Main:BlendDataBrushes", + "rna:Main:BlendDataCacheFiles", + "rna:Main:BlendDataCameras", + "rna:Main:BlendDataCollections", + "rna:Main:BlendDataCurves", + "rna:Main:BlendDataFonts", + "rna:Main:BlendDataGreasePencilsV3", + "rna:Main:BlendDataHairCurves", + "rna:Main:BlendDataImages", + "rna:Main:BlendDataLattices", + "rna:Main:BlendDataLibraries", + "rna:Main:BlendDataLights", + "rna:Main:BlendDataLineStyles", + "rna:Main:BlendDataMasks", + "rna:Main:BlendDataMaterials", + "rna:Main:BlendDataMeshes", + "rna:Main:BlendDataMetaBalls", + "rna:Main:BlendDataMovieClips", + "rna:Main:BlendDataNodeTrees", + "rna:Main:BlendDataObjects", + "rna:Main:BlendDataPaintCurves", + "rna:Main:BlendDataPalettes", + "rna:Main:BlendDataParticles", + "rna:Main:BlendDataPointClouds", + "rna:Main:BlendDataProbes", + "rna:Main:BlendDataScenes", + "rna:Main:BlendDataScreens", + "rna:Main:BlendDataSounds", + "rna:Main:BlendDataSpeakers", + "rna:Main:BlendDataTexts", + "rna:Main:BlendDataTextures", + "rna:Main:BlendDataVolumes", + "rna:Main:BlendDataWindowManagers", + "rna:Main:BlendDataWorkSpaces", + "rna:Main:BlendDataWorlds", + "rna:Mesh:Attribute", + "rna:Mesh:AttributeGroupMesh", + "rna:Mesh:BoolAttribute", + "rna:Mesh:ByteColorAttribute", + "rna:Mesh:FloatAttribute", + "rna:Mesh:IntAttribute", + "rna:Mesh:Mesh", + "rna:Mesh:MeshAutomaskingSettings", + "rna:Mesh:MeshCacheModifier", + "rna:Mesh:MeshDeformModifier", + "rna:Mesh:MeshEdge", + "rna:Mesh:MeshEdges", + "rna:Mesh:MeshLoop", + "rna:Mesh:MeshLoopColor", + "rna:Mesh:MeshLoopColorLayer", + "rna:Mesh:MeshLoopTriangle", + "rna:Mesh:MeshLoopTriangles", + "rna:Mesh:MeshLoops", + "rna:Mesh:MeshNormalValue", + "rna:Mesh:MeshPolygon", + "rna:Mesh:MeshPolygons", + "rna:Mesh:MeshSequenceCacheModifier", + "rna:Mesh:MeshSkinVertex", + "rna:Mesh:MeshSkinVertexLayer", + "rna:Mesh:MeshStatVis", + "rna:Mesh:MeshToVolumeModifier", + "rna:Mesh:MeshUVLoop", + "rna:Mesh:MeshUVLoopLayer", + "rna:Mesh:MeshVertex", + "rna:Mesh:MeshVertices", + "rna:Scene:Camera", + "rna:Scene:Collection", + "rna:Scene:Constraint", + "rna:Scene:LayerCollection", + "rna:Scene:Light", + "rna:Scene:Material", + "rna:Scene:Modifier", + "rna:Scene:NodeTree", + "rna:Scene:Object", + "rna:Scene:RenderSettings", + "rna:Scene:Scene", + "rna:Scene:Screen", + "rna:Scene:ViewLayer", + "rna:Scene:Window", + "rna:Scene:WindowManager", + "rna:Scene:World", + "space-class:SpaceClipEditor", + "space-class:SpaceConsole", + "space-class:SpaceDopeSheetEditor", + "space-class:SpaceFileBrowser", + "space-class:SpaceGraphEditor", + "space-class:SpaceImageEditor", + "space-class:SpaceInfo", + "space-class:SpaceNLA", + "space-class:SpaceNodeEditor", + "space-class:SpaceOutliner", + "space-class:SpacePreferences", + "space-class:SpaceProperties", + "space-class:SpaceSequenceEditor", + "space-class:SpaceSpreadsheet", + "space-class:SpaceTextEditor", + "space-class:SpaceView3D", + "space:CLIP_EDITOR", + "space:CONSOLE", + "space:DOPESHEET_EDITOR", + "space:EMPTY", + "space:FILE_BROWSER", + "space:GRAPH_EDITOR", + "space:IMAGE_EDITOR", + "space:INFO", + "space:NLA_EDITOR", + "space:NODE_EDITOR", + "space:OUTLINER", + "space:PREFERENCES", + "space:PROPERTIES", + "space:SEQUENCE_EDITOR", + "space:SPREADSHEET", + "space:STATUSBAR", + "space:TEXT_EDITOR", + "space:TOPBAR", + "space:VIEW_3D", + "strip:ADD", + "strip:ADJUSTMENT", + "strip:ALPHA_OVER", + "strip:ALPHA_UNDER", + "strip:COLOR", + "strip:COLORMIX", + "strip:COMPOSITOR", + "strip:CROSS", + "strip:GAMMA_CROSS", + "strip:GAUSSIAN_BLUR", + "strip:GLOW", + "strip:IMAGE", + "strip:MASK", + "strip:META", + "strip:MOVIE", + "strip:MOVIECLIP", + "strip:MULTICAM", + "strip:MULTIPLY", + "strip:SCENE", + "strip:SOUND", + "strip:SPEED", + "strip:SUBTRACT", + "strip:TEXT", + "strip:WIPE", + "workspace:EDIT", + "workspace:EDIT_GPENCIL", + "workspace:OBJECT", + "workspace:PAINT_GREASE_PENCIL", + "workspace:PARTICLE_EDIT", + "workspace:POSE", + "workspace:SCULPT", + "workspace:SCULPT_GREASE_PENCIL", + "workspace:TEXTURE_PAINT", + "workspace:VERTEX_GREASE_PENCIL", + "workspace:VERTEX_PAINT", + "workspace:WEIGHT_GREASE_PENCIL", + "workspace:WEIGHT_PAINT" + ], + "proxyOnly": [], + "routeOnly": [] + }, + "interpretation": { + "inventoryBaseline": "SUMMARY_ONLY", + "parityClaims": "NONE", + "nextTaskPerEntry": false + }, + "nextTask": "M15-02C" +} diff --git a/tests/golden/M15-02B/gap-audit-check-report.json b/tests/golden/M15-02B/gap-audit-check-report.json new file mode 100644 index 00000000..51ccf888 --- /dev/null +++ b/tests/golden/M15-02B/gap-audit-check-report.json @@ -0,0 +1,16 @@ +{ + "schemaVersion": 1, + "task": "M15-02B", + "operation": "BLENDER_PARITY_GAP_AUDIT_CHECK", + "summary": { + "inventoried": 6900, + "unmapped": 0, + "duplicate": 0, + "summaryOnly": 6900, + "proxyOnly": 0, + "routeOnly": 0, + "gapCount": 6900 + }, + "auditSha256": "e976ff40d2f3491a5a57ffcdd0d0c0f0586e57d06984e4a4aa05ba1b36800faa", + "nextTask": "M15-02C" +} diff --git a/tests/golden/M15-02B/manifest.json b/tests/golden/M15-02B/manifest.json new file mode 100644 index 00000000..e2b11771 --- /dev/null +++ b/tests/golden/M15-02B/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-02B", + "parentTask": "M15-02A", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_PARITY", + "operation": "BLENDER_PARITY_GAP_AUDIT", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-02A/manifest.json", + "sha256": "dc4ed6dd13bee952a5096d44dc6f5731fe6e32512e09b9fbe78b77d662a4f0d3" + }, + "generator": { + "path": "tools/web/generate-blender-gap-audit.mjs", + "sha256": "f0f44767cd6e2ce8aab4eed391b7e11fe1ff566cd52b80632c02085af0ec0f35" + }, + "checker": { + "path": "tools/web/check-blender-gap-audit.mjs", + "sha256": "ebab966ef3edfd5e093d742950352e5f05b7cf04d82ba817812d7afcedccfe98" + }, + "audit": { + "path": "tests/golden/M15-02B/blender-gap-audit.json", + "sha256": "e976ff40d2f3491a5a57ffcdd0d0c0f0586e57d06984e4a4aa05ba1b36800faa" + }, + "report": { + "path": "tests/golden/M15-02B/gap-audit-check-report.json", + "sha256": "445fe3426a42579334707000e87eaff29bd895d888faf4fab30f1f4bb2666269" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-02C" +} diff --git a/tests/golden/M15-02C/local-exact-audit-check-report.json b/tests/golden/M15-02C/local-exact-audit-check-report.json new file mode 100644 index 00000000..17a4e277 --- /dev/null +++ b/tests/golden/M15-02C/local-exact-audit-check-report.json @@ -0,0 +1,23 @@ +{ + "schemaVersion": 1, + "task": "M15-02C", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT_CHECK", + "contract": { + "mode": "LOCAL_EXACT", + "requiredEvidence": [ + "desktopFixture", + "wasmFixture", + "sameFixture" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "auditSha256": "ab37f60ff9ea4ad99d0f6041de707d92010de81f22a1594dd6dfa4faf6c471cb", + "nextTask": "M15-02D" +} diff --git a/tests/golden/M15-02C/local-exact-audit.json b/tests/golden/M15-02C/local-exact-audit.json new file mode 100644 index 00000000..3b7499a3 --- /dev/null +++ b/tests/golden/M15-02C/local-exact-audit.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M15-02C", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "source": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "contract": { + "mode": "LOCAL_EXACT", + "requiredEvidence": [ + "desktopFixture", + "wasmFixture", + "sameFixture" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "blockedIds": [], + "readyIds": [], + "interpretation": "NO_CLAIMS_DECLARED", + "nextTask": "M15-02D" +} diff --git a/tests/golden/M15-02C/manifest.json b/tests/golden/M15-02C/manifest.json new file mode 100644 index 00000000..ee80054d --- /dev/null +++ b/tests/golden/M15-02C/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-02C", + "parentTask": "M15-02B", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_PARITY", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-02B/manifest.json", + "sha256": "62eca822315aff2956c41ad00e379ce238aa65c9573fe30ec6716e4bcb7a4258" + }, + "generator": { + "path": "tools/web/generate-blender-contract-audit.mjs", + "sha256": "80e2bd15626a0bc87624156bbad4e42bf3869e42f7ebf9639f534ace04ff1a7e" + }, + "checker": { + "path": "tools/web/check-blender-contract-audit.mjs", + "sha256": "885290f22ccd22715e254319d12b7b214c33b2d8e06ee7a5b35034e3eba46adc" + }, + "audit": { + "path": "tests/golden/M15-02C/local-exact-audit.json", + "sha256": "ab37f60ff9ea4ad99d0f6041de707d92010de81f22a1594dd6dfa4faf6c471cb" + }, + "report": { + "path": "tests/golden/M15-02C/local-exact-audit-check-report.json", + "sha256": "0e5ffaf4fa99e0e58f19fe21ae0d2c7fb465ab487fe84924cda06085a9c6f839" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-02D" +} diff --git a/tests/golden/M15-02D/local-equivalent-audit-check-report.json b/tests/golden/M15-02D/local-equivalent-audit-check-report.json new file mode 100644 index 00000000..a135620e --- /dev/null +++ b/tests/golden/M15-02D/local-equivalent-audit-check-report.json @@ -0,0 +1,22 @@ +{ + "schemaVersion": 1, + "task": "M15-02D", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT_CHECK", + "contract": { + "mode": "LOCAL_EQUIVALENT", + "requiredEvidence": [ + "mainEvidence", + "saveReopenEvidence" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "auditSha256": "6ffe0a7f076720b120a7b6a3f9bed3b5d4afbba583388df6ac7fb94df64998a2", + "nextTask": "M15-02E" +} diff --git a/tests/golden/M15-02D/local-equivalent-audit.json b/tests/golden/M15-02D/local-equivalent-audit.json new file mode 100644 index 00000000..b34d9c8a --- /dev/null +++ b/tests/golden/M15-02D/local-equivalent-audit.json @@ -0,0 +1,28 @@ +{ + "schemaVersion": 1, + "task": "M15-02D", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "source": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "contract": { + "mode": "LOCAL_EQUIVALENT", + "requiredEvidence": [ + "mainEvidence", + "saveReopenEvidence" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "blockedIds": [], + "readyIds": [], + "interpretation": "NO_CLAIMS_DECLARED", + "nextTask": "M15-02E" +} diff --git a/tests/golden/M15-02D/manifest.json b/tests/golden/M15-02D/manifest.json new file mode 100644 index 00000000..452481c4 --- /dev/null +++ b/tests/golden/M15-02D/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-02D", + "parentTask": "M15-02C", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_PARITY", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-02C/manifest.json", + "sha256": "f0eb2ccc7515bc4282fc0e6e1ce690870b98081c4f4d89a7b0988bc9dd8b5a59" + }, + "generator": { + "path": "tools/web/generate-blender-contract-audit.mjs", + "sha256": "80e2bd15626a0bc87624156bbad4e42bf3869e42f7ebf9639f534ace04ff1a7e" + }, + "checker": { + "path": "tools/web/check-blender-contract-audit.mjs", + "sha256": "885290f22ccd22715e254319d12b7b214c33b2d8e06ee7a5b35034e3eba46adc" + }, + "audit": { + "path": "tests/golden/M15-02D/local-equivalent-audit.json", + "sha256": "6ffe0a7f076720b120a7b6a3f9bed3b5d4afbba583388df6ac7fb94df64998a2" + }, + "report": { + "path": "tests/golden/M15-02D/local-equivalent-audit-check-report.json", + "sha256": "8864c360bcdb7c0a191e17ee209a42d762ab980c643e9fecc409d34453c05a9e" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-02E" +} diff --git a/tests/golden/M15-02E/manifest.json b/tests/golden/M15-02E/manifest.json new file mode 100644 index 00000000..d7227ab9 --- /dev/null +++ b/tests/golden/M15-02E/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-02E", + "parentTask": "M15-02D", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_PARITY", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-02D/manifest.json", + "sha256": "7692380d8049a6a36a279a7a97868804014ba1f5e8440d167961f95b557c0f30" + }, + "generator": { + "path": "tools/web/generate-blender-contract-audit.mjs", + "sha256": "80e2bd15626a0bc87624156bbad4e42bf3869e42f7ebf9639f534ace04ff1a7e" + }, + "checker": { + "path": "tools/web/check-blender-contract-audit.mjs", + "sha256": "885290f22ccd22715e254319d12b7b214c33b2d8e06ee7a5b35034e3eba46adc" + }, + "audit": { + "path": "tests/golden/M15-02E/server-exact-audit.json", + "sha256": "2e77b526a90638160ba176bddb84d1028195a588f465475b3a5616854d90368e" + }, + "report": { + "path": "tests/golden/M15-02E/server-exact-audit-check-report.json", + "sha256": "0f641bdf72ad4c97882b0ece84384702f9b83fc23c5b7aca8b555d5fd5206c6c" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-02F" +} diff --git a/tests/golden/M15-02E/server-exact-audit-check-report.json b/tests/golden/M15-02E/server-exact-audit-check-report.json new file mode 100644 index 00000000..e867171f --- /dev/null +++ b/tests/golden/M15-02E/server-exact-audit-check-report.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M15-02E", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT_CHECK", + "contract": { + "mode": "SERVER_EXACT", + "requiredEvidence": [ + "jobEvidence", + "cancelEvidence", + "isolationEvidence", + "resultBindingEvidence" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "auditSha256": "2e77b526a90638160ba176bddb84d1028195a588f465475b3a5616854d90368e", + "nextTask": "M15-02F" +} diff --git a/tests/golden/M15-02E/server-exact-audit.json b/tests/golden/M15-02E/server-exact-audit.json new file mode 100644 index 00000000..b5e7346a --- /dev/null +++ b/tests/golden/M15-02E/server-exact-audit.json @@ -0,0 +1,30 @@ +{ + "schemaVersion": 1, + "task": "M15-02E", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "source": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "contract": { + "mode": "SERVER_EXACT", + "requiredEvidence": [ + "jobEvidence", + "cancelEvidence", + "isolationEvidence", + "resultBindingEvidence" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "blockedIds": [], + "readyIds": [], + "interpretation": "NO_CLAIMS_DECLARED", + "nextTask": "M15-02F" +} diff --git a/tests/golden/M15-02F/manifest.json b/tests/golden/M15-02F/manifest.json new file mode 100644 index 00000000..781c0899 --- /dev/null +++ b/tests/golden/M15-02F/manifest.json @@ -0,0 +1,36 @@ +{ + "schemaVersion": 1, + "task": "M15-02F", + "parentTask": "M15-02E", + "enablingTask": false, + "parityStateChange": false, + "runtime": "BLENDER_5_2_PARITY", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-02E/manifest.json", + "sha256": "b711e072727486b9c0011f1df7ac74857ba3b3de2ca46d388c78623203c9b508" + }, + "generator": { + "path": "tools/web/generate-blender-contract-audit.mjs", + "sha256": "80e2bd15626a0bc87624156bbad4e42bf3869e42f7ebf9639f534ace04ff1a7e" + }, + "checker": { + "path": "tools/web/check-blender-contract-audit.mjs", + "sha256": "885290f22ccd22715e254319d12b7b214c33b2d8e06ee7a5b35034e3eba46adc" + }, + "audit": { + "path": "tests/golden/M15-02F/unknown-data-audit.json", + "sha256": "bec8d2444ceaeae3db9d35ce6621129c90df2f15bf950667be6e85b096a72e4f" + }, + "report": { + "path": "tests/golden/M15-02F/unknown-data-audit-check-report.json", + "sha256": "e2733f49fa9bd755164519ca9dd46a99b1f41036b8ae4bdb0552487dcec4ab7a" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M15-03A" +} diff --git a/tests/golden/M15-02F/unknown-data-audit-check-report.json b/tests/golden/M15-02F/unknown-data-audit-check-report.json new file mode 100644 index 00000000..dd91db30 --- /dev/null +++ b/tests/golden/M15-02F/unknown-data-audit-check-report.json @@ -0,0 +1,23 @@ +{ + "schemaVersion": 1, + "task": "M15-02F", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT_CHECK", + "contract": { + "mode": "UNKNOWN_DATA_PRESERVATION", + "requiredEvidence": [ + "unknownDataFixture", + "saveReloadEvidence", + "bytePreservationEvidence" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "auditSha256": "bec8d2444ceaeae3db9d35ce6621129c90df2f15bf950667be6e85b096a72e4f", + "nextTask": "M15-03A" +} diff --git a/tests/golden/M15-02F/unknown-data-audit.json b/tests/golden/M15-02F/unknown-data-audit.json new file mode 100644 index 00000000..a0da8446 --- /dev/null +++ b/tests/golden/M15-02F/unknown-data-audit.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M15-02F", + "operation": "BLENDER_PARITY_CONTRACT_AUDIT", + "source": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "contract": { + "mode": "UNKNOWN_DATA_PRESERVATION", + "requiredEvidence": [ + "unknownDataFixture", + "saveReloadEvidence", + "bytePreservationEvidence" + ], + "failClosed": true + }, + "summary": { + "inventoried": 6900, + "applicable": 0, + "blocked": 0, + "ready": 0, + "notApplicable": 6900 + }, + "blockedIds": [], + "readyIds": [], + "interpretation": "NO_CLAIMS_DECLARED", + "nextTask": "M15-03A" +} diff --git a/tests/golden/M15-03A/completed-gap-tasks.json b/tests/golden/M15-03A/completed-gap-tasks.json new file mode 100644 index 00000000..9a03693e --- /dev/null +++ b/tests/golden/M15-03A/completed-gap-tasks.json @@ -0,0 +1,71 @@ +[ + "datablock:Action", + "datablock:Armature", + "datablock:Brush", + "datablock:Camera", + "datablock:Collection", + "datablock:Curve", + "datablock:Curves", + "datablock:FreestyleLineStyle", + "datablock:GreasePencil", + "datablock:Lattice", + "datablock:Library", + "datablock:Light", + "datablock:Material", + "datablock:Mesh", + "datablock:MetaBall", + "datablock:NodeTree", + "datablock:Object", + "datablock:ParticleSettings", + "datablock:PointCloud", + "datablock:Scene", + "datablock:Screen", + "datablock:Sound", + "datablock:Speaker", + "datablock:Text", + "datablock:Texture", + "datablock:Volume", + "datablock:WindowManager", + "datablock:WorkSpace", + "datablock:World", + "modifier:ARMATURE", + "modifier:ARRAY", + "modifier:BEVEL", + "modifier:BOOLEAN", + "modifier:BUILD", + "modifier:CAST", + "modifier:CLOTH", + "modifier:COLLISION", + "modifier:CORRECTIVE_SMOOTH", + "modifier:CURVE", + "modifier:DATA_TRANSFER", + "modifier:DECIMATE", + "modifier:DISPLACE", + "modifier:DYNAMIC_PAINT", + "modifier:EDGE_SPLIT", + "modifier:EXPLODE", + "modifier:FLUID", + "modifier:GREASE_PENCIL_ARMATURE", + "modifier:GREASE_PENCIL_ARRAY", + "modifier:GREASE_PENCIL_BUILD", + "modifier:GREASE_PENCIL_COLOR", + "modifier:GREASE_PENCIL_DASH", + "modifier:GREASE_PENCIL_ENVELOPE", + "modifier:GREASE_PENCIL_HOOK", + "modifier:GREASE_PENCIL_LATTICE", + "modifier:GREASE_PENCIL_LENGTH", + "modifier:GREASE_PENCIL_MIRROR", + "modifier:GREASE_PENCIL_MULTIPLY", + "modifier:GREASE_PENCIL_NOISE", + "modifier:GREASE_PENCIL_OFFSET", + "modifier:GREASE_PENCIL_OPACITY", + "modifier:GREASE_PENCIL_OUTLINE", + "modifier:GREASE_PENCIL_SHRINKWRAP", + "modifier:GREASE_PENCIL_SIMPLIFY", + "modifier:GREASE_PENCIL_SMOOTH", + "modifier:GREASE_PENCIL_SUBDIV", + "modifier:GREASE_PENCIL_TEXTURE", + "modifier:GREASE_PENCIL_THICKNESS", + "modifier:GREASE_PENCIL_TIME", + "modifier:GREASE_PENCIL_TINT" +] diff --git a/tests/golden/M15-03A/manifest.json b/tests/golden/M15-03A/manifest.json new file mode 100644 index 00000000..9ee72b7a --- /dev/null +++ b/tests/golden/M15-03A/manifest.json @@ -0,0 +1,35 @@ +{ + "schemaVersion": 1, + "task": "M15-03A", + "parentTask": "M15-02F", + "enablingTask": false, + "parityStateChange": false, + "operation": "BLENDER_NEXT_TASK_PLAN", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-02F/manifest.json", + "sha256": "87b09a5e3f53e29ed4df4128862e60336a637abbb9fd4774a2dcedc1abb9030e" + }, + "generator": { + "path": "tools/web/generate-blender-next-task-plan.mjs", + "sha256": "b944d9e0ee37497d397fac6bede348702768ec2fa84ff2246ef39cc58d4242c0" + }, + "checker": { + "path": "tools/web/check-blender-next-task-plan.mjs", + "sha256": "8c98a1e8abc69f97fb8229886e462594c63ea5c68eb0560abc7345ffa9cb0a32" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "report": { + "path": "tests/golden/M15-03A/next-task-plan-check-report.json", + "sha256": "c24fb23170bdeae1931fbf367712ba7e92ebd4918a876691fb68f7b4af66ca2f" + }, + "package": { + "path": "web/package.json", + "sha256": "540fcf5a711fe65654f5f9dcfccf4dfb4549dcdbef498a4eb37946cc24a76912" + } + }, + "nextTask": "M15-03B" +} diff --git a/tests/golden/M15-03A/next-task-plan-check-report.json b/tests/golden/M15-03A/next-task-plan-check-report.json new file mode 100644 index 00000000..ead80907 --- /dev/null +++ b/tests/golden/M15-03A/next-task-plan-check-report.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M15-03A", + "operation": "BLENDER_NEXT_TASK_PLAN_CHECK", + "summary": { + "taskCount": 6900, + "active": 1, + "pending": 6882, + "completed": 17, + "blocked": 0, + "byWave": { + "M16": 2667, + "M17": 29, + "M18": 451, + "M19": 20, + "M20": 89, + "M21": 3625, + "M22": 19 + } + }, + "firstTask": "M16-GAP-00018", + "planSha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032", + "nextTask": "M15-03B" +} diff --git a/tests/golden/M15-03A/next-task-plan.json b/tests/golden/M15-03A/next-task-plan.json new file mode 100644 index 00000000..19f826f6 --- /dev/null +++ b/tests/golden/M15-03A/next-task-plan.json @@ -0,0 +1,158740 @@ +{ + "schemaVersion": 1, + "task": "M15-03A", + "operation": "BLENDER_NEXT_TASK_PLAN", + "sources": { + "parityMap": { + "path": "tests/golden/M15-02A/blender-parity-map.json", + "sha256": "f3e757f26e58a4252b6cc2a7f9275428bbe5bf659cc0f0ff6350a147bdf2809c" + }, + "gapAudit": { + "path": "tests/golden/M15-02B/blender-gap-audit.json", + "sha256": "e976ff40d2f3491a5a57ffcdd0d0c0f0586e57d06984e4a4aa05ba1b36800faa" + }, + "completions": { + "path": "tests/golden/M15-03A/completed-gap-tasks.json", + "sha256": "19e53785fe5f7ae596f470936f5bc3348898a863da1cac2339e4ec955490b912" + } + }, + "summary": { + "taskCount": 6900, + "active": 1, + "pending": 6830, + "completed": 69, + "blocked": 0, + "byWave": { + "M16": 2667, + "M17": 29, + "M18": 451, + "M19": 20, + "M20": 89, + "M21": 3625, + "M22": 19 + } + }, + "tasks": [ + { + "id": "M16-GAP-00001", + "gapId": "datablock:Action", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00001-datablock-Action.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00001.py -- tests/files/web/generated/M16-GAP-00001-datablock-Action.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00002", + "gapId": "datablock:Armature", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00002.py -- tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00003", + "gapId": "datablock:Brush", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00003.py -- tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00004", + "gapId": "datablock:Camera", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00004.py -- tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00005", + "gapId": "datablock:Collection", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00005.py -- tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00006", + "gapId": "datablock:Curve", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00006.py -- tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00007", + "gapId": "datablock:Curves", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00007.py -- tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00008", + "gapId": "datablock:FreestyleLineStyle", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00008.py -- tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00009", + "gapId": "datablock:GreasePencil", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00009.py -- tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00010", + "gapId": "datablock:Lattice", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00010.py -- tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00011", + "gapId": "datablock:Library", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00011.py -- tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00012", + "gapId": "datablock:Light", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00012.py -- tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00013", + "gapId": "datablock:Material", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00013.py -- tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00014", + "gapId": "datablock:Mesh", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00014.py -- tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00015", + "gapId": "datablock:MetaBall", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00015.py -- tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00016", + "gapId": "datablock:NodeTree", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00016.py -- tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00017", + "gapId": "datablock:Object", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00017.py -- tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00018", + "gapId": "datablock:ParticleSettings", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00018.py -- tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00019", + "gapId": "datablock:PointCloud", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00019.py -- tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00020", + "gapId": "datablock:Scene", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00020.py -- tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00020", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00021", + "gapId": "datablock:Screen", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00021.py -- tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00021", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00022", + "gapId": "datablock:Sound", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00022.py -- tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00022", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00023", + "gapId": "datablock:Speaker", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00023.py -- tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00023", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00024", + "gapId": "datablock:Text", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00024.py -- tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00024", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00025", + "gapId": "datablock:Texture", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00025.py -- tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00025", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00026", + "gapId": "datablock:Volume", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00026.py -- tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00026", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00027", + "gapId": "datablock:WindowManager", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00027.py -- tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00027", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00028", + "gapId": "datablock:WorkSpace", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00028.py -- tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00028", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00029", + "gapId": "datablock:World", + "ownerFamily": "RNA_DATABLOCK", + "sourceTask": "M15-01A", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00029-datablock-World.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00029.py -- tests/files/web/generated/M16-GAP-00029-datablock-World.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00029", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00030", + "gapId": "modifier:ARMATURE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00030.py -- tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00030", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00031", + "gapId": "modifier:ARRAY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00031.py -- tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00031", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00032", + "gapId": "modifier:BEVEL", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00032.py -- tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00032", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00033", + "gapId": "modifier:BOOLEAN", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00033.py -- tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00033", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00034", + "gapId": "modifier:BUILD", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00034.py -- tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00034", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00035", + "gapId": "modifier:CAST", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00035.py -- tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00035", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00036", + "gapId": "modifier:CLOTH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00036.py -- tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00036", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00037", + "gapId": "modifier:COLLISION", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00037.py -- tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00037", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00038", + "gapId": "modifier:CORRECTIVE_SMOOTH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00038.py -- tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00038", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00039", + "gapId": "modifier:CURVE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00039.py -- tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00039", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00040", + "gapId": "modifier:DATA_TRANSFER", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00040.py -- tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00040", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00041", + "gapId": "modifier:DECIMATE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00041.py -- tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00041", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00042", + "gapId": "modifier:DISPLACE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00042.py -- tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00042", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00043", + "gapId": "modifier:DYNAMIC_PAINT", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00043.py -- tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00043", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00044", + "gapId": "modifier:EDGE_SPLIT", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00044.py -- tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00044", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00045", + "gapId": "modifier:EXPLODE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00045.py -- tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00045", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00046", + "gapId": "modifier:FLUID", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00046.py -- tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00046", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00047", + "gapId": "modifier:GREASE_PENCIL_ARMATURE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00047.py -- tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00047", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00048", + "gapId": "modifier:GREASE_PENCIL_ARRAY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00048.py -- tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00048", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00049", + "gapId": "modifier:GREASE_PENCIL_BUILD", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00049.py -- tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00049", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00050", + "gapId": "modifier:GREASE_PENCIL_COLOR", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00050.py -- tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00050", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00051", + "gapId": "modifier:GREASE_PENCIL_DASH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00051.py -- tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00051", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00052", + "gapId": "modifier:GREASE_PENCIL_ENVELOPE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00052.py -- tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00052", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00053", + "gapId": "modifier:GREASE_PENCIL_HOOK", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00053.py -- tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00053", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00054", + "gapId": "modifier:GREASE_PENCIL_LATTICE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00054.py -- tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00054", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00055", + "gapId": "modifier:GREASE_PENCIL_LENGTH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00055.py -- tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00055", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00056", + "gapId": "modifier:GREASE_PENCIL_MIRROR", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00056.py -- tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00056", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00057", + "gapId": "modifier:GREASE_PENCIL_MULTIPLY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00057.py -- tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00057", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00058", + "gapId": "modifier:GREASE_PENCIL_NOISE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00058.py -- tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00058", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00059", + "gapId": "modifier:GREASE_PENCIL_OFFSET", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00059.py -- tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00059", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00060", + "gapId": "modifier:GREASE_PENCIL_OPACITY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00060.py -- tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00060", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00061", + "gapId": "modifier:GREASE_PENCIL_OUTLINE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00061.py -- tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00061", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00062", + "gapId": "modifier:GREASE_PENCIL_SHRINKWRAP", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00062.py -- tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00062", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00063", + "gapId": "modifier:GREASE_PENCIL_SIMPLIFY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00063.py -- tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00063", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00064", + "gapId": "modifier:GREASE_PENCIL_SMOOTH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00064.py -- tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00064", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00065", + "gapId": "modifier:GREASE_PENCIL_SUBDIV", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00065.py -- tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00065", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00066", + "gapId": "modifier:GREASE_PENCIL_TEXTURE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00066.py -- tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00066", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00067", + "gapId": "modifier:GREASE_PENCIL_THICKNESS", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00067.py -- tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00067", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00068", + "gapId": "modifier:GREASE_PENCIL_TIME", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00068.py -- tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00068", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00069", + "gapId": "modifier:GREASE_PENCIL_TINT", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00069.py -- tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00069", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00070", + "gapId": "modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "completed", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00070.py -- tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00070", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00071", + "gapId": "modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "active", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00071-modifier-GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00071.py -- tests/files/web/generated/M16-GAP-00071-modifier-GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00071", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00072", + "gapId": "modifier:HOOK", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00072-modifier-HOOK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00072.py -- tests/files/web/generated/M16-GAP-00072-modifier-HOOK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00072", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00073", + "gapId": "modifier:LAPLACIANDEFORM", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00073-modifier-LAPLACIANDEFORM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00073.py -- tests/files/web/generated/M16-GAP-00073-modifier-LAPLACIANDEFORM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00073", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00074", + "gapId": "modifier:LAPLACIANSMOOTH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00074-modifier-LAPLACIANSMOOTH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00074.py -- tests/files/web/generated/M16-GAP-00074-modifier-LAPLACIANSMOOTH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00074", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00075", + "gapId": "modifier:LATTICE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00075-modifier-LATTICE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00075.py -- tests/files/web/generated/M16-GAP-00075-modifier-LATTICE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00075", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00076", + "gapId": "modifier:LINEART", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00076-modifier-LINEART.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00076.py -- tests/files/web/generated/M16-GAP-00076-modifier-LINEART.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00076", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00077", + "gapId": "modifier:MASK", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00077-modifier-MASK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00077.py -- tests/files/web/generated/M16-GAP-00077-modifier-MASK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00077", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00078", + "gapId": "modifier:MESH_CACHE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00078-modifier-MESH_CACHE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00078.py -- tests/files/web/generated/M16-GAP-00078-modifier-MESH_CACHE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00078", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00079", + "gapId": "modifier:MESH_DEFORM", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00079-modifier-MESH_DEFORM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00079.py -- tests/files/web/generated/M16-GAP-00079-modifier-MESH_DEFORM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00079", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00080", + "gapId": "modifier:MESH_SEQUENCE_CACHE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00080-modifier-MESH_SEQUENCE_CACHE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00080.py -- tests/files/web/generated/M16-GAP-00080-modifier-MESH_SEQUENCE_CACHE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00080", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00081", + "gapId": "modifier:MESH_TO_VOLUME", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00081-modifier-MESH_TO_VOLUME.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00081.py -- tests/files/web/generated/M16-GAP-00081-modifier-MESH_TO_VOLUME.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00081", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00082", + "gapId": "modifier:MIRROR", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00082-modifier-MIRROR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00082.py -- tests/files/web/generated/M16-GAP-00082-modifier-MIRROR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00082", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00083", + "gapId": "modifier:MULTIRES", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00083-modifier-MULTIRES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00083.py -- tests/files/web/generated/M16-GAP-00083-modifier-MULTIRES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00083", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00084", + "gapId": "modifier:NODES", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00084-modifier-NODES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00084.py -- tests/files/web/generated/M16-GAP-00084-modifier-NODES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00084", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00085", + "gapId": "modifier:NORMAL_EDIT", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00085-modifier-NORMAL_EDIT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00085.py -- tests/files/web/generated/M16-GAP-00085-modifier-NORMAL_EDIT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00085", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00086", + "gapId": "modifier:OCEAN", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00086-modifier-OCEAN.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00086.py -- tests/files/web/generated/M16-GAP-00086-modifier-OCEAN.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00086", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00087", + "gapId": "modifier:PARTICLE_INSTANCE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00087-modifier-PARTICLE_INSTANCE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00087.py -- tests/files/web/generated/M16-GAP-00087-modifier-PARTICLE_INSTANCE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00087", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00088", + "gapId": "modifier:PARTICLE_SYSTEM", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00088-modifier-PARTICLE_SYSTEM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00088.py -- tests/files/web/generated/M16-GAP-00088-modifier-PARTICLE_SYSTEM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00088", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00089", + "gapId": "modifier:REMESH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00089-modifier-REMESH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00089.py -- tests/files/web/generated/M16-GAP-00089-modifier-REMESH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00089", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00090", + "gapId": "modifier:SCREW", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00090-modifier-SCREW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00090.py -- tests/files/web/generated/M16-GAP-00090-modifier-SCREW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00090", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00091", + "gapId": "modifier:SHRINKWRAP", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00091-modifier-SHRINKWRAP.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00091.py -- tests/files/web/generated/M16-GAP-00091-modifier-SHRINKWRAP.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00091", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00092", + "gapId": "modifier:SIMPLE_DEFORM", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00092-modifier-SIMPLE_DEFORM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00092.py -- tests/files/web/generated/M16-GAP-00092-modifier-SIMPLE_DEFORM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00092", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00093", + "gapId": "modifier:SKIN", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00093-modifier-SKIN.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00093.py -- tests/files/web/generated/M16-GAP-00093-modifier-SKIN.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00093", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00094", + "gapId": "modifier:SMOOTH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00094-modifier-SMOOTH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00094.py -- tests/files/web/generated/M16-GAP-00094-modifier-SMOOTH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00094", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00095", + "gapId": "modifier:SOFT_BODY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00095-modifier-SOFT_BODY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00095.py -- tests/files/web/generated/M16-GAP-00095-modifier-SOFT_BODY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00095", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00096", + "gapId": "modifier:SOLIDIFY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00096-modifier-SOLIDIFY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00096.py -- tests/files/web/generated/M16-GAP-00096-modifier-SOLIDIFY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00096", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00097", + "gapId": "modifier:SUBSURF", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00097-modifier-SUBSURF.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00097.py -- tests/files/web/generated/M16-GAP-00097-modifier-SUBSURF.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00097", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00098", + "gapId": "modifier:SURFACE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00098-modifier-SURFACE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00098.py -- tests/files/web/generated/M16-GAP-00098-modifier-SURFACE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00098", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00099", + "gapId": "modifier:SURFACE_DEFORM", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00099-modifier-SURFACE_DEFORM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00099.py -- tests/files/web/generated/M16-GAP-00099-modifier-SURFACE_DEFORM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00099", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00100", + "gapId": "modifier:TRIANGULATE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00100-modifier-TRIANGULATE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00100.py -- tests/files/web/generated/M16-GAP-00100-modifier-TRIANGULATE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00100", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00101", + "gapId": "modifier:UV_PROJECT", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00101-modifier-UV_PROJECT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00101.py -- tests/files/web/generated/M16-GAP-00101-modifier-UV_PROJECT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00101", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00102", + "gapId": "modifier:UV_WARP", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00102-modifier-UV_WARP.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00102.py -- tests/files/web/generated/M16-GAP-00102-modifier-UV_WARP.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00102", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00103", + "gapId": "modifier:VERTEX_WEIGHT_EDIT", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00103-modifier-VERTEX_WEIGHT_EDIT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00103.py -- tests/files/web/generated/M16-GAP-00103-modifier-VERTEX_WEIGHT_EDIT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00103", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00104", + "gapId": "modifier:VERTEX_WEIGHT_MIX", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00104-modifier-VERTEX_WEIGHT_MIX.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00104.py -- tests/files/web/generated/M16-GAP-00104-modifier-VERTEX_WEIGHT_MIX.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00104", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00105", + "gapId": "modifier:VERTEX_WEIGHT_PROXIMITY", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00105-modifier-VERTEX_WEIGHT_PROXIMITY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00105.py -- tests/files/web/generated/M16-GAP-00105-modifier-VERTEX_WEIGHT_PROXIMITY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00105", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00106", + "gapId": "modifier:VOLUME_DISPLACE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00106-modifier-VOLUME_DISPLACE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00106.py -- tests/files/web/generated/M16-GAP-00106-modifier-VOLUME_DISPLACE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00106", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00107", + "gapId": "modifier:VOLUME_TO_MESH", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00107-modifier-VOLUME_TO_MESH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00107.py -- tests/files/web/generated/M16-GAP-00107-modifier-VOLUME_TO_MESH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00107", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00108", + "gapId": "modifier:WARP", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00108-modifier-WARP.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00108.py -- tests/files/web/generated/M16-GAP-00108-modifier-WARP.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00108", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00109", + "gapId": "modifier:WAVE", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00109-modifier-WAVE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00109.py -- tests/files/web/generated/M16-GAP-00109-modifier-WAVE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00109", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00110", + "gapId": "modifier:WEIGHTED_NORMAL", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00110-modifier-WEIGHTED_NORMAL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00110.py -- tests/files/web/generated/M16-GAP-00110-modifier-WEIGHTED_NORMAL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00110", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00111", + "gapId": "modifier:WELD", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00111-modifier-WELD.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00111.py -- tests/files/web/generated/M16-GAP-00111-modifier-WELD.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00111", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00112", + "gapId": "modifier:WIREFRAME", + "ownerFamily": "MODIFIER", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00112-modifier-WIREFRAME.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00112.py -- tests/files/web/generated/M16-GAP-00112-modifier-WIREFRAME.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00112", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00113", + "gapId": "operator:action.bake_keys", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00113-operator-action.bake_keys.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00113.py -- tests/files/web/generated/M16-GAP-00113-operator-action.bake_keys.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00113", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00114", + "gapId": "operator:action.clean", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00114-operator-action.clean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00114.py -- tests/files/web/generated/M16-GAP-00114-operator-action.clean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00114", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00115", + "gapId": "operator:action.clickselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00115-operator-action.clickselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00115.py -- tests/files/web/generated/M16-GAP-00115-operator-action.clickselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00115", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00116", + "gapId": "operator:action.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00116-operator-action.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00116.py -- tests/files/web/generated/M16-GAP-00116-operator-action.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00116", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00117", + "gapId": "operator:action.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00117-operator-action.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00117.py -- tests/files/web/generated/M16-GAP-00117-operator-action.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00117", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00118", + "gapId": "operator:action.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00118-operator-action.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00118.py -- tests/files/web/generated/M16-GAP-00118-operator-action.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00118", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00119", + "gapId": "operator:action.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00119-operator-action.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00119.py -- tests/files/web/generated/M16-GAP-00119-operator-action.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00119", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00120", + "gapId": "operator:action.easing_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00120-operator-action.easing_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00120.py -- tests/files/web/generated/M16-GAP-00120-operator-action.easing_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00120", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00121", + "gapId": "operator:action.extrapolation_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00121-operator-action.extrapolation_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00121.py -- tests/files/web/generated/M16-GAP-00121-operator-action.extrapolation_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00121", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00122", + "gapId": "operator:action.frame_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00122-operator-action.frame_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00122.py -- tests/files/web/generated/M16-GAP-00122-operator-action.frame_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00122", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00123", + "gapId": "operator:action.handle_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00123-operator-action.handle_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00123.py -- tests/files/web/generated/M16-GAP-00123-operator-action.handle_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00123", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00124", + "gapId": "operator:action.interpolation_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00124-operator-action.interpolation_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00124.py -- tests/files/web/generated/M16-GAP-00124-operator-action.interpolation_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00124", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00125", + "gapId": "operator:action.keyframe_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00125-operator-action.keyframe_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00125.py -- tests/files/web/generated/M16-GAP-00125-operator-action.keyframe_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00125", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00126", + "gapId": "operator:action.keyframe_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00126-operator-action.keyframe_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00126.py -- tests/files/web/generated/M16-GAP-00126-operator-action.keyframe_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00126", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00127", + "gapId": "operator:action.markers_make_local", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00127-operator-action.markers_make_local.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00127.py -- tests/files/web/generated/M16-GAP-00127-operator-action.markers_make_local.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00127", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00128", + "gapId": "operator:action.mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00128-operator-action.mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00128.py -- tests/files/web/generated/M16-GAP-00128-operator-action.mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00128", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00129", + "gapId": "operator:action.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00129-operator-action.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00129.py -- tests/files/web/generated/M16-GAP-00129-operator-action.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00129", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00130", + "gapId": "operator:action.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00130-operator-action.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00130.py -- tests/files/web/generated/M16-GAP-00130-operator-action.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00130", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00131", + "gapId": "operator:action.previewrange_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00131-operator-action.previewrange_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00131.py -- tests/files/web/generated/M16-GAP-00131-operator-action.previewrange_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00131", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00132", + "gapId": "operator:action.push_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00132-operator-action.push_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00132.py -- tests/files/web/generated/M16-GAP-00132-operator-action.push_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00132", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00133", + "gapId": "operator:action.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00133-operator-action.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00133.py -- tests/files/web/generated/M16-GAP-00133-operator-action.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00133", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00134", + "gapId": "operator:action.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00134-operator-action.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00134.py -- tests/files/web/generated/M16-GAP-00134-operator-action.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00134", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00135", + "gapId": "operator:action.select_by_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00135-operator-action.select_by_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00135.py -- tests/files/web/generated/M16-GAP-00135-operator-action.select_by_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00135", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00136", + "gapId": "operator:action.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00136-operator-action.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00136.py -- tests/files/web/generated/M16-GAP-00136-operator-action.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00136", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00137", + "gapId": "operator:action.select_column", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00137-operator-action.select_column.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00137.py -- tests/files/web/generated/M16-GAP-00137-operator-action.select_column.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00137", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00138", + "gapId": "operator:action.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00138-operator-action.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00138.py -- tests/files/web/generated/M16-GAP-00138-operator-action.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00138", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00139", + "gapId": "operator:action.select_leftright", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00139-operator-action.select_leftright.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00139.py -- tests/files/web/generated/M16-GAP-00139-operator-action.select_leftright.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00139", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00140", + "gapId": "operator:action.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00140-operator-action.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00140", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00141", + "gapId": "operator:action.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00141-operator-action.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00141", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00142", + "gapId": "operator:action.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00142-operator-action.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00142", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00143", + "gapId": "operator:action.snap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00143-operator-action.snap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00143", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00144", + "gapId": "operator:action.stash", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00144-operator-action.stash.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00144", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00145", + "gapId": "operator:action.stash_and_create", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00145-operator-action.stash_and_create.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00145", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00146", + "gapId": "operator:action.unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00146-operator-action.unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00146", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00147", + "gapId": "operator:action.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00147-operator-action.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00147", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00148", + "gapId": "operator:action.view_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00148-operator-action.view_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00148", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00149", + "gapId": "operator:action.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00149-operator-action.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00149", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00150", + "gapId": "operator:anim.change_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00150-operator-anim.change_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00150", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00151", + "gapId": "operator:anim.channel_select_keys", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00151-operator-anim.channel_select_keys.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00151", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00152", + "gapId": "operator:anim.channel_view_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00152-operator-anim.channel_view_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00152", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00153", + "gapId": "operator:anim.channels_bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00153-operator-anim.channels_bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00153", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00154", + "gapId": "operator:anim.channels_clean_empty", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00154-operator-anim.channels_clean_empty.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00154", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00155", + "gapId": "operator:anim.channels_click", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00155-operator-anim.channels_click.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00155", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00156", + "gapId": "operator:anim.channels_collapse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00156-operator-anim.channels_collapse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00156", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00157", + "gapId": "operator:anim.channels_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00157-operator-anim.channels_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00157", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00158", + "gapId": "operator:anim.channels_editable_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00158-operator-anim.channels_editable_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00158", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00159", + "gapId": "operator:anim.channels_expand", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00159-operator-anim.channels_expand.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00159", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00160", + "gapId": "operator:anim.channels_fcurves_enable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00160-operator-anim.channels_fcurves_enable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00160", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00161", + "gapId": "operator:anim.channels_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00161-operator-anim.channels_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00161", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00162", + "gapId": "operator:anim.channels_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00162-operator-anim.channels_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00162", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00163", + "gapId": "operator:anim.channels_rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00163-operator-anim.channels_rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00163", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00164", + "gapId": "operator:anim.channels_select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00164-operator-anim.channels_select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00164", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00165", + "gapId": "operator:anim.channels_select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00165-operator-anim.channels_select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00165", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00166", + "gapId": "operator:anim.channels_select_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00166-operator-anim.channels_select_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00166", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00167", + "gapId": "operator:anim.channels_setting_disable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00167-operator-anim.channels_setting_disable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00167", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00168", + "gapId": "operator:anim.channels_setting_enable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00168-operator-anim.channels_setting_enable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00168", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00169", + "gapId": "operator:anim.channels_setting_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00169-operator-anim.channels_setting_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00169", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00170", + "gapId": "operator:anim.channels_ungroup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00170-operator-anim.channels_ungroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00170", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00171", + "gapId": "operator:anim.channels_view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00171-operator-anim.channels_view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00171", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00172", + "gapId": "operator:anim.clear_useless_actions", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00172-operator-anim.clear_useless_actions.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00172", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00173", + "gapId": "operator:anim.copy_driver_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00173-operator-anim.copy_driver_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00173", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00174", + "gapId": "operator:anim.driver_button_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00174-operator-anim.driver_button_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "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", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00174", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00175", + "gapId": "operator:anim.driver_button_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00175-operator-anim.driver_button_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00175.py -- tests/files/web/generated/M16-GAP-00175-operator-anim.driver_button_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00175", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00176", + "gapId": "operator:anim.driver_button_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00176-operator-anim.driver_button_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00176.py -- tests/files/web/generated/M16-GAP-00176-operator-anim.driver_button_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00176", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00177", + "gapId": "operator:anim.end_frame_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00177-operator-anim.end_frame_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00177.py -- tests/files/web/generated/M16-GAP-00177-operator-anim.end_frame_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00177", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00178", + "gapId": "operator:anim.keyframe_clear_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00178-operator-anim.keyframe_clear_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00178.py -- tests/files/web/generated/M16-GAP-00178-operator-anim.keyframe_clear_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00178", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00179", + "gapId": "operator:anim.keyframe_clear_v3d", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00179-operator-anim.keyframe_clear_v3d.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00179.py -- tests/files/web/generated/M16-GAP-00179-operator-anim.keyframe_clear_v3d.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00179", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00180", + "gapId": "operator:anim.keyframe_clear_vse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00180-operator-anim.keyframe_clear_vse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00180.py -- tests/files/web/generated/M16-GAP-00180-operator-anim.keyframe_clear_vse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00180", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00181", + "gapId": "operator:anim.keyframe_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00181-operator-anim.keyframe_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00181.py -- tests/files/web/generated/M16-GAP-00181-operator-anim.keyframe_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00181", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00182", + "gapId": "operator:anim.keyframe_delete_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00182-operator-anim.keyframe_delete_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00182.py -- tests/files/web/generated/M16-GAP-00182-operator-anim.keyframe_delete_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00182", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00183", + "gapId": "operator:anim.keyframe_delete_by_name", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00183-operator-anim.keyframe_delete_by_name.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00183.py -- tests/files/web/generated/M16-GAP-00183-operator-anim.keyframe_delete_by_name.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00183", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00184", + "gapId": "operator:anim.keyframe_delete_v3d", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00184-operator-anim.keyframe_delete_v3d.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00184.py -- tests/files/web/generated/M16-GAP-00184-operator-anim.keyframe_delete_v3d.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00184", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00185", + "gapId": "operator:anim.keyframe_delete_vse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00185-operator-anim.keyframe_delete_vse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00185.py -- tests/files/web/generated/M16-GAP-00185-operator-anim.keyframe_delete_vse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00185", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00186", + "gapId": "operator:anim.keyframe_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00186-operator-anim.keyframe_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00186.py -- tests/files/web/generated/M16-GAP-00186-operator-anim.keyframe_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00186", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00187", + "gapId": "operator:anim.keyframe_insert_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00187-operator-anim.keyframe_insert_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00187.py -- tests/files/web/generated/M16-GAP-00187-operator-anim.keyframe_insert_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00187", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00188", + "gapId": "operator:anim.keyframe_insert_by_name", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00188-operator-anim.keyframe_insert_by_name.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00188.py -- tests/files/web/generated/M16-GAP-00188-operator-anim.keyframe_insert_by_name.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00188", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00189", + "gapId": "operator:anim.keyframe_insert_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00189-operator-anim.keyframe_insert_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00189.py -- tests/files/web/generated/M16-GAP-00189-operator-anim.keyframe_insert_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00189", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00190", + "gapId": "operator:anim.keying_set_active_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00190-operator-anim.keying_set_active_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00190.py -- tests/files/web/generated/M16-GAP-00190-operator-anim.keying_set_active_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00190", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00191", + "gapId": "operator:anim.keying_set_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00191-operator-anim.keying_set_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00191.py -- tests/files/web/generated/M16-GAP-00191-operator-anim.keying_set_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00191", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00192", + "gapId": "operator:anim.keying_set_export", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00192-operator-anim.keying_set_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00192.py -- tests/files/web/generated/M16-GAP-00192-operator-anim.keying_set_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00192", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00193", + "gapId": "operator:anim.keying_set_path_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00193-operator-anim.keying_set_path_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00193.py -- tests/files/web/generated/M16-GAP-00193-operator-anim.keying_set_path_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00193", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00194", + "gapId": "operator:anim.keying_set_path_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00194-operator-anim.keying_set_path_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00194.py -- tests/files/web/generated/M16-GAP-00194-operator-anim.keying_set_path_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00194", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00195", + "gapId": "operator:anim.keying_set_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00195-operator-anim.keying_set_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00195.py -- tests/files/web/generated/M16-GAP-00195-operator-anim.keying_set_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00195", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00196", + "gapId": "operator:anim.keyingset_button_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00196-operator-anim.keyingset_button_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00196.py -- tests/files/web/generated/M16-GAP-00196-operator-anim.keyingset_button_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00196", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00197", + "gapId": "operator:anim.keyingset_button_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00197-operator-anim.keyingset_button_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00197.py -- tests/files/web/generated/M16-GAP-00197-operator-anim.keyingset_button_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00197", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00198", + "gapId": "operator:anim.merge_animation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00198-operator-anim.merge_animation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00198.py -- tests/files/web/generated/M16-GAP-00198-operator-anim.merge_animation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00198", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00199", + "gapId": "operator:anim.paste_driver_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00199-operator-anim.paste_driver_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00199.py -- tests/files/web/generated/M16-GAP-00199-operator-anim.paste_driver_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00199", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00200", + "gapId": "operator:anim.previewrange_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00200-operator-anim.previewrange_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00200.py -- tests/files/web/generated/M16-GAP-00200-operator-anim.previewrange_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00200", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00201", + "gapId": "operator:anim.previewrange_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00201-operator-anim.previewrange_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00201.py -- tests/files/web/generated/M16-GAP-00201-operator-anim.previewrange_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00201", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00202", + "gapId": "operator:anim.replace_action", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00202-operator-anim.replace_action.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00202.py -- tests/files/web/generated/M16-GAP-00202-operator-anim.replace_action.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00202", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00203", + "gapId": "operator:anim.replace_action_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00203-operator-anim.replace_action_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00203.py -- tests/files/web/generated/M16-GAP-00203-operator-anim.replace_action_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00203", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00204", + "gapId": "operator:anim.scene_range_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00204-operator-anim.scene_range_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00204.py -- tests/files/web/generated/M16-GAP-00204-operator-anim.scene_range_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00204", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00205", + "gapId": "operator:anim.separate_slots", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00205-operator-anim.separate_slots.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00205.py -- tests/files/web/generated/M16-GAP-00205-operator-anim.separate_slots.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00205", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00206", + "gapId": "operator:anim.slot_channels_move_to_new_action", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00206-operator-anim.slot_channels_move_to_new_action.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00206.py -- tests/files/web/generated/M16-GAP-00206-operator-anim.slot_channels_move_to_new_action.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00206", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00207", + "gapId": "operator:anim.slot_new_for_id", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00207-operator-anim.slot_new_for_id.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00207.py -- tests/files/web/generated/M16-GAP-00207-operator-anim.slot_new_for_id.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00207", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00208", + "gapId": "operator:anim.slot_unassign_from_constraint", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00208-operator-anim.slot_unassign_from_constraint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00208.py -- tests/files/web/generated/M16-GAP-00208-operator-anim.slot_unassign_from_constraint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00208", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00209", + "gapId": "operator:anim.slot_unassign_from_id", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00209-operator-anim.slot_unassign_from_id.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00209.py -- tests/files/web/generated/M16-GAP-00209-operator-anim.slot_unassign_from_id.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00209", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00210", + "gapId": "operator:anim.slot_unassign_from_nla_strip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00210-operator-anim.slot_unassign_from_nla_strip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00210.py -- tests/files/web/generated/M16-GAP-00210-operator-anim.slot_unassign_from_nla_strip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00210", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00211", + "gapId": "operator:anim.start_frame_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00211-operator-anim.start_frame_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00211.py -- tests/files/web/generated/M16-GAP-00211-operator-anim.start_frame_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00211", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00212", + "gapId": "operator:anim.update_animated_transform_constraints", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00212-operator-anim.update_animated_transform_constraints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00212.py -- tests/files/web/generated/M16-GAP-00212-operator-anim.update_animated_transform_constraints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00212", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00213", + "gapId": "operator:anim.version_bone_hide_property", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00213-operator-anim.version_bone_hide_property.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00213.py -- tests/files/web/generated/M16-GAP-00213-operator-anim.version_bone_hide_property.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00213", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00214", + "gapId": "operator:anim.view_curve_in_graph_editor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00214-operator-anim.view_curve_in_graph_editor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00214.py -- tests/files/web/generated/M16-GAP-00214-operator-anim.view_curve_in_graph_editor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00214", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00215", + "gapId": "operator:armature.align", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00215-operator-armature.align.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00215.py -- tests/files/web/generated/M16-GAP-00215-operator-armature.align.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00215", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00216", + "gapId": "operator:armature.assign_to_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00216-operator-armature.assign_to_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00216.py -- tests/files/web/generated/M16-GAP-00216-operator-armature.assign_to_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00216", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00217", + "gapId": "operator:armature.autoside_names", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00217-operator-armature.autoside_names.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00217.py -- tests/files/web/generated/M16-GAP-00217-operator-armature.autoside_names.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00217", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00218", + "gapId": "operator:armature.bone_primitive_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00218-operator-armature.bone_primitive_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00218.py -- tests/files/web/generated/M16-GAP-00218-operator-armature.bone_primitive_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00218", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00219", + "gapId": "operator:armature.calculate_roll", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00219-operator-armature.calculate_roll.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00219.py -- tests/files/web/generated/M16-GAP-00219-operator-armature.calculate_roll.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00219", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00220", + "gapId": "operator:armature.click_extrude", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00220-operator-armature.click_extrude.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00220.py -- tests/files/web/generated/M16-GAP-00220-operator-armature.click_extrude.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00220", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00221", + "gapId": "operator:armature.collection_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00221-operator-armature.collection_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00221.py -- tests/files/web/generated/M16-GAP-00221-operator-armature.collection_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00221", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00222", + "gapId": "operator:armature.collection_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00222-operator-armature.collection_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00222.py -- tests/files/web/generated/M16-GAP-00222-operator-armature.collection_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00222", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00223", + "gapId": "operator:armature.collection_create_and_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00223-operator-armature.collection_create_and_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00223.py -- tests/files/web/generated/M16-GAP-00223-operator-armature.collection_create_and_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00223", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00224", + "gapId": "operator:armature.collection_deselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00224-operator-armature.collection_deselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00224.py -- tests/files/web/generated/M16-GAP-00224-operator-armature.collection_deselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00224", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00225", + "gapId": "operator:armature.collection_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00225-operator-armature.collection_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00225.py -- tests/files/web/generated/M16-GAP-00225-operator-armature.collection_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00225", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00226", + "gapId": "operator:armature.collection_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00226-operator-armature.collection_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00226.py -- tests/files/web/generated/M16-GAP-00226-operator-armature.collection_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00226", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00227", + "gapId": "operator:armature.collection_remove_unused", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00227-operator-armature.collection_remove_unused.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00227.py -- tests/files/web/generated/M16-GAP-00227-operator-armature.collection_remove_unused.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00227", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00228", + "gapId": "operator:armature.collection_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00228-operator-armature.collection_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00228.py -- tests/files/web/generated/M16-GAP-00228-operator-armature.collection_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00228", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00229", + "gapId": "operator:armature.collection_show_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00229-operator-armature.collection_show_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00229.py -- tests/files/web/generated/M16-GAP-00229-operator-armature.collection_show_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00229", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00230", + "gapId": "operator:armature.collection_unassign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00230-operator-armature.collection_unassign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00230.py -- tests/files/web/generated/M16-GAP-00230-operator-armature.collection_unassign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00230", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00231", + "gapId": "operator:armature.collection_unassign_named", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00231-operator-armature.collection_unassign_named.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00231.py -- tests/files/web/generated/M16-GAP-00231-operator-armature.collection_unassign_named.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00231", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00232", + "gapId": "operator:armature.collection_unsolo_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00232-operator-armature.collection_unsolo_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00232.py -- tests/files/web/generated/M16-GAP-00232-operator-armature.collection_unsolo_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00232", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00233", + "gapId": "operator:armature.copy_bone_color_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00233-operator-armature.copy_bone_color_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00233.py -- tests/files/web/generated/M16-GAP-00233-operator-armature.copy_bone_color_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00233", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00234", + "gapId": "operator:armature.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00234-operator-armature.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00234.py -- tests/files/web/generated/M16-GAP-00234-operator-armature.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00234", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00235", + "gapId": "operator:armature.dissolve", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00235-operator-armature.dissolve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00235.py -- tests/files/web/generated/M16-GAP-00235-operator-armature.dissolve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00235", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00236", + "gapId": "operator:armature.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00236-operator-armature.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00236.py -- tests/files/web/generated/M16-GAP-00236-operator-armature.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00236", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00237", + "gapId": "operator:armature.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00237-operator-armature.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00237.py -- tests/files/web/generated/M16-GAP-00237-operator-armature.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00237", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00238", + "gapId": "operator:armature.duplicate_rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00238-operator-armature.duplicate_rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00238.py -- tests/files/web/generated/M16-GAP-00238-operator-armature.duplicate_rename.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00238", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00239", + "gapId": "operator:armature.extrude", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00239-operator-armature.extrude.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00239.py -- tests/files/web/generated/M16-GAP-00239-operator-armature.extrude.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00239", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00240", + "gapId": "operator:armature.extrude_forked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00240-operator-armature.extrude_forked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00240.py -- tests/files/web/generated/M16-GAP-00240-operator-armature.extrude_forked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00240", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00241", + "gapId": "operator:armature.extrude_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00241-operator-armature.extrude_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00241.py -- tests/files/web/generated/M16-GAP-00241-operator-armature.extrude_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00241", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00242", + "gapId": "operator:armature.fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00242-operator-armature.fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00242.py -- tests/files/web/generated/M16-GAP-00242-operator-armature.fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00242", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00243", + "gapId": "operator:armature.flip_names", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00243-operator-armature.flip_names.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00243.py -- tests/files/web/generated/M16-GAP-00243-operator-armature.flip_names.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00243", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00244", + "gapId": "operator:armature.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00244-operator-armature.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00244.py -- tests/files/web/generated/M16-GAP-00244-operator-armature.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00244", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00245", + "gapId": "operator:armature.move_to_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00245-operator-armature.move_to_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00245.py -- tests/files/web/generated/M16-GAP-00245-operator-armature.move_to_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00245", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00246", + "gapId": "operator:armature.parent_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00246-operator-armature.parent_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00246.py -- tests/files/web/generated/M16-GAP-00246-operator-armature.parent_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00246", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00247", + "gapId": "operator:armature.parent_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00247-operator-armature.parent_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00247.py -- tests/files/web/generated/M16-GAP-00247-operator-armature.parent_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00247", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00248", + "gapId": "operator:armature.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00248-operator-armature.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00248.py -- tests/files/web/generated/M16-GAP-00248-operator-armature.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00248", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00249", + "gapId": "operator:armature.roll_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00249-operator-armature.roll_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00249.py -- tests/files/web/generated/M16-GAP-00249-operator-armature.roll_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00249", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00250", + "gapId": "operator:armature.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00250-operator-armature.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00250.py -- tests/files/web/generated/M16-GAP-00250-operator-armature.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00250", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00251", + "gapId": "operator:armature.select_hierarchy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00251-operator-armature.select_hierarchy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00251.py -- tests/files/web/generated/M16-GAP-00251-operator-armature.select_hierarchy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00251", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00252", + "gapId": "operator:armature.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00252-operator-armature.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00252.py -- tests/files/web/generated/M16-GAP-00252-operator-armature.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00252", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00253", + "gapId": "operator:armature.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00253-operator-armature.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00253.py -- tests/files/web/generated/M16-GAP-00253-operator-armature.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00253", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00254", + "gapId": "operator:armature.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00254-operator-armature.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00254.py -- tests/files/web/generated/M16-GAP-00254-operator-armature.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00254", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00255", + "gapId": "operator:armature.select_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00255-operator-armature.select_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00255.py -- tests/files/web/generated/M16-GAP-00255-operator-armature.select_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00255", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00256", + "gapId": "operator:armature.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00256-operator-armature.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00256.py -- tests/files/web/generated/M16-GAP-00256-operator-armature.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00256", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00257", + "gapId": "operator:armature.select_similar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00257-operator-armature.select_similar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00257.py -- tests/files/web/generated/M16-GAP-00257-operator-armature.select_similar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00257", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00258", + "gapId": "operator:armature.separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00258-operator-armature.separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00258.py -- tests/files/web/generated/M16-GAP-00258-operator-armature.separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00258", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00259", + "gapId": "operator:armature.shortest_path_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00259-operator-armature.shortest_path_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00259.py -- tests/files/web/generated/M16-GAP-00259-operator-armature.shortest_path_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00259", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00260", + "gapId": "operator:armature.split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00260-operator-armature.split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00260.py -- tests/files/web/generated/M16-GAP-00260-operator-armature.split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00260", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00261", + "gapId": "operator:armature.subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00261-operator-armature.subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00261.py -- tests/files/web/generated/M16-GAP-00261-operator-armature.subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00261", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00262", + "gapId": "operator:armature.switch_direction", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00262-operator-armature.switch_direction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00262.py -- tests/files/web/generated/M16-GAP-00262-operator-armature.switch_direction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00262", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00263", + "gapId": "operator:armature.symmetrize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00263-operator-armature.symmetrize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00263.py -- tests/files/web/generated/M16-GAP-00263-operator-armature.symmetrize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00263", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00264", + "gapId": "operator:asset.asset_download", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00264-operator-asset.asset_download.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00264.py -- tests/files/web/generated/M16-GAP-00264-operator-asset.asset_download.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00264", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00265", + "gapId": "operator:asset.assets_download", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00265-operator-asset.assets_download.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00265.py -- tests/files/web/generated/M16-GAP-00265-operator-asset.assets_download.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00265", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00266", + "gapId": "operator:asset.assign_action", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00266-operator-asset.assign_action.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00266.py -- tests/files/web/generated/M16-GAP-00266-operator-asset.assign_action.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00266", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00267", + "gapId": "operator:asset.browse_containing_blend_file", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00267-operator-asset.browse_containing_blend_file.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00267.py -- tests/files/web/generated/M16-GAP-00267-operator-asset.browse_containing_blend_file.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00267", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00268", + "gapId": "operator:asset.bundle_install", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00268-operator-asset.bundle_install.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00268.py -- tests/files/web/generated/M16-GAP-00268-operator-asset.bundle_install.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00268", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00269", + "gapId": "operator:asset.catalog_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00269-operator-asset.catalog_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00269.py -- tests/files/web/generated/M16-GAP-00269-operator-asset.catalog_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00269", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00270", + "gapId": "operator:asset.catalog_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00270-operator-asset.catalog_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00270.py -- tests/files/web/generated/M16-GAP-00270-operator-asset.catalog_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00270", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00271", + "gapId": "operator:asset.catalog_redo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00271-operator-asset.catalog_redo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00271.py -- tests/files/web/generated/M16-GAP-00271-operator-asset.catalog_redo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00271", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00272", + "gapId": "operator:asset.catalog_undo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00272-operator-asset.catalog_undo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00272.py -- tests/files/web/generated/M16-GAP-00272-operator-asset.catalog_undo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00272", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00273", + "gapId": "operator:asset.catalog_undo_push", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00273-operator-asset.catalog_undo_push.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00273.py -- tests/files/web/generated/M16-GAP-00273-operator-asset.catalog_undo_push.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00273", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00274", + "gapId": "operator:asset.catalogs_save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00274-operator-asset.catalogs_save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00274.py -- tests/files/web/generated/M16-GAP-00274-operator-asset.catalogs_save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00274", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00275", + "gapId": "operator:asset.clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00275-operator-asset.clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00275.py -- tests/files/web/generated/M16-GAP-00275-operator-asset.clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00275", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00276", + "gapId": "operator:asset.clear_single", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00276-operator-asset.clear_single.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00276.py -- tests/files/web/generated/M16-GAP-00276-operator-asset.clear_single.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00276", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00277", + "gapId": "operator:asset.library_refresh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00277-operator-asset.library_refresh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00277.py -- tests/files/web/generated/M16-GAP-00277-operator-asset.library_refresh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00277", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00278", + "gapId": "operator:asset.library_reload_listing", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00278-operator-asset.library_reload_listing.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00278.py -- tests/files/web/generated/M16-GAP-00278-operator-asset.library_reload_listing.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00278", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00279", + "gapId": "operator:asset.mark", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00279-operator-asset.mark.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00279.py -- tests/files/web/generated/M16-GAP-00279-operator-asset.mark.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00279", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00280", + "gapId": "operator:asset.mark_single", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00280-operator-asset.mark_single.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00280.py -- tests/files/web/generated/M16-GAP-00280-operator-asset.mark_single.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00280", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00281", + "gapId": "operator:asset.open_containing_blend_file", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00281-operator-asset.open_containing_blend_file.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00281.py -- tests/files/web/generated/M16-GAP-00281-operator-asset.open_containing_blend_file.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00281", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00282", + "gapId": "operator:asset.screenshot_preview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00282-operator-asset.screenshot_preview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00282.py -- tests/files/web/generated/M16-GAP-00282-operator-asset.screenshot_preview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00282", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00283", + "gapId": "operator:asset.tag_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00283-operator-asset.tag_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00283.py -- tests/files/web/generated/M16-GAP-00283-operator-asset.tag_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00283", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00284", + "gapId": "operator:asset.tag_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00284-operator-asset.tag_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00284.py -- tests/files/web/generated/M16-GAP-00284-operator-asset.tag_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00284", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00285", + "gapId": "operator:boid.rule_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00285-operator-boid.rule_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00285.py -- tests/files/web/generated/M16-GAP-00285-operator-boid.rule_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00285", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00286", + "gapId": "operator:boid.rule_del", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00286-operator-boid.rule_del.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00286.py -- tests/files/web/generated/M16-GAP-00286-operator-boid.rule_del.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00286", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00287", + "gapId": "operator:boid.rule_move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00287-operator-boid.rule_move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00287.py -- tests/files/web/generated/M16-GAP-00287-operator-boid.rule_move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00287", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00288", + "gapId": "operator:boid.rule_move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00288-operator-boid.rule_move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00288.py -- tests/files/web/generated/M16-GAP-00288-operator-boid.rule_move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00288", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00289", + "gapId": "operator:boid.state_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00289-operator-boid.state_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00289.py -- tests/files/web/generated/M16-GAP-00289-operator-boid.state_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00289", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00290", + "gapId": "operator:boid.state_del", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00290-operator-boid.state_del.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00290.py -- tests/files/web/generated/M16-GAP-00290-operator-boid.state_del.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00290", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00291", + "gapId": "operator:boid.state_move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00291-operator-boid.state_move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00291.py -- tests/files/web/generated/M16-GAP-00291-operator-boid.state_move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00291", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00292", + "gapId": "operator:boid.state_move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00292-operator-boid.state_move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00292.py -- tests/files/web/generated/M16-GAP-00292-operator-boid.state_move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00292", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00293", + "gapId": "operator:brush.asset_activate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00293-operator-brush.asset_activate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00293.py -- tests/files/web/generated/M16-GAP-00293-operator-brush.asset_activate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00293", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00294", + "gapId": "operator:brush.asset_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00294-operator-brush.asset_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00294.py -- tests/files/web/generated/M16-GAP-00294-operator-brush.asset_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00294", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00295", + "gapId": "operator:brush.asset_edit_metadata", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00295-operator-brush.asset_edit_metadata.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00295.py -- tests/files/web/generated/M16-GAP-00295-operator-brush.asset_edit_metadata.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00295", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00296", + "gapId": "operator:brush.asset_load_preview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00296-operator-brush.asset_load_preview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00296.py -- tests/files/web/generated/M16-GAP-00296-operator-brush.asset_load_preview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00296", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00297", + "gapId": "operator:brush.asset_revert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00297-operator-brush.asset_revert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00297.py -- tests/files/web/generated/M16-GAP-00297-operator-brush.asset_revert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00297", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00298", + "gapId": "operator:brush.asset_save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00298-operator-brush.asset_save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00298.py -- tests/files/web/generated/M16-GAP-00298-operator-brush.asset_save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00298", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00299", + "gapId": "operator:brush.asset_save_as", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00299-operator-brush.asset_save_as.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00299.py -- tests/files/web/generated/M16-GAP-00299-operator-brush.asset_save_as.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00299", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00300", + "gapId": "operator:brush.scale_size", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00300-operator-brush.scale_size.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00300.py -- tests/files/web/generated/M16-GAP-00300-operator-brush.scale_size.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00300", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00301", + "gapId": "operator:brush.stencil_control", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00301-operator-brush.stencil_control.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00301.py -- tests/files/web/generated/M16-GAP-00301-operator-brush.stencil_control.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00301", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00302", + "gapId": "operator:brush.stencil_fit_image_aspect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00302-operator-brush.stencil_fit_image_aspect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00302.py -- tests/files/web/generated/M16-GAP-00302-operator-brush.stencil_fit_image_aspect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00302", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00303", + "gapId": "operator:brush.stencil_reset_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00303-operator-brush.stencil_reset_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00303.py -- tests/files/web/generated/M16-GAP-00303-operator-brush.stencil_reset_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00303", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00304", + "gapId": "operator:buttons.clear_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00304-operator-buttons.clear_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00304.py -- tests/files/web/generated/M16-GAP-00304-operator-buttons.clear_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00304", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00305", + "gapId": "operator:buttons.context_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00305-operator-buttons.context_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00305.py -- tests/files/web/generated/M16-GAP-00305-operator-buttons.context_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00305", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00306", + "gapId": "operator:buttons.directory_browse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00306-operator-buttons.directory_browse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00306.py -- tests/files/web/generated/M16-GAP-00306-operator-buttons.directory_browse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00306", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00307", + "gapId": "operator:buttons.file_browse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00307-operator-buttons.file_browse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00307.py -- tests/files/web/generated/M16-GAP-00307-operator-buttons.file_browse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00307", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00308", + "gapId": "operator:buttons.start_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00308-operator-buttons.start_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00308.py -- tests/files/web/generated/M16-GAP-00308-operator-buttons.start_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00308", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00309", + "gapId": "operator:buttons.toggle_pin", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00309-operator-buttons.toggle_pin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00309.py -- tests/files/web/generated/M16-GAP-00309-operator-buttons.toggle_pin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00309", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00310", + "gapId": "operator:cachefile.layer_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00310-operator-cachefile.layer_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00310.py -- tests/files/web/generated/M16-GAP-00310-operator-cachefile.layer_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00310", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00311", + "gapId": "operator:cachefile.layer_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00311-operator-cachefile.layer_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00311.py -- tests/files/web/generated/M16-GAP-00311-operator-cachefile.layer_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00311", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00312", + "gapId": "operator:cachefile.layer_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00312-operator-cachefile.layer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00312.py -- tests/files/web/generated/M16-GAP-00312-operator-cachefile.layer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00312", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00313", + "gapId": "operator:cachefile.open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00313-operator-cachefile.open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00313.py -- tests/files/web/generated/M16-GAP-00313-operator-cachefile.open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00313", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00314", + "gapId": "operator:cachefile.reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00314-operator-cachefile.reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00314.py -- tests/files/web/generated/M16-GAP-00314-operator-cachefile.reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00314", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00315", + "gapId": "operator:camera.preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00315-operator-camera.preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00315.py -- tests/files/web/generated/M16-GAP-00315-operator-camera.preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00315", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00316", + "gapId": "operator:camera.safe_areas_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00316-operator-camera.safe_areas_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00316.py -- tests/files/web/generated/M16-GAP-00316-operator-camera.safe_areas_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00316", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00317", + "gapId": "operator:clip.add_marker", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00317-operator-clip.add_marker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00317.py -- tests/files/web/generated/M16-GAP-00317-operator-clip.add_marker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00317", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00318", + "gapId": "operator:clip.add_marker_at_click", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00318-operator-clip.add_marker_at_click.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00318.py -- tests/files/web/generated/M16-GAP-00318-operator-clip.add_marker_at_click.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00318", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00319", + "gapId": "operator:clip.add_marker_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00319-operator-clip.add_marker_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00319.py -- tests/files/web/generated/M16-GAP-00319-operator-clip.add_marker_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00319", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00320", + "gapId": "operator:clip.add_marker_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00320-operator-clip.add_marker_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00320.py -- tests/files/web/generated/M16-GAP-00320-operator-clip.add_marker_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00320", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00321", + "gapId": "operator:clip.apply_solution_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00321-operator-clip.apply_solution_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00321.py -- tests/files/web/generated/M16-GAP-00321-operator-clip.apply_solution_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00321", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00322", + "gapId": "operator:clip.average_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00322-operator-clip.average_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00322.py -- tests/files/web/generated/M16-GAP-00322-operator-clip.average_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00322", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00323", + "gapId": "operator:clip.bundles_to_mesh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00323-operator-clip.bundles_to_mesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00323.py -- tests/files/web/generated/M16-GAP-00323-operator-clip.bundles_to_mesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00323", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00324", + "gapId": "operator:clip.camera_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00324-operator-clip.camera_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00324.py -- tests/files/web/generated/M16-GAP-00324-operator-clip.camera_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00324", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00325", + "gapId": "operator:clip.change_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00325-operator-clip.change_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00325.py -- tests/files/web/generated/M16-GAP-00325-operator-clip.change_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00325", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00326", + "gapId": "operator:clip.clean_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00326-operator-clip.clean_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00326.py -- tests/files/web/generated/M16-GAP-00326-operator-clip.clean_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00326", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00327", + "gapId": "operator:clip.clear_solution", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00327-operator-clip.clear_solution.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00327.py -- tests/files/web/generated/M16-GAP-00327-operator-clip.clear_solution.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00327", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00328", + "gapId": "operator:clip.clear_track_path", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00328-operator-clip.clear_track_path.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00328.py -- tests/files/web/generated/M16-GAP-00328-operator-clip.clear_track_path.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00328", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00329", + "gapId": "operator:clip.constraint_to_fcurve", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00329-operator-clip.constraint_to_fcurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00329.py -- tests/files/web/generated/M16-GAP-00329-operator-clip.constraint_to_fcurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00329", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00330", + "gapId": "operator:clip.copy_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00330-operator-clip.copy_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00330.py -- tests/files/web/generated/M16-GAP-00330-operator-clip.copy_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00330", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00331", + "gapId": "operator:clip.create_plane_track", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00331-operator-clip.create_plane_track.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00331.py -- tests/files/web/generated/M16-GAP-00331-operator-clip.create_plane_track.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00331", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00332", + "gapId": "operator:clip.cursor_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00332-operator-clip.cursor_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00332.py -- tests/files/web/generated/M16-GAP-00332-operator-clip.cursor_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00332", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00333", + "gapId": "operator:clip.delete_marker", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00333-operator-clip.delete_marker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00333.py -- tests/files/web/generated/M16-GAP-00333-operator-clip.delete_marker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00333", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00334", + "gapId": "operator:clip.delete_proxy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00334-operator-clip.delete_proxy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00334.py -- tests/files/web/generated/M16-GAP-00334-operator-clip.delete_proxy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00334", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00335", + "gapId": "operator:clip.delete_track", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00335-operator-clip.delete_track.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00335.py -- tests/files/web/generated/M16-GAP-00335-operator-clip.delete_track.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00335", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00336", + "gapId": "operator:clip.detect_features", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00336-operator-clip.detect_features.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00336.py -- tests/files/web/generated/M16-GAP-00336-operator-clip.detect_features.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00336", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00337", + "gapId": "operator:clip.disable_markers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00337-operator-clip.disable_markers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00337.py -- tests/files/web/generated/M16-GAP-00337-operator-clip.disable_markers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00337", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00338", + "gapId": "operator:clip.dopesheet_select_channel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00338-operator-clip.dopesheet_select_channel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00338.py -- tests/files/web/generated/M16-GAP-00338-operator-clip.dopesheet_select_channel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00338", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00339", + "gapId": "operator:clip.dopesheet_view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00339-operator-clip.dopesheet_view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00339.py -- tests/files/web/generated/M16-GAP-00339-operator-clip.dopesheet_view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00339", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00340", + "gapId": "operator:clip.filter_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00340-operator-clip.filter_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00340.py -- tests/files/web/generated/M16-GAP-00340-operator-clip.filter_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00340", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00341", + "gapId": "operator:clip.frame_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00341-operator-clip.frame_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00341.py -- tests/files/web/generated/M16-GAP-00341-operator-clip.frame_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00341", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00342", + "gapId": "operator:clip.graph_center_current_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00342-operator-clip.graph_center_current_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00342.py -- tests/files/web/generated/M16-GAP-00342-operator-clip.graph_center_current_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00342", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00343", + "gapId": "operator:clip.graph_delete_curve", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00343-operator-clip.graph_delete_curve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00343.py -- tests/files/web/generated/M16-GAP-00343-operator-clip.graph_delete_curve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00343", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00344", + "gapId": "operator:clip.graph_delete_knot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00344-operator-clip.graph_delete_knot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00344.py -- tests/files/web/generated/M16-GAP-00344-operator-clip.graph_delete_knot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00344", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00345", + "gapId": "operator:clip.graph_disable_markers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00345-operator-clip.graph_disable_markers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00345.py -- tests/files/web/generated/M16-GAP-00345-operator-clip.graph_disable_markers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00345", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00346", + "gapId": "operator:clip.graph_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00346-operator-clip.graph_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00346.py -- tests/files/web/generated/M16-GAP-00346-operator-clip.graph_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00346", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00347", + "gapId": "operator:clip.graph_select_all_markers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00347-operator-clip.graph_select_all_markers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00347.py -- tests/files/web/generated/M16-GAP-00347-operator-clip.graph_select_all_markers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00347", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00348", + "gapId": "operator:clip.graph_select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00348-operator-clip.graph_select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00348.py -- tests/files/web/generated/M16-GAP-00348-operator-clip.graph_select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00348", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00349", + "gapId": "operator:clip.graph_view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00349-operator-clip.graph_view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00349.py -- tests/files/web/generated/M16-GAP-00349-operator-clip.graph_view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00349", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00350", + "gapId": "operator:clip.hide_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00350-operator-clip.hide_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00350.py -- tests/files/web/generated/M16-GAP-00350-operator-clip.hide_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00350", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00351", + "gapId": "operator:clip.hide_tracks_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00351-operator-clip.hide_tracks_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00351.py -- tests/files/web/generated/M16-GAP-00351-operator-clip.hide_tracks_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00351", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00352", + "gapId": "operator:clip.join_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00352-operator-clip.join_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00352.py -- tests/files/web/generated/M16-GAP-00352-operator-clip.join_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00352", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00353", + "gapId": "operator:clip.keyframe_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00353-operator-clip.keyframe_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00353.py -- tests/files/web/generated/M16-GAP-00353-operator-clip.keyframe_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00353", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00354", + "gapId": "operator:clip.keyframe_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00354-operator-clip.keyframe_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00354.py -- tests/files/web/generated/M16-GAP-00354-operator-clip.keyframe_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00354", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00355", + "gapId": "operator:clip.lock_selection_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00355-operator-clip.lock_selection_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00355.py -- tests/files/web/generated/M16-GAP-00355-operator-clip.lock_selection_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00355", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00356", + "gapId": "operator:clip.lock_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00356-operator-clip.lock_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00356.py -- tests/files/web/generated/M16-GAP-00356-operator-clip.lock_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00356", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00357", + "gapId": "operator:clip.mode_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00357-operator-clip.mode_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00357.py -- tests/files/web/generated/M16-GAP-00357-operator-clip.mode_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00357", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00358", + "gapId": "operator:clip.new_image_from_plane_marker", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00358-operator-clip.new_image_from_plane_marker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00358.py -- tests/files/web/generated/M16-GAP-00358-operator-clip.new_image_from_plane_marker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00358", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00359", + "gapId": "operator:clip.open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00359-operator-clip.open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00359.py -- tests/files/web/generated/M16-GAP-00359-operator-clip.open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00359", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00360", + "gapId": "operator:clip.paste_tracks", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00360-operator-clip.paste_tracks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00360.py -- tests/files/web/generated/M16-GAP-00360-operator-clip.paste_tracks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00360", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00361", + "gapId": "operator:clip.prefetch", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00361-operator-clip.prefetch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00361.py -- tests/files/web/generated/M16-GAP-00361-operator-clip.prefetch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00361", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00362", + "gapId": "operator:clip.rebuild_proxy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00362-operator-clip.rebuild_proxy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00362.py -- tests/files/web/generated/M16-GAP-00362-operator-clip.rebuild_proxy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00362", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00363", + "gapId": "operator:clip.refine_markers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00363-operator-clip.refine_markers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00363.py -- tests/files/web/generated/M16-GAP-00363-operator-clip.refine_markers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00363", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00364", + "gapId": "operator:clip.reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00364-operator-clip.reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00364.py -- tests/files/web/generated/M16-GAP-00364-operator-clip.reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00364", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00365", + "gapId": "operator:clip.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00365-operator-clip.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00365.py -- tests/files/web/generated/M16-GAP-00365-operator-clip.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00365", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00366", + "gapId": "operator:clip.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00366-operator-clip.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00366.py -- tests/files/web/generated/M16-GAP-00366-operator-clip.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00366", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00367", + "gapId": "operator:clip.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00367-operator-clip.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00367.py -- tests/files/web/generated/M16-GAP-00367-operator-clip.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00367", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00368", + "gapId": "operator:clip.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00368-operator-clip.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00368.py -- tests/files/web/generated/M16-GAP-00368-operator-clip.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00368", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00369", + "gapId": "operator:clip.select_grouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00369-operator-clip.select_grouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00369.py -- tests/files/web/generated/M16-GAP-00369-operator-clip.select_grouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00369", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00370", + "gapId": "operator:clip.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00370-operator-clip.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00370.py -- tests/files/web/generated/M16-GAP-00370-operator-clip.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00370", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00371", + "gapId": "operator:clip.set_active_clip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00371-operator-clip.set_active_clip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00371.py -- tests/files/web/generated/M16-GAP-00371-operator-clip.set_active_clip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00371", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00372", + "gapId": "operator:clip.set_axis", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00372-operator-clip.set_axis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00372.py -- tests/files/web/generated/M16-GAP-00372-operator-clip.set_axis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00372", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00373", + "gapId": "operator:clip.set_origin", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00373-operator-clip.set_origin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00373.py -- tests/files/web/generated/M16-GAP-00373-operator-clip.set_origin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00373", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00374", + "gapId": "operator:clip.set_plane", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00374-operator-clip.set_plane.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00374.py -- tests/files/web/generated/M16-GAP-00374-operator-clip.set_plane.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00374", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00375", + "gapId": "operator:clip.set_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00375-operator-clip.set_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00375.py -- tests/files/web/generated/M16-GAP-00375-operator-clip.set_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00375", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00376", + "gapId": "operator:clip.set_scene_frames", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00376-operator-clip.set_scene_frames.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00376.py -- tests/files/web/generated/M16-GAP-00376-operator-clip.set_scene_frames.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00376", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00377", + "gapId": "operator:clip.set_solution_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00377-operator-clip.set_solution_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00377.py -- tests/files/web/generated/M16-GAP-00377-operator-clip.set_solution_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00377", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00378", + "gapId": "operator:clip.set_solver_keyframe", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00378-operator-clip.set_solver_keyframe.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00378.py -- tests/files/web/generated/M16-GAP-00378-operator-clip.set_solver_keyframe.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00378", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00379", + "gapId": "operator:clip.set_viewport_background", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00379-operator-clip.set_viewport_background.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00379.py -- tests/files/web/generated/M16-GAP-00379-operator-clip.set_viewport_background.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00379", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00380", + "gapId": "operator:clip.setup_tracking_scene", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00380-operator-clip.setup_tracking_scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00380.py -- tests/files/web/generated/M16-GAP-00380-operator-clip.setup_tracking_scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00380", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00381", + "gapId": "operator:clip.slide_marker", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00381-operator-clip.slide_marker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00381.py -- tests/files/web/generated/M16-GAP-00381-operator-clip.slide_marker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00381", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00382", + "gapId": "operator:clip.slide_plane_marker", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00382-operator-clip.slide_plane_marker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00382.py -- tests/files/web/generated/M16-GAP-00382-operator-clip.slide_plane_marker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00382", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00383", + "gapId": "operator:clip.solve_camera", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00383-operator-clip.solve_camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00383.py -- tests/files/web/generated/M16-GAP-00383-operator-clip.solve_camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00383", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00384", + "gapId": "operator:clip.stabilize_2d_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00384-operator-clip.stabilize_2d_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00384.py -- tests/files/web/generated/M16-GAP-00384-operator-clip.stabilize_2d_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00384", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00385", + "gapId": "operator:clip.stabilize_2d_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00385-operator-clip.stabilize_2d_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00385.py -- tests/files/web/generated/M16-GAP-00385-operator-clip.stabilize_2d_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00385", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00386", + "gapId": "operator:clip.stabilize_2d_rotation_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00386-operator-clip.stabilize_2d_rotation_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00386.py -- tests/files/web/generated/M16-GAP-00386-operator-clip.stabilize_2d_rotation_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00386", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00387", + "gapId": "operator:clip.stabilize_2d_rotation_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00387-operator-clip.stabilize_2d_rotation_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00387.py -- tests/files/web/generated/M16-GAP-00387-operator-clip.stabilize_2d_rotation_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00387", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00388", + "gapId": "operator:clip.stabilize_2d_rotation_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00388-operator-clip.stabilize_2d_rotation_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00388.py -- tests/files/web/generated/M16-GAP-00388-operator-clip.stabilize_2d_rotation_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00388", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00389", + "gapId": "operator:clip.stabilize_2d_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00389-operator-clip.stabilize_2d_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00389.py -- tests/files/web/generated/M16-GAP-00389-operator-clip.stabilize_2d_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00389", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00390", + "gapId": "operator:clip.track_color_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00390-operator-clip.track_color_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00390.py -- tests/files/web/generated/M16-GAP-00390-operator-clip.track_color_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00390", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00391", + "gapId": "operator:clip.track_copy_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00391-operator-clip.track_copy_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00391.py -- tests/files/web/generated/M16-GAP-00391-operator-clip.track_copy_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00391", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00392", + "gapId": "operator:clip.track_markers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00392-operator-clip.track_markers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00392.py -- tests/files/web/generated/M16-GAP-00392-operator-clip.track_markers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00392", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00393", + "gapId": "operator:clip.track_settings_as_default", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00393-operator-clip.track_settings_as_default.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00393.py -- tests/files/web/generated/M16-GAP-00393-operator-clip.track_settings_as_default.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00393", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00394", + "gapId": "operator:clip.track_settings_to_track", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00394-operator-clip.track_settings_to_track.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00394.py -- tests/files/web/generated/M16-GAP-00394-operator-clip.track_settings_to_track.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00394", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00395", + "gapId": "operator:clip.track_to_empty", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00395-operator-clip.track_to_empty.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00395.py -- tests/files/web/generated/M16-GAP-00395-operator-clip.track_to_empty.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00395", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00396", + "gapId": "operator:clip.tracking_object_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00396-operator-clip.tracking_object_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00396.py -- tests/files/web/generated/M16-GAP-00396-operator-clip.tracking_object_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00396", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00397", + "gapId": "operator:clip.tracking_object_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00397-operator-clip.tracking_object_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00397.py -- tests/files/web/generated/M16-GAP-00397-operator-clip.tracking_object_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00397", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00398", + "gapId": "operator:clip.tracking_settings_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00398-operator-clip.tracking_settings_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00398.py -- tests/files/web/generated/M16-GAP-00398-operator-clip.tracking_settings_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00398", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00399", + "gapId": "operator:clip.update_image_from_plane_marker", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00399-operator-clip.update_image_from_plane_marker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00399.py -- tests/files/web/generated/M16-GAP-00399-operator-clip.update_image_from_plane_marker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00399", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00400", + "gapId": "operator:clip.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00400-operator-clip.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00400.py -- tests/files/web/generated/M16-GAP-00400-operator-clip.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00400", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00401", + "gapId": "operator:clip.view_center_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00401-operator-clip.view_center_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00401.py -- tests/files/web/generated/M16-GAP-00401-operator-clip.view_center_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00401", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00402", + "gapId": "operator:clip.view_ndof", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00402-operator-clip.view_ndof.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00402.py -- tests/files/web/generated/M16-GAP-00402-operator-clip.view_ndof.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00402", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00403", + "gapId": "operator:clip.view_pan", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00403-operator-clip.view_pan.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00403.py -- tests/files/web/generated/M16-GAP-00403-operator-clip.view_pan.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00403", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00404", + "gapId": "operator:clip.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00404-operator-clip.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00404.py -- tests/files/web/generated/M16-GAP-00404-operator-clip.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00404", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00405", + "gapId": "operator:clip.view_zoom", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00405-operator-clip.view_zoom.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00405.py -- tests/files/web/generated/M16-GAP-00405-operator-clip.view_zoom.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00405", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00406", + "gapId": "operator:clip.view_zoom_in", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00406-operator-clip.view_zoom_in.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00406.py -- tests/files/web/generated/M16-GAP-00406-operator-clip.view_zoom_in.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00406", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00407", + "gapId": "operator:clip.view_zoom_out", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00407-operator-clip.view_zoom_out.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00407.py -- tests/files/web/generated/M16-GAP-00407-operator-clip.view_zoom_out.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00407", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00408", + "gapId": "operator:clip.view_zoom_ratio", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00408-operator-clip.view_zoom_ratio.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00408.py -- tests/files/web/generated/M16-GAP-00408-operator-clip.view_zoom_ratio.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00408", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00409", + "gapId": "operator:cloth.preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00409-operator-cloth.preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00409.py -- tests/files/web/generated/M16-GAP-00409-operator-cloth.preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00409", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00410", + "gapId": "operator:collection.create", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00410-operator-collection.create.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00410.py -- tests/files/web/generated/M16-GAP-00410-operator-collection.create.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00410", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00411", + "gapId": "operator:collection.export_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00411-operator-collection.export_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00411.py -- tests/files/web/generated/M16-GAP-00411-operator-collection.export_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00411", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00412", + "gapId": "operator:collection.exporter_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00412-operator-collection.exporter_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00412.py -- tests/files/web/generated/M16-GAP-00412-operator-collection.exporter_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00412", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00413", + "gapId": "operator:collection.exporter_export", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00413-operator-collection.exporter_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00413.py -- tests/files/web/generated/M16-GAP-00413-operator-collection.exporter_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00413", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00414", + "gapId": "operator:collection.exporter_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00414-operator-collection.exporter_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00414.py -- tests/files/web/generated/M16-GAP-00414-operator-collection.exporter_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00414", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00415", + "gapId": "operator:collection.exporter_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00415-operator-collection.exporter_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00415.py -- tests/files/web/generated/M16-GAP-00415-operator-collection.exporter_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00415", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00416", + "gapId": "operator:collection.importer_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00416-operator-collection.importer_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00416.py -- tests/files/web/generated/M16-GAP-00416-operator-collection.importer_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00416", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00417", + "gapId": "operator:collection.importer_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00417-operator-collection.importer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00417.py -- tests/files/web/generated/M16-GAP-00417-operator-collection.importer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00417", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00418", + "gapId": "operator:collection.objects_add_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00418-operator-collection.objects_add_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00418.py -- tests/files/web/generated/M16-GAP-00418-operator-collection.objects_add_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00418", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00419", + "gapId": "operator:collection.objects_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00419-operator-collection.objects_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00419.py -- tests/files/web/generated/M16-GAP-00419-operator-collection.objects_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00419", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00420", + "gapId": "operator:collection.objects_remove_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00420-operator-collection.objects_remove_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00420.py -- tests/files/web/generated/M16-GAP-00420-operator-collection.objects_remove_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00420", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00421", + "gapId": "operator:collection.objects_remove_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00421-operator-collection.objects_remove_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00421.py -- tests/files/web/generated/M16-GAP-00421-operator-collection.objects_remove_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00421", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00422", + "gapId": "operator:console.autocomplete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00422-operator-console.autocomplete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00422.py -- tests/files/web/generated/M16-GAP-00422-operator-console.autocomplete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00422", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00423", + "gapId": "operator:console.banner", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00423-operator-console.banner.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00423.py -- tests/files/web/generated/M16-GAP-00423-operator-console.banner.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00423", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00424", + "gapId": "operator:console.clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00424-operator-console.clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00424.py -- tests/files/web/generated/M16-GAP-00424-operator-console.clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00424", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00425", + "gapId": "operator:console.clear_line", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00425-operator-console.clear_line.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00425.py -- tests/files/web/generated/M16-GAP-00425-operator-console.clear_line.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00425", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00426", + "gapId": "operator:console.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00426-operator-console.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00426.py -- tests/files/web/generated/M16-GAP-00426-operator-console.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00426", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00427", + "gapId": "operator:console.copy_as_script", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00427-operator-console.copy_as_script.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00427.py -- tests/files/web/generated/M16-GAP-00427-operator-console.copy_as_script.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00427", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00428", + "gapId": "operator:console.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00428-operator-console.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00428.py -- tests/files/web/generated/M16-GAP-00428-operator-console.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00428", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00429", + "gapId": "operator:console.execute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00429-operator-console.execute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00429.py -- tests/files/web/generated/M16-GAP-00429-operator-console.execute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00429", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00430", + "gapId": "operator:console.history_append", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00430-operator-console.history_append.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00430.py -- tests/files/web/generated/M16-GAP-00430-operator-console.history_append.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00430", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00431", + "gapId": "operator:console.history_cycle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00431-operator-console.history_cycle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00431.py -- tests/files/web/generated/M16-GAP-00431-operator-console.history_cycle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00431", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00432", + "gapId": "operator:console.indent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00432-operator-console.indent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00432.py -- tests/files/web/generated/M16-GAP-00432-operator-console.indent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00432", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00433", + "gapId": "operator:console.indent_or_autocomplete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00433-operator-console.indent_or_autocomplete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00433.py -- tests/files/web/generated/M16-GAP-00433-operator-console.indent_or_autocomplete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00433", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00434", + "gapId": "operator:console.insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00434-operator-console.insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00434.py -- tests/files/web/generated/M16-GAP-00434-operator-console.insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00434", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00435", + "gapId": "operator:console.language", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00435-operator-console.language.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00435.py -- tests/files/web/generated/M16-GAP-00435-operator-console.language.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00435", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00436", + "gapId": "operator:console.move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00436-operator-console.move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00436.py -- tests/files/web/generated/M16-GAP-00436-operator-console.move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00436", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00437", + "gapId": "operator:console.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00437-operator-console.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00437.py -- tests/files/web/generated/M16-GAP-00437-operator-console.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00437", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00438", + "gapId": "operator:console.scrollback_append", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00438-operator-console.scrollback_append.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00438.py -- tests/files/web/generated/M16-GAP-00438-operator-console.scrollback_append.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00438", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00439", + "gapId": "operator:console.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00439-operator-console.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00439.py -- tests/files/web/generated/M16-GAP-00439-operator-console.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00439", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00440", + "gapId": "operator:console.select_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00440-operator-console.select_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00440.py -- tests/files/web/generated/M16-GAP-00440-operator-console.select_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00440", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00441", + "gapId": "operator:console.select_word", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00441-operator-console.select_word.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00441.py -- tests/files/web/generated/M16-GAP-00441-operator-console.select_word.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00441", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00442", + "gapId": "operator:console.unindent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00442-operator-console.unindent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00442.py -- tests/files/web/generated/M16-GAP-00442-operator-console.unindent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00442", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00443", + "gapId": "operator:constraint.add_target", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00443-operator-constraint.add_target.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00443.py -- tests/files/web/generated/M16-GAP-00443-operator-constraint.add_target.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00443", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00444", + "gapId": "operator:constraint.apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00444-operator-constraint.apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00444.py -- tests/files/web/generated/M16-GAP-00444-operator-constraint.apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00444", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00445", + "gapId": "operator:constraint.childof_clear_inverse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00445-operator-constraint.childof_clear_inverse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00445.py -- tests/files/web/generated/M16-GAP-00445-operator-constraint.childof_clear_inverse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00445", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00446", + "gapId": "operator:constraint.childof_set_inverse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00446-operator-constraint.childof_set_inverse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00446.py -- tests/files/web/generated/M16-GAP-00446-operator-constraint.childof_set_inverse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00446", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00447", + "gapId": "operator:constraint.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00447-operator-constraint.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00447.py -- tests/files/web/generated/M16-GAP-00447-operator-constraint.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00447", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00448", + "gapId": "operator:constraint.copy_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00448-operator-constraint.copy_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00448.py -- tests/files/web/generated/M16-GAP-00448-operator-constraint.copy_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00448", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00449", + "gapId": "operator:constraint.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00449-operator-constraint.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00449.py -- tests/files/web/generated/M16-GAP-00449-operator-constraint.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00449", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00450", + "gapId": "operator:constraint.disable_keep_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00450-operator-constraint.disable_keep_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00450.py -- tests/files/web/generated/M16-GAP-00450-operator-constraint.disable_keep_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00450", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00451", + "gapId": "operator:constraint.followpath_path_animate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00451-operator-constraint.followpath_path_animate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00451.py -- tests/files/web/generated/M16-GAP-00451-operator-constraint.followpath_path_animate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00451", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00452", + "gapId": "operator:constraint.limitdistance_reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00452-operator-constraint.limitdistance_reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00452.py -- tests/files/web/generated/M16-GAP-00452-operator-constraint.limitdistance_reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00452", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00453", + "gapId": "operator:constraint.move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00453-operator-constraint.move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00453.py -- tests/files/web/generated/M16-GAP-00453-operator-constraint.move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00453", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00454", + "gapId": "operator:constraint.move_to_index", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00454-operator-constraint.move_to_index.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00454.py -- tests/files/web/generated/M16-GAP-00454-operator-constraint.move_to_index.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00454", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00455", + "gapId": "operator:constraint.move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00455-operator-constraint.move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00455.py -- tests/files/web/generated/M16-GAP-00455-operator-constraint.move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00455", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00456", + "gapId": "operator:constraint.normalize_target_weights", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00456-operator-constraint.normalize_target_weights.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00456.py -- tests/files/web/generated/M16-GAP-00456-operator-constraint.normalize_target_weights.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00456", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00457", + "gapId": "operator:constraint.objectsolver_clear_inverse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00457-operator-constraint.objectsolver_clear_inverse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00457.py -- tests/files/web/generated/M16-GAP-00457-operator-constraint.objectsolver_clear_inverse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00457", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00458", + "gapId": "operator:constraint.objectsolver_set_inverse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00458-operator-constraint.objectsolver_set_inverse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00458.py -- tests/files/web/generated/M16-GAP-00458-operator-constraint.objectsolver_set_inverse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00458", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00459", + "gapId": "operator:constraint.remove_target", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00459-operator-constraint.remove_target.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00459.py -- tests/files/web/generated/M16-GAP-00459-operator-constraint.remove_target.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00459", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00460", + "gapId": "operator:constraint.stretchto_reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00460-operator-constraint.stretchto_reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00460.py -- tests/files/web/generated/M16-GAP-00460-operator-constraint.stretchto_reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00460", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00461", + "gapId": "operator:curve.cyclic_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00461-operator-curve.cyclic_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00461.py -- tests/files/web/generated/M16-GAP-00461-operator-curve.cyclic_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00461", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00462", + "gapId": "operator:curve.de_select_first", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00462-operator-curve.de_select_first.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00462.py -- tests/files/web/generated/M16-GAP-00462-operator-curve.de_select_first.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00462", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00463", + "gapId": "operator:curve.de_select_last", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00463-operator-curve.de_select_last.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00463.py -- tests/files/web/generated/M16-GAP-00463-operator-curve.de_select_last.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00463", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00464", + "gapId": "operator:curve.decimate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00464-operator-curve.decimate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00464.py -- tests/files/web/generated/M16-GAP-00464-operator-curve.decimate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00464", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00465", + "gapId": "operator:curve.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00465-operator-curve.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00465.py -- tests/files/web/generated/M16-GAP-00465-operator-curve.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00465", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00466", + "gapId": "operator:curve.dissolve_verts", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00466-operator-curve.dissolve_verts.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00466.py -- tests/files/web/generated/M16-GAP-00466-operator-curve.dissolve_verts.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00466", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00467", + "gapId": "operator:curve.draw", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00467-operator-curve.draw.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00467.py -- tests/files/web/generated/M16-GAP-00467-operator-curve.draw.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00467", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00468", + "gapId": "operator:curve.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00468-operator-curve.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00468.py -- tests/files/web/generated/M16-GAP-00468-operator-curve.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00468", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00469", + "gapId": "operator:curve.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00469-operator-curve.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00469.py -- tests/files/web/generated/M16-GAP-00469-operator-curve.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00469", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00470", + "gapId": "operator:curve.extrude", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00470-operator-curve.extrude.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00470.py -- tests/files/web/generated/M16-GAP-00470-operator-curve.extrude.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00470", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00471", + "gapId": "operator:curve.extrude_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00471-operator-curve.extrude_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00471.py -- tests/files/web/generated/M16-GAP-00471-operator-curve.extrude_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00471", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00472", + "gapId": "operator:curve.handle_type_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00472-operator-curve.handle_type_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00472.py -- tests/files/web/generated/M16-GAP-00472-operator-curve.handle_type_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00472", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00473", + "gapId": "operator:curve.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00473-operator-curve.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00473.py -- tests/files/web/generated/M16-GAP-00473-operator-curve.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00473", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00474", + "gapId": "operator:curve.make_segment", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00474-operator-curve.make_segment.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00474.py -- tests/files/web/generated/M16-GAP-00474-operator-curve.make_segment.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00474", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00475", + "gapId": "operator:curve.match_texture_space", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00475-operator-curve.match_texture_space.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00475.py -- tests/files/web/generated/M16-GAP-00475-operator-curve.match_texture_space.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00475", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00476", + "gapId": "operator:curve.normals_make_consistent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00476-operator-curve.normals_make_consistent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00476.py -- tests/files/web/generated/M16-GAP-00476-operator-curve.normals_make_consistent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00476", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00477", + "gapId": "operator:curve.pen", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00477-operator-curve.pen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00477.py -- tests/files/web/generated/M16-GAP-00477-operator-curve.pen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00477", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00478", + "gapId": "operator:curve.primitive_bezier_circle_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00478-operator-curve.primitive_bezier_circle_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00478.py -- tests/files/web/generated/M16-GAP-00478-operator-curve.primitive_bezier_circle_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00478", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00479", + "gapId": "operator:curve.primitive_bezier_curve_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00479-operator-curve.primitive_bezier_curve_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00479.py -- tests/files/web/generated/M16-GAP-00479-operator-curve.primitive_bezier_curve_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00479", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00480", + "gapId": "operator:curve.primitive_nurbs_circle_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00480-operator-curve.primitive_nurbs_circle_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00480.py -- tests/files/web/generated/M16-GAP-00480-operator-curve.primitive_nurbs_circle_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00480", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00481", + "gapId": "operator:curve.primitive_nurbs_curve_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00481-operator-curve.primitive_nurbs_curve_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00481.py -- tests/files/web/generated/M16-GAP-00481-operator-curve.primitive_nurbs_curve_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00481", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00482", + "gapId": "operator:curve.primitive_nurbs_path_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00482-operator-curve.primitive_nurbs_path_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00482.py -- tests/files/web/generated/M16-GAP-00482-operator-curve.primitive_nurbs_path_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00482", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00483", + "gapId": "operator:curve.radius_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00483-operator-curve.radius_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00483.py -- tests/files/web/generated/M16-GAP-00483-operator-curve.radius_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00483", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00484", + "gapId": "operator:curve.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00484-operator-curve.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00484.py -- tests/files/web/generated/M16-GAP-00484-operator-curve.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00484", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00485", + "gapId": "operator:curve.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00485-operator-curve.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00485.py -- tests/files/web/generated/M16-GAP-00485-operator-curve.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00485", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00486", + "gapId": "operator:curve.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00486-operator-curve.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00486.py -- tests/files/web/generated/M16-GAP-00486-operator-curve.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00486", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00487", + "gapId": "operator:curve.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00487-operator-curve.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00487.py -- tests/files/web/generated/M16-GAP-00487-operator-curve.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00487", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00488", + "gapId": "operator:curve.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00488-operator-curve.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00488.py -- tests/files/web/generated/M16-GAP-00488-operator-curve.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00488", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00489", + "gapId": "operator:curve.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00489-operator-curve.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00489.py -- tests/files/web/generated/M16-GAP-00489-operator-curve.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00489", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00490", + "gapId": "operator:curve.select_next", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00490-operator-curve.select_next.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00490.py -- tests/files/web/generated/M16-GAP-00490-operator-curve.select_next.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00490", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00491", + "gapId": "operator:curve.select_nth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00491-operator-curve.select_nth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00491.py -- tests/files/web/generated/M16-GAP-00491-operator-curve.select_nth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00491", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00492", + "gapId": "operator:curve.select_previous", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00492-operator-curve.select_previous.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00492.py -- tests/files/web/generated/M16-GAP-00492-operator-curve.select_previous.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00492", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00493", + "gapId": "operator:curve.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00493-operator-curve.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00493.py -- tests/files/web/generated/M16-GAP-00493-operator-curve.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00493", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00494", + "gapId": "operator:curve.select_row", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00494-operator-curve.select_row.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00494.py -- tests/files/web/generated/M16-GAP-00494-operator-curve.select_row.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00494", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00495", + "gapId": "operator:curve.select_similar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00495-operator-curve.select_similar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00495.py -- tests/files/web/generated/M16-GAP-00495-operator-curve.select_similar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00495", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00496", + "gapId": "operator:curve.separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00496-operator-curve.separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00496.py -- tests/files/web/generated/M16-GAP-00496-operator-curve.separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00496", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00497", + "gapId": "operator:curve.shade_flat", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00497-operator-curve.shade_flat.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00497.py -- tests/files/web/generated/M16-GAP-00497-operator-curve.shade_flat.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00497", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00498", + "gapId": "operator:curve.shade_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00498-operator-curve.shade_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00498.py -- tests/files/web/generated/M16-GAP-00498-operator-curve.shade_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00498", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00499", + "gapId": "operator:curve.shortest_path_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00499-operator-curve.shortest_path_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00499.py -- tests/files/web/generated/M16-GAP-00499-operator-curve.shortest_path_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00499", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00500", + "gapId": "operator:curve.smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00500-operator-curve.smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00500.py -- tests/files/web/generated/M16-GAP-00500-operator-curve.smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00500", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00501", + "gapId": "operator:curve.smooth_radius", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00501-operator-curve.smooth_radius.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00501.py -- tests/files/web/generated/M16-GAP-00501-operator-curve.smooth_radius.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00501", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00502", + "gapId": "operator:curve.smooth_tilt", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00502-operator-curve.smooth_tilt.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00502.py -- tests/files/web/generated/M16-GAP-00502-operator-curve.smooth_tilt.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00502", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00503", + "gapId": "operator:curve.smooth_weight", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00503-operator-curve.smooth_weight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00503.py -- tests/files/web/generated/M16-GAP-00503-operator-curve.smooth_weight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00503", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00504", + "gapId": "operator:curve.spin", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00504-operator-curve.spin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00504.py -- tests/files/web/generated/M16-GAP-00504-operator-curve.spin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00504", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00505", + "gapId": "operator:curve.spline_type_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00505-operator-curve.spline_type_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00505.py -- tests/files/web/generated/M16-GAP-00505-operator-curve.spline_type_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00505", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00506", + "gapId": "operator:curve.spline_weight_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00506-operator-curve.spline_weight_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00506.py -- tests/files/web/generated/M16-GAP-00506-operator-curve.spline_weight_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00506", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00507", + "gapId": "operator:curve.split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00507-operator-curve.split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00507.py -- tests/files/web/generated/M16-GAP-00507-operator-curve.split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00507", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00508", + "gapId": "operator:curve.subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00508-operator-curve.subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00508.py -- tests/files/web/generated/M16-GAP-00508-operator-curve.subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00508", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00509", + "gapId": "operator:curve.switch_direction", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00509-operator-curve.switch_direction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00509.py -- tests/files/web/generated/M16-GAP-00509-operator-curve.switch_direction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00509", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00510", + "gapId": "operator:curve.tilt_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00510-operator-curve.tilt_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00510.py -- tests/files/web/generated/M16-GAP-00510-operator-curve.tilt_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00510", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00511", + "gapId": "operator:curve.vertex_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00511-operator-curve.vertex_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00511.py -- tests/files/web/generated/M16-GAP-00511-operator-curve.vertex_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00511", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00512", + "gapId": "operator:curves.add_bezier", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00512-operator-curves.add_bezier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00512.py -- tests/files/web/generated/M16-GAP-00512-operator-curves.add_bezier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00512", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00513", + "gapId": "operator:curves.add_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00513-operator-curves.add_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00513.py -- tests/files/web/generated/M16-GAP-00513-operator-curves.add_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00513", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00514", + "gapId": "operator:curves.attribute_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00514-operator-curves.attribute_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00514.py -- tests/files/web/generated/M16-GAP-00514-operator-curves.attribute_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00514", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00515", + "gapId": "operator:curves.convert_from_particle_system", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00515-operator-curves.convert_from_particle_system.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00515.py -- tests/files/web/generated/M16-GAP-00515-operator-curves.convert_from_particle_system.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00515", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00516", + "gapId": "operator:curves.convert_to_particle_system", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00516-operator-curves.convert_to_particle_system.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00516.py -- tests/files/web/generated/M16-GAP-00516-operator-curves.convert_to_particle_system.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00516", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00517", + "gapId": "operator:curves.curve_type_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00517-operator-curves.curve_type_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00517.py -- tests/files/web/generated/M16-GAP-00517-operator-curves.curve_type_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00517", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00518", + "gapId": "operator:curves.cyclic_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00518-operator-curves.cyclic_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00518.py -- tests/files/web/generated/M16-GAP-00518-operator-curves.cyclic_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00518", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00519", + "gapId": "operator:curves.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00519-operator-curves.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00519.py -- tests/files/web/generated/M16-GAP-00519-operator-curves.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00519", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00520", + "gapId": "operator:curves.draw", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00520-operator-curves.draw.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00520.py -- tests/files/web/generated/M16-GAP-00520-operator-curves.draw.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00520", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00521", + "gapId": "operator:curves.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00521-operator-curves.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00521.py -- tests/files/web/generated/M16-GAP-00521-operator-curves.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00521", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00522", + "gapId": "operator:curves.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00522-operator-curves.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00522.py -- tests/files/web/generated/M16-GAP-00522-operator-curves.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00522", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00523", + "gapId": "operator:curves.extrude", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00523-operator-curves.extrude.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00523.py -- tests/files/web/generated/M16-GAP-00523-operator-curves.extrude.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00523", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00524", + "gapId": "operator:curves.extrude_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00524-operator-curves.extrude_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00524.py -- tests/files/web/generated/M16-GAP-00524-operator-curves.extrude_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00524", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00525", + "gapId": "operator:curves.handle_type_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00525-operator-curves.handle_type_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00525.py -- tests/files/web/generated/M16-GAP-00525-operator-curves.handle_type_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00525", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00526", + "gapId": "operator:curves.pen", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00526-operator-curves.pen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00526.py -- tests/files/web/generated/M16-GAP-00526-operator-curves.pen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00526", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00527", + "gapId": "operator:curves.sculptmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00527-operator-curves.sculptmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00527.py -- tests/files/web/generated/M16-GAP-00527-operator-curves.sculptmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00527", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00528", + "gapId": "operator:curves.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00528-operator-curves.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00528.py -- tests/files/web/generated/M16-GAP-00528-operator-curves.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00528", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00529", + "gapId": "operator:curves.select_ends", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00529-operator-curves.select_ends.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00529.py -- tests/files/web/generated/M16-GAP-00529-operator-curves.select_ends.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00529", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00530", + "gapId": "operator:curves.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00530-operator-curves.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00530.py -- tests/files/web/generated/M16-GAP-00530-operator-curves.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00530", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00531", + "gapId": "operator:curves.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00531-operator-curves.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00531.py -- tests/files/web/generated/M16-GAP-00531-operator-curves.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00531", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00532", + "gapId": "operator:curves.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00532-operator-curves.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00532.py -- tests/files/web/generated/M16-GAP-00532-operator-curves.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00532", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00533", + "gapId": "operator:curves.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00533-operator-curves.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00533.py -- tests/files/web/generated/M16-GAP-00533-operator-curves.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00533", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00534", + "gapId": "operator:curves.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00534-operator-curves.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00534.py -- tests/files/web/generated/M16-GAP-00534-operator-curves.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00534", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00535", + "gapId": "operator:curves.separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00535-operator-curves.separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00535.py -- tests/files/web/generated/M16-GAP-00535-operator-curves.separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00535", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00536", + "gapId": "operator:curves.set_selection_domain", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00536-operator-curves.set_selection_domain.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00536.py -- tests/files/web/generated/M16-GAP-00536-operator-curves.set_selection_domain.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00536", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00537", + "gapId": "operator:curves.snap_curves_to_surface", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00537-operator-curves.snap_curves_to_surface.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00537.py -- tests/files/web/generated/M16-GAP-00537-operator-curves.snap_curves_to_surface.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00537", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00538", + "gapId": "operator:curves.split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00538-operator-curves.split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00538.py -- tests/files/web/generated/M16-GAP-00538-operator-curves.split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00538", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00539", + "gapId": "operator:curves.subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00539-operator-curves.subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00539.py -- tests/files/web/generated/M16-GAP-00539-operator-curves.subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00539", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00540", + "gapId": "operator:curves.surface_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00540-operator-curves.surface_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00540.py -- tests/files/web/generated/M16-GAP-00540-operator-curves.surface_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00540", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00541", + "gapId": "operator:curves.switch_direction", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00541-operator-curves.switch_direction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00541.py -- tests/files/web/generated/M16-GAP-00541-operator-curves.switch_direction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00541", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00542", + "gapId": "operator:curves.tilt_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00542-operator-curves.tilt_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00542.py -- tests/files/web/generated/M16-GAP-00542-operator-curves.tilt_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00542", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00543", + "gapId": "operator:cycles.denoise_animation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00543-operator-cycles.denoise_animation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00543.py -- tests/files/web/generated/M16-GAP-00543-operator-cycles.denoise_animation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00543", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00544", + "gapId": "operator:cycles.merge_images", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00544-operator-cycles.merge_images.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00544.py -- tests/files/web/generated/M16-GAP-00544-operator-cycles.merge_images.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00544", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00545", + "gapId": "operator:cycles.use_shading_nodes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00545-operator-cycles.use_shading_nodes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00545.py -- tests/files/web/generated/M16-GAP-00545-operator-cycles.use_shading_nodes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00545", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00546", + "gapId": "operator:dpaint.bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00546-operator-dpaint.bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00546.py -- tests/files/web/generated/M16-GAP-00546-operator-dpaint.bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00546", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00547", + "gapId": "operator:dpaint.output_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00547-operator-dpaint.output_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00547.py -- tests/files/web/generated/M16-GAP-00547-operator-dpaint.output_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00547", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00548", + "gapId": "operator:dpaint.surface_slot_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00548-operator-dpaint.surface_slot_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00548.py -- tests/files/web/generated/M16-GAP-00548-operator-dpaint.surface_slot_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00548", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00549", + "gapId": "operator:dpaint.surface_slot_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00549-operator-dpaint.surface_slot_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00549.py -- tests/files/web/generated/M16-GAP-00549-operator-dpaint.surface_slot_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00549", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00550", + "gapId": "operator:dpaint.type_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00550-operator-dpaint.type_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00550.py -- tests/files/web/generated/M16-GAP-00550-operator-dpaint.type_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00550", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00551", + "gapId": "operator:ed.flush_edits", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00551-operator-ed.flush_edits.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00551.py -- tests/files/web/generated/M16-GAP-00551-operator-ed.flush_edits.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00551", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00552", + "gapId": "operator:ed.lib_id_fake_user_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00552-operator-ed.lib_id_fake_user_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00552.py -- tests/files/web/generated/M16-GAP-00552-operator-ed.lib_id_fake_user_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00552", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00553", + "gapId": "operator:ed.lib_id_generate_preview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00553-operator-ed.lib_id_generate_preview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00553.py -- tests/files/web/generated/M16-GAP-00553-operator-ed.lib_id_generate_preview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00553", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00554", + "gapId": "operator:ed.lib_id_generate_preview_from_object", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00554-operator-ed.lib_id_generate_preview_from_object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00554.py -- tests/files/web/generated/M16-GAP-00554-operator-ed.lib_id_generate_preview_from_object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00554", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00555", + "gapId": "operator:ed.lib_id_load_custom_preview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00555-operator-ed.lib_id_load_custom_preview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00555.py -- tests/files/web/generated/M16-GAP-00555-operator-ed.lib_id_load_custom_preview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00555", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00556", + "gapId": "operator:ed.lib_id_override_editable_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00556-operator-ed.lib_id_override_editable_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00556.py -- tests/files/web/generated/M16-GAP-00556-operator-ed.lib_id_override_editable_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00556", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00557", + "gapId": "operator:ed.lib_id_remove_preview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00557-operator-ed.lib_id_remove_preview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00557.py -- tests/files/web/generated/M16-GAP-00557-operator-ed.lib_id_remove_preview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00557", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00558", + "gapId": "operator:ed.lib_id_unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00558-operator-ed.lib_id_unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00558.py -- tests/files/web/generated/M16-GAP-00558-operator-ed.lib_id_unlink.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00558", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00559", + "gapId": "operator:ed.redo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00559-operator-ed.redo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00559.py -- tests/files/web/generated/M16-GAP-00559-operator-ed.redo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00559", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00560", + "gapId": "operator:ed.undo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00560-operator-ed.undo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00560.py -- tests/files/web/generated/M16-GAP-00560-operator-ed.undo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00560", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00561", + "gapId": "operator:ed.undo_history", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00561-operator-ed.undo_history.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00561.py -- tests/files/web/generated/M16-GAP-00561-operator-ed.undo_history.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00561", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00562", + "gapId": "operator:ed.undo_push", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00562-operator-ed.undo_push.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00562.py -- tests/files/web/generated/M16-GAP-00562-operator-ed.undo_push.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00562", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00563", + "gapId": "operator:ed.undo_redo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00563-operator-ed.undo_redo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00563.py -- tests/files/web/generated/M16-GAP-00563-operator-ed.undo_redo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00563", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00564", + "gapId": "operator:export_anim.bvh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00564-operator-export_anim.bvh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00564.py -- tests/files/web/generated/M16-GAP-00564-operator-export_anim.bvh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00564", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00565", + "gapId": "operator:export_scene.fbx", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00565-operator-export_scene.fbx.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00565.py -- tests/files/web/generated/M16-GAP-00565-operator-export_scene.fbx.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00565", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00566", + "gapId": "operator:export_scene.gltf", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00566-operator-export_scene.gltf.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00566.py -- tests/files/web/generated/M16-GAP-00566-operator-export_scene.gltf.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00566", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00567", + "gapId": "operator:extensions.package_disable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00567-operator-extensions.package_disable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00567.py -- tests/files/web/generated/M16-GAP-00567-operator-extensions.package_disable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00567", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00568", + "gapId": "operator:extensions.package_install", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00568-operator-extensions.package_install.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00568.py -- tests/files/web/generated/M16-GAP-00568-operator-extensions.package_install.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00568", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00569", + "gapId": "operator:extensions.package_install_files", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00569-operator-extensions.package_install_files.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00569.py -- tests/files/web/generated/M16-GAP-00569-operator-extensions.package_install_files.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00569", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00570", + "gapId": "operator:extensions.package_install_marked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00570-operator-extensions.package_install_marked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00570.py -- tests/files/web/generated/M16-GAP-00570-operator-extensions.package_install_marked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00570", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00571", + "gapId": "operator:extensions.package_mark_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00571-operator-extensions.package_mark_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00571.py -- tests/files/web/generated/M16-GAP-00571-operator-extensions.package_mark_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00571", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00572", + "gapId": "operator:extensions.package_mark_clear_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00572-operator-extensions.package_mark_clear_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00572.py -- tests/files/web/generated/M16-GAP-00572-operator-extensions.package_mark_clear_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00572", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00573", + "gapId": "operator:extensions.package_mark_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00573-operator-extensions.package_mark_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00573.py -- tests/files/web/generated/M16-GAP-00573-operator-extensions.package_mark_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00573", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00574", + "gapId": "operator:extensions.package_mark_set_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00574-operator-extensions.package_mark_set_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00574.py -- tests/files/web/generated/M16-GAP-00574-operator-extensions.package_mark_set_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00574", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00575", + "gapId": "operator:extensions.package_obsolete_marked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00575-operator-extensions.package_obsolete_marked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00575.py -- tests/files/web/generated/M16-GAP-00575-operator-extensions.package_obsolete_marked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00575", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00576", + "gapId": "operator:extensions.package_show_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00576-operator-extensions.package_show_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00576.py -- tests/files/web/generated/M16-GAP-00576-operator-extensions.package_show_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00576", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00577", + "gapId": "operator:extensions.package_show_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00577-operator-extensions.package_show_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00577.py -- tests/files/web/generated/M16-GAP-00577-operator-extensions.package_show_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00577", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00578", + "gapId": "operator:extensions.package_show_settings", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00578-operator-extensions.package_show_settings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00578.py -- tests/files/web/generated/M16-GAP-00578-operator-extensions.package_show_settings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00578", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00579", + "gapId": "operator:extensions.package_theme_disable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00579-operator-extensions.package_theme_disable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00579.py -- tests/files/web/generated/M16-GAP-00579-operator-extensions.package_theme_disable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00579", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00580", + "gapId": "operator:extensions.package_theme_enable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00580-operator-extensions.package_theme_enable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00580.py -- tests/files/web/generated/M16-GAP-00580-operator-extensions.package_theme_enable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00580", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00581", + "gapId": "operator:extensions.package_uninstall", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00581-operator-extensions.package_uninstall.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00581.py -- tests/files/web/generated/M16-GAP-00581-operator-extensions.package_uninstall.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00581", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00582", + "gapId": "operator:extensions.package_uninstall_marked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00582-operator-extensions.package_uninstall_marked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00582.py -- tests/files/web/generated/M16-GAP-00582-operator-extensions.package_uninstall_marked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00582", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00583", + "gapId": "operator:extensions.package_uninstall_system", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00583-operator-extensions.package_uninstall_system.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00583.py -- tests/files/web/generated/M16-GAP-00583-operator-extensions.package_uninstall_system.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00583", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00584", + "gapId": "operator:extensions.package_upgrade_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00584-operator-extensions.package_upgrade_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00584.py -- tests/files/web/generated/M16-GAP-00584-operator-extensions.package_upgrade_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00584", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00585", + "gapId": "operator:extensions.repo_enable_from_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00585-operator-extensions.repo_enable_from_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00585.py -- tests/files/web/generated/M16-GAP-00585-operator-extensions.repo_enable_from_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00585", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00586", + "gapId": "operator:extensions.repo_lock_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00586-operator-extensions.repo_lock_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00586.py -- tests/files/web/generated/M16-GAP-00586-operator-extensions.repo_lock_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00586", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00587", + "gapId": "operator:extensions.repo_refresh_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00587-operator-extensions.repo_refresh_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00587.py -- tests/files/web/generated/M16-GAP-00587-operator-extensions.repo_refresh_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00587", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00588", + "gapId": "operator:extensions.repo_sync", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00588-operator-extensions.repo_sync.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00588.py -- tests/files/web/generated/M16-GAP-00588-operator-extensions.repo_sync.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00588", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00589", + "gapId": "operator:extensions.repo_sync_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00589-operator-extensions.repo_sync_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00589.py -- tests/files/web/generated/M16-GAP-00589-operator-extensions.repo_sync_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00589", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00590", + "gapId": "operator:extensions.repo_unlock", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00590-operator-extensions.repo_unlock.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00590.py -- tests/files/web/generated/M16-GAP-00590-operator-extensions.repo_unlock.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00590", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00591", + "gapId": "operator:extensions.repo_unlock_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00591-operator-extensions.repo_unlock_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00591.py -- tests/files/web/generated/M16-GAP-00591-operator-extensions.repo_unlock_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00591", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00592", + "gapId": "operator:extensions.status_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00592-operator-extensions.status_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00592.py -- tests/files/web/generated/M16-GAP-00592-operator-extensions.status_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00592", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00593", + "gapId": "operator:extensions.status_clear_errors", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00593-operator-extensions.status_clear_errors.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00593.py -- tests/files/web/generated/M16-GAP-00593-operator-extensions.status_clear_errors.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00593", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00594", + "gapId": "operator:extensions.userpref_allow_online", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00594-operator-extensions.userpref_allow_online.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00594.py -- tests/files/web/generated/M16-GAP-00594-operator-extensions.userpref_allow_online.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00594", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00595", + "gapId": "operator:extensions.userpref_allow_online_popup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00595-operator-extensions.userpref_allow_online_popup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00595.py -- tests/files/web/generated/M16-GAP-00595-operator-extensions.userpref_allow_online_popup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00595", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00596", + "gapId": "operator:extensions.userpref_show_for_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00596-operator-extensions.userpref_show_for_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00596.py -- tests/files/web/generated/M16-GAP-00596-operator-extensions.userpref_show_for_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00596", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00597", + "gapId": "operator:extensions.userpref_show_online", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00597-operator-extensions.userpref_show_online.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00597.py -- tests/files/web/generated/M16-GAP-00597-operator-extensions.userpref_show_online.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00597", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00598", + "gapId": "operator:extensions.userpref_tags_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00598-operator-extensions.userpref_tags_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00598.py -- tests/files/web/generated/M16-GAP-00598-operator-extensions.userpref_tags_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00598", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00599", + "gapId": "operator:file.autopack_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00599-operator-file.autopack_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00599.py -- tests/files/web/generated/M16-GAP-00599-operator-file.autopack_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00599", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00600", + "gapId": "operator:file.bookmark_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00600-operator-file.bookmark_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00600.py -- tests/files/web/generated/M16-GAP-00600-operator-file.bookmark_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00600", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00601", + "gapId": "operator:file.bookmark_cleanup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00601-operator-file.bookmark_cleanup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00601.py -- tests/files/web/generated/M16-GAP-00601-operator-file.bookmark_cleanup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00601", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00602", + "gapId": "operator:file.bookmark_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00602-operator-file.bookmark_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00602.py -- tests/files/web/generated/M16-GAP-00602-operator-file.bookmark_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00602", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00603", + "gapId": "operator:file.bookmark_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00603-operator-file.bookmark_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00603.py -- tests/files/web/generated/M16-GAP-00603-operator-file.bookmark_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00603", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00604", + "gapId": "operator:file.cancel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00604-operator-file.cancel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00604.py -- tests/files/web/generated/M16-GAP-00604-operator-file.cancel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00604", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00605", + "gapId": "operator:file.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00605-operator-file.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00605.py -- tests/files/web/generated/M16-GAP-00605-operator-file.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00605", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00606", + "gapId": "operator:file.directory_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00606-operator-file.directory_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00606.py -- tests/files/web/generated/M16-GAP-00606-operator-file.directory_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00606", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00607", + "gapId": "operator:file.edit_directory_path", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00607-operator-file.edit_directory_path.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00607.py -- tests/files/web/generated/M16-GAP-00607-operator-file.edit_directory_path.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00607", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00608", + "gapId": "operator:file.execute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00608-operator-file.execute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00608.py -- tests/files/web/generated/M16-GAP-00608-operator-file.execute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00608", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00609", + "gapId": "operator:file.external_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00609-operator-file.external_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00609.py -- tests/files/web/generated/M16-GAP-00609-operator-file.external_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00609", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00610", + "gapId": "operator:file.filenum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00610-operator-file.filenum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00610.py -- tests/files/web/generated/M16-GAP-00610-operator-file.filenum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00610", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00611", + "gapId": "operator:file.filepath_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00611-operator-file.filepath_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00611.py -- tests/files/web/generated/M16-GAP-00611-operator-file.filepath_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00611", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00612", + "gapId": "operator:file.find_missing_files", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00612-operator-file.find_missing_files.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00612.py -- tests/files/web/generated/M16-GAP-00612-operator-file.find_missing_files.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00612", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00613", + "gapId": "operator:file.hidedot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00613-operator-file.hidedot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00613.py -- tests/files/web/generated/M16-GAP-00613-operator-file.hidedot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00613", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00614", + "gapId": "operator:file.highlight", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00614-operator-file.highlight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00614.py -- tests/files/web/generated/M16-GAP-00614-operator-file.highlight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00614", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00615", + "gapId": "operator:file.make_paths_absolute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00615-operator-file.make_paths_absolute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00615.py -- tests/files/web/generated/M16-GAP-00615-operator-file.make_paths_absolute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00615", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00616", + "gapId": "operator:file.make_paths_relative", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00616-operator-file.make_paths_relative.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00616.py -- tests/files/web/generated/M16-GAP-00616-operator-file.make_paths_relative.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00616", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00617", + "gapId": "operator:file.mouse_execute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00617-operator-file.mouse_execute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00617.py -- tests/files/web/generated/M16-GAP-00617-operator-file.mouse_execute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00617", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00618", + "gapId": "operator:file.next", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00618-operator-file.next.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00618.py -- tests/files/web/generated/M16-GAP-00618-operator-file.next.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00618", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00619", + "gapId": "operator:file.pack_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00619-operator-file.pack_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00619.py -- tests/files/web/generated/M16-GAP-00619-operator-file.pack_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00619", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00620", + "gapId": "operator:file.pack_libraries", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00620-operator-file.pack_libraries.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00620.py -- tests/files/web/generated/M16-GAP-00620-operator-file.pack_libraries.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00620", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00621", + "gapId": "operator:file.parent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00621-operator-file.parent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00621.py -- tests/files/web/generated/M16-GAP-00621-operator-file.parent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00621", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00622", + "gapId": "operator:file.previous", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00622-operator-file.previous.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00622.py -- tests/files/web/generated/M16-GAP-00622-operator-file.previous.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00622", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00623", + "gapId": "operator:file.refresh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00623-operator-file.refresh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00623.py -- tests/files/web/generated/M16-GAP-00623-operator-file.refresh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00623", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00624", + "gapId": "operator:file.rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00624-operator-file.rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00624.py -- tests/files/web/generated/M16-GAP-00624-operator-file.rename.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00624", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00625", + "gapId": "operator:file.report_missing_files", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00625-operator-file.report_missing_files.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00625.py -- tests/files/web/generated/M16-GAP-00625-operator-file.report_missing_files.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00625", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00626", + "gapId": "operator:file.reset_recent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00626-operator-file.reset_recent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00626.py -- tests/files/web/generated/M16-GAP-00626-operator-file.reset_recent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00626", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00626", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00627", + "gapId": "operator:file.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00627-operator-file.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00627.py -- tests/files/web/generated/M16-GAP-00627-operator-file.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00627", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00627", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00628", + "gapId": "operator:file.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00628-operator-file.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00628.py -- tests/files/web/generated/M16-GAP-00628-operator-file.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00628", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00628", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00629", + "gapId": "operator:file.select_bookmark", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00629-operator-file.select_bookmark.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00629.py -- tests/files/web/generated/M16-GAP-00629-operator-file.select_bookmark.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00629", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00629", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00630", + "gapId": "operator:file.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00630-operator-file.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00630.py -- tests/files/web/generated/M16-GAP-00630-operator-file.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00630", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00630", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00631", + "gapId": "operator:file.select_walk", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00631-operator-file.select_walk.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00631.py -- tests/files/web/generated/M16-GAP-00631-operator-file.select_walk.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00631", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00631", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00632", + "gapId": "operator:file.smoothscroll", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00632-operator-file.smoothscroll.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00632.py -- tests/files/web/generated/M16-GAP-00632-operator-file.smoothscroll.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00632", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00632", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00633", + "gapId": "operator:file.sort_column_ui_context", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00633-operator-file.sort_column_ui_context.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00633.py -- tests/files/web/generated/M16-GAP-00633-operator-file.sort_column_ui_context.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00633", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00633", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00634", + "gapId": "operator:file.start_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00634-operator-file.start_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00634.py -- tests/files/web/generated/M16-GAP-00634-operator-file.start_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00634", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00634", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00635", + "gapId": "operator:file.unpack_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00635-operator-file.unpack_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00635.py -- tests/files/web/generated/M16-GAP-00635-operator-file.unpack_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00635", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00635", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00636", + "gapId": "operator:file.unpack_item", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00636-operator-file.unpack_item.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00636.py -- tests/files/web/generated/M16-GAP-00636-operator-file.unpack_item.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00636", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00636", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00637", + "gapId": "operator:file.unpack_libraries", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00637-operator-file.unpack_libraries.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00637.py -- tests/files/web/generated/M16-GAP-00637-operator-file.unpack_libraries.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00637", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00637", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00638", + "gapId": "operator:file.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00638-operator-file.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00638.py -- tests/files/web/generated/M16-GAP-00638-operator-file.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00638", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00638", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00639", + "gapId": "operator:fluid.bake_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00639-operator-fluid.bake_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00639.py -- tests/files/web/generated/M16-GAP-00639-operator-fluid.bake_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00639", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00639", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00640", + "gapId": "operator:fluid.bake_data", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00640-operator-fluid.bake_data.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00640.py -- tests/files/web/generated/M16-GAP-00640-operator-fluid.bake_data.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00640", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00640", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00641", + "gapId": "operator:fluid.bake_guides", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00641-operator-fluid.bake_guides.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00641.py -- tests/files/web/generated/M16-GAP-00641-operator-fluid.bake_guides.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00641", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00641", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00642", + "gapId": "operator:fluid.bake_mesh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00642-operator-fluid.bake_mesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00642.py -- tests/files/web/generated/M16-GAP-00642-operator-fluid.bake_mesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00642", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00642", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00643", + "gapId": "operator:fluid.bake_noise", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00643-operator-fluid.bake_noise.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00643.py -- tests/files/web/generated/M16-GAP-00643-operator-fluid.bake_noise.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00643", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00643", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00644", + "gapId": "operator:fluid.bake_particles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00644-operator-fluid.bake_particles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00644.py -- tests/files/web/generated/M16-GAP-00644-operator-fluid.bake_particles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00644", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00644", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00645", + "gapId": "operator:fluid.free_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00645-operator-fluid.free_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00645.py -- tests/files/web/generated/M16-GAP-00645-operator-fluid.free_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00645", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00645", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00646", + "gapId": "operator:fluid.free_data", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00646-operator-fluid.free_data.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00646.py -- tests/files/web/generated/M16-GAP-00646-operator-fluid.free_data.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00646", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00646", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00647", + "gapId": "operator:fluid.free_guides", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00647-operator-fluid.free_guides.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00647.py -- tests/files/web/generated/M16-GAP-00647-operator-fluid.free_guides.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00647", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00647", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00648", + "gapId": "operator:fluid.free_mesh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00648-operator-fluid.free_mesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00648.py -- tests/files/web/generated/M16-GAP-00648-operator-fluid.free_mesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00648", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00648", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00649", + "gapId": "operator:fluid.free_noise", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00649-operator-fluid.free_noise.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00649.py -- tests/files/web/generated/M16-GAP-00649-operator-fluid.free_noise.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00649", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00649", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00650", + "gapId": "operator:fluid.free_particles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00650-operator-fluid.free_particles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00650.py -- tests/files/web/generated/M16-GAP-00650-operator-fluid.free_particles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00650", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00650", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00651", + "gapId": "operator:fluid.pause_bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00651-operator-fluid.pause_bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00651.py -- tests/files/web/generated/M16-GAP-00651-operator-fluid.pause_bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00651", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00651", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00652", + "gapId": "operator:fluid.preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00652-operator-fluid.preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00652.py -- tests/files/web/generated/M16-GAP-00652-operator-fluid.preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00652", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00652", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00653", + "gapId": "operator:font.case_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00653-operator-font.case_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00653.py -- tests/files/web/generated/M16-GAP-00653-operator-font.case_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00653", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00653", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00654", + "gapId": "operator:font.case_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00654-operator-font.case_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00654.py -- tests/files/web/generated/M16-GAP-00654-operator-font.case_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00654", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00654", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00655", + "gapId": "operator:font.change_character", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00655-operator-font.change_character.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00655.py -- tests/files/web/generated/M16-GAP-00655-operator-font.change_character.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00655", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00655", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00656", + "gapId": "operator:font.change_spacing", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00656-operator-font.change_spacing.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00656.py -- tests/files/web/generated/M16-GAP-00656-operator-font.change_spacing.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00656", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00656", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00657", + "gapId": "operator:font.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00657-operator-font.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00657.py -- tests/files/web/generated/M16-GAP-00657-operator-font.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00657", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00657", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00658", + "gapId": "operator:font.line_break", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00658-operator-font.line_break.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00658.py -- tests/files/web/generated/M16-GAP-00658-operator-font.line_break.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00658", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00658", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00659", + "gapId": "operator:font.move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00659-operator-font.move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00659.py -- tests/files/web/generated/M16-GAP-00659-operator-font.move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00659", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00659", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00660", + "gapId": "operator:font.move_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00660-operator-font.move_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00660.py -- tests/files/web/generated/M16-GAP-00660-operator-font.move_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00660", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00660", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00661", + "gapId": "operator:font.open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00661-operator-font.open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00661.py -- tests/files/web/generated/M16-GAP-00661-operator-font.open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00661", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00661", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00662", + "gapId": "operator:font.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00662-operator-font.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00662.py -- tests/files/web/generated/M16-GAP-00662-operator-font.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00662", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00662", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00663", + "gapId": "operator:font.select_word", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00663-operator-font.select_word.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00663.py -- tests/files/web/generated/M16-GAP-00663-operator-font.select_word.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00663", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00663", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00664", + "gapId": "operator:font.selection_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00664-operator-font.selection_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00664.py -- tests/files/web/generated/M16-GAP-00664-operator-font.selection_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00664", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00664", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00665", + "gapId": "operator:font.style_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00665-operator-font.style_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00665.py -- tests/files/web/generated/M16-GAP-00665-operator-font.style_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00665", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00665", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00666", + "gapId": "operator:font.style_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00666-operator-font.style_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00666.py -- tests/files/web/generated/M16-GAP-00666-operator-font.style_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00666", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00666", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00667", + "gapId": "operator:font.text_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00667-operator-font.text_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00667.py -- tests/files/web/generated/M16-GAP-00667-operator-font.text_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00667", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00667", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00668", + "gapId": "operator:font.text_cut", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00668-operator-font.text_cut.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00668.py -- tests/files/web/generated/M16-GAP-00668-operator-font.text_cut.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00668", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00668", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00669", + "gapId": "operator:font.text_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00669-operator-font.text_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00669.py -- tests/files/web/generated/M16-GAP-00669-operator-font.text_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00669", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00669", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00670", + "gapId": "operator:font.text_insert_unicode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00670-operator-font.text_insert_unicode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00670.py -- tests/files/web/generated/M16-GAP-00670-operator-font.text_insert_unicode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00670", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00670", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00671", + "gapId": "operator:font.text_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00671-operator-font.text_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00671.py -- tests/files/web/generated/M16-GAP-00671-operator-font.text_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00671", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00671", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00672", + "gapId": "operator:font.text_paste_from_file", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00672-operator-font.text_paste_from_file.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00672.py -- tests/files/web/generated/M16-GAP-00672-operator-font.text_paste_from_file.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00672", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00672", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00673", + "gapId": "operator:font.textbox_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00673-operator-font.textbox_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00673.py -- tests/files/web/generated/M16-GAP-00673-operator-font.textbox_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00673", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00673", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00674", + "gapId": "operator:font.textbox_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00674-operator-font.textbox_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00674.py -- tests/files/web/generated/M16-GAP-00674-operator-font.textbox_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00674", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00674", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00675", + "gapId": "operator:font.unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00675-operator-font.unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00675.py -- tests/files/web/generated/M16-GAP-00675-operator-font.unlink.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00675", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00675", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00676", + "gapId": "operator:geometry.attribute_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00676-operator-geometry.attribute_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00676.py -- tests/files/web/generated/M16-GAP-00676-operator-geometry.attribute_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00676", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00676", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00677", + "gapId": "operator:geometry.attribute_convert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00677-operator-geometry.attribute_convert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00677.py -- tests/files/web/generated/M16-GAP-00677-operator-geometry.attribute_convert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00677", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00677", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00678", + "gapId": "operator:geometry.attribute_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00678-operator-geometry.attribute_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00678.py -- tests/files/web/generated/M16-GAP-00678-operator-geometry.attribute_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00678", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00678", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00679", + "gapId": "operator:geometry.color_attribute_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00679-operator-geometry.color_attribute_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00679.py -- tests/files/web/generated/M16-GAP-00679-operator-geometry.color_attribute_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00679", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00679", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00680", + "gapId": "operator:geometry.color_attribute_convert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00680-operator-geometry.color_attribute_convert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00680.py -- tests/files/web/generated/M16-GAP-00680-operator-geometry.color_attribute_convert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00680", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00680", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00681", + "gapId": "operator:geometry.color_attribute_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00681-operator-geometry.color_attribute_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00681.py -- tests/files/web/generated/M16-GAP-00681-operator-geometry.color_attribute_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00681", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00681", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00682", + "gapId": "operator:geometry.color_attribute_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00682-operator-geometry.color_attribute_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00682.py -- tests/files/web/generated/M16-GAP-00682-operator-geometry.color_attribute_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00682", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00682", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00683", + "gapId": "operator:geometry.color_attribute_render_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00683-operator-geometry.color_attribute_render_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00683.py -- tests/files/web/generated/M16-GAP-00683-operator-geometry.color_attribute_render_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00683", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00683", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00684", + "gapId": "operator:geometry.geometry_randomization", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00684-operator-geometry.geometry_randomization.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00684.py -- tests/files/web/generated/M16-GAP-00684-operator-geometry.geometry_randomization.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00684", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00684", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00685", + "gapId": "operator:gizmogroup.gizmo_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00685-operator-gizmogroup.gizmo_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00685.py -- tests/files/web/generated/M16-GAP-00685-operator-gizmogroup.gizmo_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00685", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00685", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00686", + "gapId": "operator:gizmogroup.gizmo_tweak", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00686-operator-gizmogroup.gizmo_tweak.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00686.py -- tests/files/web/generated/M16-GAP-00686-operator-gizmogroup.gizmo_tweak.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00686", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00686", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00687", + "gapId": "operator:gpencil.annotate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00687-operator-gpencil.annotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00687.py -- tests/files/web/generated/M16-GAP-00687-operator-gpencil.annotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00687", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00687", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00688", + "gapId": "operator:gpencil.annotation_active_frame_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00688-operator-gpencil.annotation_active_frame_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00688.py -- tests/files/web/generated/M16-GAP-00688-operator-gpencil.annotation_active_frame_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00688", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00688", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00689", + "gapId": "operator:gpencil.annotation_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00689-operator-gpencil.annotation_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00689.py -- tests/files/web/generated/M16-GAP-00689-operator-gpencil.annotation_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00689", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00689", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00690", + "gapId": "operator:gpencil.data_unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00690-operator-gpencil.data_unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00690.py -- tests/files/web/generated/M16-GAP-00690-operator-gpencil.data_unlink.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00690", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00690", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00691", + "gapId": "operator:gpencil.layer_annotation_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00691-operator-gpencil.layer_annotation_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00691.py -- tests/files/web/generated/M16-GAP-00691-operator-gpencil.layer_annotation_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00691", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00691", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00692", + "gapId": "operator:gpencil.layer_annotation_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00692-operator-gpencil.layer_annotation_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00692.py -- tests/files/web/generated/M16-GAP-00692-operator-gpencil.layer_annotation_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00692", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00692", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00693", + "gapId": "operator:gpencil.layer_annotation_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00693-operator-gpencil.layer_annotation_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00693.py -- tests/files/web/generated/M16-GAP-00693-operator-gpencil.layer_annotation_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00693", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00693", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00694", + "gapId": "operator:graph.bake_keys", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00694-operator-graph.bake_keys.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00694.py -- tests/files/web/generated/M16-GAP-00694-operator-graph.bake_keys.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00694", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00694", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00695", + "gapId": "operator:graph.blend_offset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00695-operator-graph.blend_offset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00695.py -- tests/files/web/generated/M16-GAP-00695-operator-graph.blend_offset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00695", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00695", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00696", + "gapId": "operator:graph.blend_to_default", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00696-operator-graph.blend_to_default.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00696.py -- tests/files/web/generated/M16-GAP-00696-operator-graph.blend_to_default.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00696", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00696", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00697", + "gapId": "operator:graph.blend_to_ease", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00697-operator-graph.blend_to_ease.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00697.py -- tests/files/web/generated/M16-GAP-00697-operator-graph.blend_to_ease.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00697", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00697", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00698", + "gapId": "operator:graph.blend_to_neighbor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00698-operator-graph.blend_to_neighbor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00698.py -- tests/files/web/generated/M16-GAP-00698-operator-graph.blend_to_neighbor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00698", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00698", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00699", + "gapId": "operator:graph.breakdown", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00699-operator-graph.breakdown.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00699.py -- tests/files/web/generated/M16-GAP-00699-operator-graph.breakdown.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00699", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00699", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00700", + "gapId": "operator:graph.butterworth_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00700-operator-graph.butterworth_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00700.py -- tests/files/web/generated/M16-GAP-00700-operator-graph.butterworth_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00700", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00700", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00701", + "gapId": "operator:graph.clean", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00701-operator-graph.clean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00701.py -- tests/files/web/generated/M16-GAP-00701-operator-graph.clean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00701", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00701", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00702", + "gapId": "operator:graph.click_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00702-operator-graph.click_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00702.py -- tests/files/web/generated/M16-GAP-00702-operator-graph.click_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00702", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00702", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00703", + "gapId": "operator:graph.clickselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00703-operator-graph.clickselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00703.py -- tests/files/web/generated/M16-GAP-00703-operator-graph.clickselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00703", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00703", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00704", + "gapId": "operator:graph.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00704-operator-graph.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00704.py -- tests/files/web/generated/M16-GAP-00704-operator-graph.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00704", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00704", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00705", + "gapId": "operator:graph.cursor_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00705-operator-graph.cursor_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00705.py -- tests/files/web/generated/M16-GAP-00705-operator-graph.cursor_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00705", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00705", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00706", + "gapId": "operator:graph.decimate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00706-operator-graph.decimate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00706.py -- tests/files/web/generated/M16-GAP-00706-operator-graph.decimate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00706", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00706", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00707", + "gapId": "operator:graph.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00707-operator-graph.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00707.py -- tests/files/web/generated/M16-GAP-00707-operator-graph.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00707", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00707", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00708", + "gapId": "operator:graph.driver_delete_invalid", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00708-operator-graph.driver_delete_invalid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00708.py -- tests/files/web/generated/M16-GAP-00708-operator-graph.driver_delete_invalid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00708", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00708", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00709", + "gapId": "operator:graph.driver_variables_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00709-operator-graph.driver_variables_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00709.py -- tests/files/web/generated/M16-GAP-00709-operator-graph.driver_variables_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00709", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00709", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00710", + "gapId": "operator:graph.driver_variables_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00710-operator-graph.driver_variables_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00710.py -- tests/files/web/generated/M16-GAP-00710-operator-graph.driver_variables_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00710", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00710", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00711", + "gapId": "operator:graph.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00711-operator-graph.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00711.py -- tests/files/web/generated/M16-GAP-00711-operator-graph.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00711", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00711", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00712", + "gapId": "operator:graph.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00712-operator-graph.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00712.py -- tests/files/web/generated/M16-GAP-00712-operator-graph.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00712", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00712", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00713", + "gapId": "operator:graph.ease", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00713-operator-graph.ease.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00713.py -- tests/files/web/generated/M16-GAP-00713-operator-graph.ease.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00713", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00713", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00714", + "gapId": "operator:graph.easing_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00714-operator-graph.easing_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00714.py -- tests/files/web/generated/M16-GAP-00714-operator-graph.easing_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00714", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00714", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00715", + "gapId": "operator:graph.equalize_handles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00715-operator-graph.equalize_handles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00715.py -- tests/files/web/generated/M16-GAP-00715-operator-graph.equalize_handles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00715", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00715", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00716", + "gapId": "operator:graph.euler_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00716-operator-graph.euler_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00716.py -- tests/files/web/generated/M16-GAP-00716-operator-graph.euler_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00716", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00716", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00717", + "gapId": "operator:graph.extrapolation_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00717-operator-graph.extrapolation_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00717.py -- tests/files/web/generated/M16-GAP-00717-operator-graph.extrapolation_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00717", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00717", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00718", + "gapId": "operator:graph.fmodifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00718-operator-graph.fmodifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00718.py -- tests/files/web/generated/M16-GAP-00718-operator-graph.fmodifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00718", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00718", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00719", + "gapId": "operator:graph.fmodifier_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00719-operator-graph.fmodifier_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00719.py -- tests/files/web/generated/M16-GAP-00719-operator-graph.fmodifier_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00719", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00719", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00720", + "gapId": "operator:graph.fmodifier_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00720-operator-graph.fmodifier_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00720.py -- tests/files/web/generated/M16-GAP-00720-operator-graph.fmodifier_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00720", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00720", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00721", + "gapId": "operator:graph.fmodifier_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00721-operator-graph.fmodifier_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00721.py -- tests/files/web/generated/M16-GAP-00721-operator-graph.fmodifier_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00721", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00721", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00722", + "gapId": "operator:graph.frame_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00722-operator-graph.frame_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00722.py -- tests/files/web/generated/M16-GAP-00722-operator-graph.frame_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00722", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00722", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00723", + "gapId": "operator:graph.gaussian_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00723-operator-graph.gaussian_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00723.py -- tests/files/web/generated/M16-GAP-00723-operator-graph.gaussian_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00723", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00723", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00724", + "gapId": "operator:graph.ghost_curves_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00724-operator-graph.ghost_curves_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00724.py -- tests/files/web/generated/M16-GAP-00724-operator-graph.ghost_curves_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00724", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00724", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00725", + "gapId": "operator:graph.ghost_curves_create", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00725-operator-graph.ghost_curves_create.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00725.py -- tests/files/web/generated/M16-GAP-00725-operator-graph.ghost_curves_create.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00725", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00725", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00726", + "gapId": "operator:graph.handle_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00726-operator-graph.handle_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00726.py -- tests/files/web/generated/M16-GAP-00726-operator-graph.handle_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00726", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00726", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00727", + "gapId": "operator:graph.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00727-operator-graph.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00727.py -- tests/files/web/generated/M16-GAP-00727-operator-graph.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00727", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00727", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00728", + "gapId": "operator:graph.interpolation_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00728-operator-graph.interpolation_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00728.py -- tests/files/web/generated/M16-GAP-00728-operator-graph.interpolation_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00728", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00728", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00729", + "gapId": "operator:graph.keyframe_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00729-operator-graph.keyframe_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00729.py -- tests/files/web/generated/M16-GAP-00729-operator-graph.keyframe_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00729", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00729", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00730", + "gapId": "operator:graph.keyframe_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00730-operator-graph.keyframe_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00730.py -- tests/files/web/generated/M16-GAP-00730-operator-graph.keyframe_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00730", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00730", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00731", + "gapId": "operator:graph.keys_to_samples", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00731-operator-graph.keys_to_samples.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00731.py -- tests/files/web/generated/M16-GAP-00731-operator-graph.keys_to_samples.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00731", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00731", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00732", + "gapId": "operator:graph.local_view", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00732-operator-graph.local_view.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00732.py -- tests/files/web/generated/M16-GAP-00732-operator-graph.local_view.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00732", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00732", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00733", + "gapId": "operator:graph.match_slope", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00733-operator-graph.match_slope.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00733.py -- tests/files/web/generated/M16-GAP-00733-operator-graph.match_slope.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00733", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00733", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00734", + "gapId": "operator:graph.mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00734-operator-graph.mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00734.py -- tests/files/web/generated/M16-GAP-00734-operator-graph.mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00734", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00734", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00735", + "gapId": "operator:graph.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00735-operator-graph.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00735.py -- tests/files/web/generated/M16-GAP-00735-operator-graph.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00735", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00735", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00736", + "gapId": "operator:graph.previewrange_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00736-operator-graph.previewrange_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00736.py -- tests/files/web/generated/M16-GAP-00736-operator-graph.previewrange_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00736", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00736", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00737", + "gapId": "operator:graph.push_pull", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00737-operator-graph.push_pull.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00737.py -- tests/files/web/generated/M16-GAP-00737-operator-graph.push_pull.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00737", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00737", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00738", + "gapId": "operator:graph.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00738-operator-graph.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00738.py -- tests/files/web/generated/M16-GAP-00738-operator-graph.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00738", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00738", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00739", + "gapId": "operator:graph.samples_to_keys", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00739-operator-graph.samples_to_keys.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00739.py -- tests/files/web/generated/M16-GAP-00739-operator-graph.samples_to_keys.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00739", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00739", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00740", + "gapId": "operator:graph.scale_average", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00740-operator-graph.scale_average.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00740.py -- tests/files/web/generated/M16-GAP-00740-operator-graph.scale_average.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00740", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00740", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00741", + "gapId": "operator:graph.scale_from_neighbor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00741-operator-graph.scale_from_neighbor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00741.py -- tests/files/web/generated/M16-GAP-00741-operator-graph.scale_from_neighbor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00741", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00741", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00742", + "gapId": "operator:graph.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00742-operator-graph.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00742.py -- tests/files/web/generated/M16-GAP-00742-operator-graph.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00742", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00742", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00743", + "gapId": "operator:graph.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00743-operator-graph.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00743.py -- tests/files/web/generated/M16-GAP-00743-operator-graph.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00743", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00743", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00744", + "gapId": "operator:graph.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00744-operator-graph.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00744.py -- tests/files/web/generated/M16-GAP-00744-operator-graph.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00744", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00744", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00745", + "gapId": "operator:graph.select_column", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00745-operator-graph.select_column.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00745.py -- tests/files/web/generated/M16-GAP-00745-operator-graph.select_column.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00745", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00745", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00746", + "gapId": "operator:graph.select_key_handles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00746-operator-graph.select_key_handles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00746.py -- tests/files/web/generated/M16-GAP-00746-operator-graph.select_key_handles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00746", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00746", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00747", + "gapId": "operator:graph.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00747-operator-graph.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00747.py -- tests/files/web/generated/M16-GAP-00747-operator-graph.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00747", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00747", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00748", + "gapId": "operator:graph.select_leftright", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00748-operator-graph.select_leftright.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00748.py -- tests/files/web/generated/M16-GAP-00748-operator-graph.select_leftright.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00748", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00748", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00749", + "gapId": "operator:graph.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00749-operator-graph.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00749.py -- tests/files/web/generated/M16-GAP-00749-operator-graph.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00749", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00749", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00750", + "gapId": "operator:graph.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00750-operator-graph.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00750.py -- tests/files/web/generated/M16-GAP-00750-operator-graph.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00750", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00750", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00751", + "gapId": "operator:graph.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00751-operator-graph.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00751.py -- tests/files/web/generated/M16-GAP-00751-operator-graph.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00751", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00751", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00752", + "gapId": "operator:graph.shear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00752-operator-graph.shear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00752.py -- tests/files/web/generated/M16-GAP-00752-operator-graph.shear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00752", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00752", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00753", + "gapId": "operator:graph.smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00753-operator-graph.smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00753.py -- tests/files/web/generated/M16-GAP-00753-operator-graph.smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00753", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00753", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00754", + "gapId": "operator:graph.snap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00754-operator-graph.snap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00754.py -- tests/files/web/generated/M16-GAP-00754-operator-graph.snap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00754", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00754", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00755", + "gapId": "operator:graph.snap_cursor_value", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00755-operator-graph.snap_cursor_value.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00755.py -- tests/files/web/generated/M16-GAP-00755-operator-graph.snap_cursor_value.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00755", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00755", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00756", + "gapId": "operator:graph.sound_to_samples", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00756-operator-graph.sound_to_samples.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00756.py -- tests/files/web/generated/M16-GAP-00756-operator-graph.sound_to_samples.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00756", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00756", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00757", + "gapId": "operator:graph.time_offset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00757-operator-graph.time_offset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00757.py -- tests/files/web/generated/M16-GAP-00757-operator-graph.time_offset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00757", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00757", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00758", + "gapId": "operator:graph.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00758-operator-graph.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00758.py -- tests/files/web/generated/M16-GAP-00758-operator-graph.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00758", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00758", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00759", + "gapId": "operator:graph.view_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00759-operator-graph.view_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00759.py -- tests/files/web/generated/M16-GAP-00759-operator-graph.view_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00759", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00759", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00760", + "gapId": "operator:graph.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00760-operator-graph.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00760.py -- tests/files/web/generated/M16-GAP-00760-operator-graph.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00760", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00760", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00761", + "gapId": "operator:grease_pencil.active_frame_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00761-operator-grease_pencil.active_frame_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00761.py -- tests/files/web/generated/M16-GAP-00761-operator-grease_pencil.active_frame_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00761", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00761", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00762", + "gapId": "operator:grease_pencil.bake_grease_pencil_animation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00762-operator-grease_pencil.bake_grease_pencil_animation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00762.py -- tests/files/web/generated/M16-GAP-00762-operator-grease_pencil.bake_grease_pencil_animation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00762", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00762", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00763", + "gapId": "operator:grease_pencil.brush_stroke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00763-operator-grease_pencil.brush_stroke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00763.py -- tests/files/web/generated/M16-GAP-00763-operator-grease_pencil.brush_stroke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00763", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00763", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00764", + "gapId": "operator:grease_pencil.caps_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00764-operator-grease_pencil.caps_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00764.py -- tests/files/web/generated/M16-GAP-00764-operator-grease_pencil.caps_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00764", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00764", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00765", + "gapId": "operator:grease_pencil.clean_loose", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00765-operator-grease_pencil.clean_loose.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00765.py -- tests/files/web/generated/M16-GAP-00765-operator-grease_pencil.clean_loose.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00765", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00765", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00766", + "gapId": "operator:grease_pencil.convert_curve_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00766-operator-grease_pencil.convert_curve_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00766.py -- tests/files/web/generated/M16-GAP-00766-operator-grease_pencil.convert_curve_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00766", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00766", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00767", + "gapId": "operator:grease_pencil.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00767-operator-grease_pencil.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00767.py -- tests/files/web/generated/M16-GAP-00767-operator-grease_pencil.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00767", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00767", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00768", + "gapId": "operator:grease_pencil.cyclical_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00768-operator-grease_pencil.cyclical_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00768.py -- tests/files/web/generated/M16-GAP-00768-operator-grease_pencil.cyclical_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00768", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00768", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00769", + "gapId": "operator:grease_pencil.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00769-operator-grease_pencil.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00769.py -- tests/files/web/generated/M16-GAP-00769-operator-grease_pencil.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00769", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00769", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00770", + "gapId": "operator:grease_pencil.delete_breakdown", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00770-operator-grease_pencil.delete_breakdown.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00770.py -- tests/files/web/generated/M16-GAP-00770-operator-grease_pencil.delete_breakdown.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00770", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00770", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00771", + "gapId": "operator:grease_pencil.delete_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00771-operator-grease_pencil.delete_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00771.py -- tests/files/web/generated/M16-GAP-00771-operator-grease_pencil.delete_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00771", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00771", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00772", + "gapId": "operator:grease_pencil.dissolve", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00772-operator-grease_pencil.dissolve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00772.py -- tests/files/web/generated/M16-GAP-00772-operator-grease_pencil.dissolve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00772", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00772", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00773", + "gapId": "operator:grease_pencil.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00773-operator-grease_pencil.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00773.py -- tests/files/web/generated/M16-GAP-00773-operator-grease_pencil.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00773", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00773", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00774", + "gapId": "operator:grease_pencil.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00774-operator-grease_pencil.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00774.py -- tests/files/web/generated/M16-GAP-00774-operator-grease_pencil.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00774", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00774", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00775", + "gapId": "operator:grease_pencil.erase_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00775-operator-grease_pencil.erase_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00775.py -- tests/files/web/generated/M16-GAP-00775-operator-grease_pencil.erase_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00775", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00775", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00776", + "gapId": "operator:grease_pencil.erase_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00776-operator-grease_pencil.erase_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00776.py -- tests/files/web/generated/M16-GAP-00776-operator-grease_pencil.erase_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00776", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00776", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00777", + "gapId": "operator:grease_pencil.extrude", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00777-operator-grease_pencil.extrude.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00777.py -- tests/files/web/generated/M16-GAP-00777-operator-grease_pencil.extrude.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00777", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00777", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00778", + "gapId": "operator:grease_pencil.extrude_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00778-operator-grease_pencil.extrude_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00778.py -- tests/files/web/generated/M16-GAP-00778-operator-grease_pencil.extrude_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00778", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00778", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00779", + "gapId": "operator:grease_pencil.fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00779-operator-grease_pencil.fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00779.py -- tests/files/web/generated/M16-GAP-00779-operator-grease_pencil.fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00779", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00779", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00780", + "gapId": "operator:grease_pencil.frame_clean_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00780-operator-grease_pencil.frame_clean_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00780.py -- tests/files/web/generated/M16-GAP-00780-operator-grease_pencil.frame_clean_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00780", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00780", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00781", + "gapId": "operator:grease_pencil.frame_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00781-operator-grease_pencil.frame_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00781.py -- tests/files/web/generated/M16-GAP-00781-operator-grease_pencil.frame_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00781", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00781", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00782", + "gapId": "operator:grease_pencil.insert_blank_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00782-operator-grease_pencil.insert_blank_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00782.py -- tests/files/web/generated/M16-GAP-00782-operator-grease_pencil.insert_blank_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00782", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00782", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00783", + "gapId": "operator:grease_pencil.interpolate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00783-operator-grease_pencil.interpolate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00783.py -- tests/files/web/generated/M16-GAP-00783-operator-grease_pencil.interpolate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00783", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00783", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00784", + "gapId": "operator:grease_pencil.interpolate_sequence", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00784-operator-grease_pencil.interpolate_sequence.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00784.py -- tests/files/web/generated/M16-GAP-00784-operator-grease_pencil.interpolate_sequence.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00784", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00784", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00785", + "gapId": "operator:grease_pencil.join_fills", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00785-operator-grease_pencil.join_fills.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00785.py -- tests/files/web/generated/M16-GAP-00785-operator-grease_pencil.join_fills.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00785", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00785", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00786", + "gapId": "operator:grease_pencil.join_selection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00786-operator-grease_pencil.join_selection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00786.py -- tests/files/web/generated/M16-GAP-00786-operator-grease_pencil.join_selection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00786", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00786", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00787", + "gapId": "operator:grease_pencil.layer_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00787-operator-grease_pencil.layer_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00787.py -- tests/files/web/generated/M16-GAP-00787-operator-grease_pencil.layer_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00787", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00787", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00788", + "gapId": "operator:grease_pencil.layer_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00788-operator-grease_pencil.layer_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00788.py -- tests/files/web/generated/M16-GAP-00788-operator-grease_pencil.layer_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00788", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00788", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00789", + "gapId": "operator:grease_pencil.layer_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00789-operator-grease_pencil.layer_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00789.py -- tests/files/web/generated/M16-GAP-00789-operator-grease_pencil.layer_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00789", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00789", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00790", + "gapId": "operator:grease_pencil.layer_duplicate_object", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00790-operator-grease_pencil.layer_duplicate_object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00790.py -- tests/files/web/generated/M16-GAP-00790-operator-grease_pencil.layer_duplicate_object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00790", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00790", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00791", + "gapId": "operator:grease_pencil.layer_group_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00791-operator-grease_pencil.layer_group_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00791.py -- tests/files/web/generated/M16-GAP-00791-operator-grease_pencil.layer_group_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00791", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00791", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00792", + "gapId": "operator:grease_pencil.layer_group_color_tag", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00792-operator-grease_pencil.layer_group_color_tag.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00792.py -- tests/files/web/generated/M16-GAP-00792-operator-grease_pencil.layer_group_color_tag.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00792", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00792", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00793", + "gapId": "operator:grease_pencil.layer_group_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00793-operator-grease_pencil.layer_group_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00793.py -- tests/files/web/generated/M16-GAP-00793-operator-grease_pencil.layer_group_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00793", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00793", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00794", + "gapId": "operator:grease_pencil.layer_hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00794-operator-grease_pencil.layer_hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00794.py -- tests/files/web/generated/M16-GAP-00794-operator-grease_pencil.layer_hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00794", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00794", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00795", + "gapId": "operator:grease_pencil.layer_isolate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00795-operator-grease_pencil.layer_isolate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00795.py -- tests/files/web/generated/M16-GAP-00795-operator-grease_pencil.layer_isolate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00795", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00795", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00796", + "gapId": "operator:grease_pencil.layer_lock_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00796-operator-grease_pencil.layer_lock_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00796.py -- tests/files/web/generated/M16-GAP-00796-operator-grease_pencil.layer_lock_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00796", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00796", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00797", + "gapId": "operator:grease_pencil.layer_mask_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00797-operator-grease_pencil.layer_mask_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00797.py -- tests/files/web/generated/M16-GAP-00797-operator-grease_pencil.layer_mask_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00797", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00797", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00798", + "gapId": "operator:grease_pencil.layer_mask_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00798-operator-grease_pencil.layer_mask_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00798.py -- tests/files/web/generated/M16-GAP-00798-operator-grease_pencil.layer_mask_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00798", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00798", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00799", + "gapId": "operator:grease_pencil.layer_mask_reorder", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00799-operator-grease_pencil.layer_mask_reorder.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00799.py -- tests/files/web/generated/M16-GAP-00799-operator-grease_pencil.layer_mask_reorder.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00799", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00799", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00800", + "gapId": "operator:grease_pencil.layer_merge", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00800-operator-grease_pencil.layer_merge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00800.py -- tests/files/web/generated/M16-GAP-00800-operator-grease_pencil.layer_merge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00800", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00800", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00801", + "gapId": "operator:grease_pencil.layer_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00801-operator-grease_pencil.layer_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00801.py -- tests/files/web/generated/M16-GAP-00801-operator-grease_pencil.layer_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00801", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00801", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00802", + "gapId": "operator:grease_pencil.layer_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00802-operator-grease_pencil.layer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00802.py -- tests/files/web/generated/M16-GAP-00802-operator-grease_pencil.layer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00802", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00802", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00803", + "gapId": "operator:grease_pencil.layer_reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00803-operator-grease_pencil.layer_reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00803.py -- tests/files/web/generated/M16-GAP-00803-operator-grease_pencil.layer_reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00803", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00803", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00804", + "gapId": "operator:grease_pencil.material_copy_to_object", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00804-operator-grease_pencil.material_copy_to_object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00804.py -- tests/files/web/generated/M16-GAP-00804-operator-grease_pencil.material_copy_to_object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00804", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00804", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00805", + "gapId": "operator:grease_pencil.material_hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00805-operator-grease_pencil.material_hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00805.py -- tests/files/web/generated/M16-GAP-00805-operator-grease_pencil.material_hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00805", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00805", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00806", + "gapId": "operator:grease_pencil.material_isolate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00806-operator-grease_pencil.material_isolate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00806.py -- tests/files/web/generated/M16-GAP-00806-operator-grease_pencil.material_isolate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00806", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00806", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00807", + "gapId": "operator:grease_pencil.material_lock_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00807-operator-grease_pencil.material_lock_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00807.py -- tests/files/web/generated/M16-GAP-00807-operator-grease_pencil.material_lock_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00807", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00807", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00808", + "gapId": "operator:grease_pencil.material_lock_unselected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00808-operator-grease_pencil.material_lock_unselected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00808.py -- tests/files/web/generated/M16-GAP-00808-operator-grease_pencil.material_lock_unselected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00808", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00808", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00809", + "gapId": "operator:grease_pencil.material_lock_unused", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00809-operator-grease_pencil.material_lock_unused.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00809.py -- tests/files/web/generated/M16-GAP-00809-operator-grease_pencil.material_lock_unused.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00809", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00809", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00810", + "gapId": "operator:grease_pencil.material_reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00810-operator-grease_pencil.material_reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00810.py -- tests/files/web/generated/M16-GAP-00810-operator-grease_pencil.material_reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00810", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00810", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00811", + "gapId": "operator:grease_pencil.material_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00811-operator-grease_pencil.material_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00811.py -- tests/files/web/generated/M16-GAP-00811-operator-grease_pencil.material_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00811", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00811", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00812", + "gapId": "operator:grease_pencil.material_unlock_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00812-operator-grease_pencil.material_unlock_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00812.py -- tests/files/web/generated/M16-GAP-00812-operator-grease_pencil.material_unlock_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00812", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00812", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00813", + "gapId": "operator:grease_pencil.move_to_layer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00813-operator-grease_pencil.move_to_layer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00813.py -- tests/files/web/generated/M16-GAP-00813-operator-grease_pencil.move_to_layer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00813", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00813", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00814", + "gapId": "operator:grease_pencil.outline", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00814-operator-grease_pencil.outline.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00814.py -- tests/files/web/generated/M16-GAP-00814-operator-grease_pencil.outline.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00814", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00814", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00815", + "gapId": "operator:grease_pencil.paintmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00815-operator-grease_pencil.paintmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00815.py -- tests/files/web/generated/M16-GAP-00815-operator-grease_pencil.paintmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00815", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00815", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00816", + "gapId": "operator:grease_pencil.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00816-operator-grease_pencil.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00816.py -- tests/files/web/generated/M16-GAP-00816-operator-grease_pencil.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00816", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00816", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00817", + "gapId": "operator:grease_pencil.pen", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00817-operator-grease_pencil.pen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00817.py -- tests/files/web/generated/M16-GAP-00817-operator-grease_pencil.pen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00817", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00817", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00818", + "gapId": "operator:grease_pencil.primitive_arc", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00818-operator-grease_pencil.primitive_arc.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00818.py -- tests/files/web/generated/M16-GAP-00818-operator-grease_pencil.primitive_arc.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00818", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00818", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00819", + "gapId": "operator:grease_pencil.primitive_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00819-operator-grease_pencil.primitive_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00819.py -- tests/files/web/generated/M16-GAP-00819-operator-grease_pencil.primitive_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00819", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00819", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00820", + "gapId": "operator:grease_pencil.primitive_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00820-operator-grease_pencil.primitive_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00820.py -- tests/files/web/generated/M16-GAP-00820-operator-grease_pencil.primitive_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00820", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00820", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00821", + "gapId": "operator:grease_pencil.primitive_curve", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00821-operator-grease_pencil.primitive_curve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00821.py -- tests/files/web/generated/M16-GAP-00821-operator-grease_pencil.primitive_curve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00821", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00821", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00822", + "gapId": "operator:grease_pencil.primitive_line", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00822-operator-grease_pencil.primitive_line.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00822.py -- tests/files/web/generated/M16-GAP-00822-operator-grease_pencil.primitive_line.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00822", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00822", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00823", + "gapId": "operator:grease_pencil.primitive_polyline", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00823-operator-grease_pencil.primitive_polyline.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00823.py -- tests/files/web/generated/M16-GAP-00823-operator-grease_pencil.primitive_polyline.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00823", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00823", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00824", + "gapId": "operator:grease_pencil.relative_layer_mask_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00824-operator-grease_pencil.relative_layer_mask_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00824.py -- tests/files/web/generated/M16-GAP-00824-operator-grease_pencil.relative_layer_mask_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00824", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00824", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00825", + "gapId": "operator:grease_pencil.remove_fill_guides", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00825-operator-grease_pencil.remove_fill_guides.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00825.py -- tests/files/web/generated/M16-GAP-00825-operator-grease_pencil.remove_fill_guides.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00825", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00825", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00826", + "gapId": "operator:grease_pencil.reorder", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00826-operator-grease_pencil.reorder.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00826.py -- tests/files/web/generated/M16-GAP-00826-operator-grease_pencil.reorder.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00826", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00826", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00827", + "gapId": "operator:grease_pencil.reproject", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00827-operator-grease_pencil.reproject.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00827.py -- tests/files/web/generated/M16-GAP-00827-operator-grease_pencil.reproject.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00827", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00827", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00828", + "gapId": "operator:grease_pencil.reset_uvs", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00828-operator-grease_pencil.reset_uvs.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00828.py -- tests/files/web/generated/M16-GAP-00828-operator-grease_pencil.reset_uvs.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00828", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00828", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00829", + "gapId": "operator:grease_pencil.sculpt_paint", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00829-operator-grease_pencil.sculpt_paint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00829.py -- tests/files/web/generated/M16-GAP-00829-operator-grease_pencil.sculpt_paint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00829", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00829", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00830", + "gapId": "operator:grease_pencil.sculptmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00830-operator-grease_pencil.sculptmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00830.py -- tests/files/web/generated/M16-GAP-00830-operator-grease_pencil.sculptmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00830", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00830", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00831", + "gapId": "operator:grease_pencil.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00831-operator-grease_pencil.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00831.py -- tests/files/web/generated/M16-GAP-00831-operator-grease_pencil.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00831", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00831", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00832", + "gapId": "operator:grease_pencil.select_alternate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00832-operator-grease_pencil.select_alternate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00832.py -- tests/files/web/generated/M16-GAP-00832-operator-grease_pencil.select_alternate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00832", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00832", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00833", + "gapId": "operator:grease_pencil.select_by_stroke_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00833-operator-grease_pencil.select_by_stroke_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00833.py -- tests/files/web/generated/M16-GAP-00833-operator-grease_pencil.select_by_stroke_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00833", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00833", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00834", + "gapId": "operator:grease_pencil.select_ends", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00834-operator-grease_pencil.select_ends.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00834.py -- tests/files/web/generated/M16-GAP-00834-operator-grease_pencil.select_ends.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00834", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00834", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00835", + "gapId": "operator:grease_pencil.select_fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00835-operator-grease_pencil.select_fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00835.py -- tests/files/web/generated/M16-GAP-00835-operator-grease_pencil.select_fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00835", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00835", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00836", + "gapId": "operator:grease_pencil.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00836-operator-grease_pencil.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00836.py -- tests/files/web/generated/M16-GAP-00836-operator-grease_pencil.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00836", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00836", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00837", + "gapId": "operator:grease_pencil.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00837-operator-grease_pencil.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00837.py -- tests/files/web/generated/M16-GAP-00837-operator-grease_pencil.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00837", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00837", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00838", + "gapId": "operator:grease_pencil.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00838-operator-grease_pencil.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00838.py -- tests/files/web/generated/M16-GAP-00838-operator-grease_pencil.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00838", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00838", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00839", + "gapId": "operator:grease_pencil.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00839-operator-grease_pencil.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00839.py -- tests/files/web/generated/M16-GAP-00839-operator-grease_pencil.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00839", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00839", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00840", + "gapId": "operator:grease_pencil.select_similar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00840-operator-grease_pencil.select_similar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00840.py -- tests/files/web/generated/M16-GAP-00840-operator-grease_pencil.select_similar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00840", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00840", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00841", + "gapId": "operator:grease_pencil.separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00841-operator-grease_pencil.separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00841.py -- tests/files/web/generated/M16-GAP-00841-operator-grease_pencil.separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00841", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00841", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00842", + "gapId": "operator:grease_pencil.separate_fills", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00842-operator-grease_pencil.separate_fills.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00842.py -- tests/files/web/generated/M16-GAP-00842-operator-grease_pencil.separate_fills.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00842", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00842", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00843", + "gapId": "operator:grease_pencil.set_active_material", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00843-operator-grease_pencil.set_active_material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00843.py -- tests/files/web/generated/M16-GAP-00843-operator-grease_pencil.set_active_material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00843", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00843", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00844", + "gapId": "operator:grease_pencil.set_corner_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00844-operator-grease_pencil.set_corner_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00844.py -- tests/files/web/generated/M16-GAP-00844-operator-grease_pencil.set_corner_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00844", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00844", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00845", + "gapId": "operator:grease_pencil.set_curve_resolution", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00845-operator-grease_pencil.set_curve_resolution.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00845.py -- tests/files/web/generated/M16-GAP-00845-operator-grease_pencil.set_curve_resolution.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00845", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00845", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00846", + "gapId": "operator:grease_pencil.set_curve_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00846-operator-grease_pencil.set_curve_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00846.py -- tests/files/web/generated/M16-GAP-00846-operator-grease_pencil.set_curve_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00846", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00846", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00847", + "gapId": "operator:grease_pencil.set_handle_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00847-operator-grease_pencil.set_handle_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00847.py -- tests/files/web/generated/M16-GAP-00847-operator-grease_pencil.set_handle_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00847", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00847", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00848", + "gapId": "operator:grease_pencil.set_material", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00848-operator-grease_pencil.set_material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00848.py -- tests/files/web/generated/M16-GAP-00848-operator-grease_pencil.set_material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00848", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00848", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00849", + "gapId": "operator:grease_pencil.set_selection_mode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00849-operator-grease_pencil.set_selection_mode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00849.py -- tests/files/web/generated/M16-GAP-00849-operator-grease_pencil.set_selection_mode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00849", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00849", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00850", + "gapId": "operator:grease_pencil.set_start_point", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00850-operator-grease_pencil.set_start_point.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00850.py -- tests/files/web/generated/M16-GAP-00850-operator-grease_pencil.set_start_point.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00850", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00850", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00851", + "gapId": "operator:grease_pencil.set_stroke_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00851-operator-grease_pencil.set_stroke_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00851.py -- tests/files/web/generated/M16-GAP-00851-operator-grease_pencil.set_stroke_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00851", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00851", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00852", + "gapId": "operator:grease_pencil.set_uniform_opacity", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00852-operator-grease_pencil.set_uniform_opacity.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00852.py -- tests/files/web/generated/M16-GAP-00852-operator-grease_pencil.set_uniform_opacity.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00852", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00852", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00853", + "gapId": "operator:grease_pencil.set_uniform_thickness", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00853-operator-grease_pencil.set_uniform_thickness.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00853.py -- tests/files/web/generated/M16-GAP-00853-operator-grease_pencil.set_uniform_thickness.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00853", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00853", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00854", + "gapId": "operator:grease_pencil.snap_cursor_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00854-operator-grease_pencil.snap_cursor_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00854.py -- tests/files/web/generated/M16-GAP-00854-operator-grease_pencil.snap_cursor_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00854", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00854", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00855", + "gapId": "operator:grease_pencil.snap_to_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00855-operator-grease_pencil.snap_to_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00855.py -- tests/files/web/generated/M16-GAP-00855-operator-grease_pencil.snap_to_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00855", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00855", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00856", + "gapId": "operator:grease_pencil.snap_to_grid", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00856-operator-grease_pencil.snap_to_grid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00856.py -- tests/files/web/generated/M16-GAP-00856-operator-grease_pencil.snap_to_grid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00856", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00856", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00857", + "gapId": "operator:grease_pencil.stroke_material_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00857-operator-grease_pencil.stroke_material_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00857.py -- tests/files/web/generated/M16-GAP-00857-operator-grease_pencil.stroke_material_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00857", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00857", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00858", + "gapId": "operator:grease_pencil.stroke_merge_by_distance", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00858-operator-grease_pencil.stroke_merge_by_distance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00858.py -- tests/files/web/generated/M16-GAP-00858-operator-grease_pencil.stroke_merge_by_distance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00858", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00858", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00859", + "gapId": "operator:grease_pencil.stroke_reset_vertex_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00859-operator-grease_pencil.stroke_reset_vertex_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00859.py -- tests/files/web/generated/M16-GAP-00859-operator-grease_pencil.stroke_reset_vertex_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00859", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00859", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00860", + "gapId": "operator:grease_pencil.stroke_simplify", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00860-operator-grease_pencil.stroke_simplify.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00860.py -- tests/files/web/generated/M16-GAP-00860-operator-grease_pencil.stroke_simplify.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00860", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00860", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00861", + "gapId": "operator:grease_pencil.stroke_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00861-operator-grease_pencil.stroke_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00861.py -- tests/files/web/generated/M16-GAP-00861-operator-grease_pencil.stroke_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00861", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00861", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00862", + "gapId": "operator:grease_pencil.stroke_split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00862-operator-grease_pencil.stroke_split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00862.py -- tests/files/web/generated/M16-GAP-00862-operator-grease_pencil.stroke_split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00862", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00862", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00863", + "gapId": "operator:grease_pencil.stroke_subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00863-operator-grease_pencil.stroke_subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00863.py -- tests/files/web/generated/M16-GAP-00863-operator-grease_pencil.stroke_subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00863", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00863", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00864", + "gapId": "operator:grease_pencil.stroke_subdivide_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00864-operator-grease_pencil.stroke_subdivide_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00864.py -- tests/files/web/generated/M16-GAP-00864-operator-grease_pencil.stroke_subdivide_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00864", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00864", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00865", + "gapId": "operator:grease_pencil.stroke_switch_direction", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00865-operator-grease_pencil.stroke_switch_direction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00865.py -- tests/files/web/generated/M16-GAP-00865-operator-grease_pencil.stroke_switch_direction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00865", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00865", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00866", + "gapId": "operator:grease_pencil.stroke_trim", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00866-operator-grease_pencil.stroke_trim.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00866.py -- tests/files/web/generated/M16-GAP-00866-operator-grease_pencil.stroke_trim.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00866", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00866", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00867", + "gapId": "operator:grease_pencil.texture_gradient", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00867-operator-grease_pencil.texture_gradient.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00867.py -- tests/files/web/generated/M16-GAP-00867-operator-grease_pencil.texture_gradient.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00867", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00867", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00868", + "gapId": "operator:grease_pencil.trace_image", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00868-operator-grease_pencil.trace_image.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00868.py -- tests/files/web/generated/M16-GAP-00868-operator-grease_pencil.trace_image.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00868", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00868", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00869", + "gapId": "operator:grease_pencil.vertex_brush_stroke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00869-operator-grease_pencil.vertex_brush_stroke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00869.py -- tests/files/web/generated/M16-GAP-00869-operator-grease_pencil.vertex_brush_stroke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00869", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00869", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00870", + "gapId": "operator:grease_pencil.vertex_color_brightness_contrast", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00870-operator-grease_pencil.vertex_color_brightness_contrast.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00870.py -- tests/files/web/generated/M16-GAP-00870-operator-grease_pencil.vertex_color_brightness_contrast.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00870", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00870", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00871", + "gapId": "operator:grease_pencil.vertex_color_hsv", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00871-operator-grease_pencil.vertex_color_hsv.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00871.py -- tests/files/web/generated/M16-GAP-00871-operator-grease_pencil.vertex_color_hsv.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00871", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00871", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00872", + "gapId": "operator:grease_pencil.vertex_color_invert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00872-operator-grease_pencil.vertex_color_invert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00872.py -- tests/files/web/generated/M16-GAP-00872-operator-grease_pencil.vertex_color_invert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00872", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00872", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00873", + "gapId": "operator:grease_pencil.vertex_color_levels", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00873-operator-grease_pencil.vertex_color_levels.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00873.py -- tests/files/web/generated/M16-GAP-00873-operator-grease_pencil.vertex_color_levels.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00873", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00873", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00874", + "gapId": "operator:grease_pencil.vertex_color_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00874-operator-grease_pencil.vertex_color_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00874.py -- tests/files/web/generated/M16-GAP-00874-operator-grease_pencil.vertex_color_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00874", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00874", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00875", + "gapId": "operator:grease_pencil.vertex_group_normalize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00875-operator-grease_pencil.vertex_group_normalize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00875.py -- tests/files/web/generated/M16-GAP-00875-operator-grease_pencil.vertex_group_normalize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00875", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00875", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00876", + "gapId": "operator:grease_pencil.vertex_group_normalize_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00876-operator-grease_pencil.vertex_group_normalize_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00876.py -- tests/files/web/generated/M16-GAP-00876-operator-grease_pencil.vertex_group_normalize_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00876", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00876", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00877", + "gapId": "operator:grease_pencil.vertex_group_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00877-operator-grease_pencil.vertex_group_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00877.py -- tests/files/web/generated/M16-GAP-00877-operator-grease_pencil.vertex_group_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00877", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00877", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00878", + "gapId": "operator:grease_pencil.vertexmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00878-operator-grease_pencil.vertexmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00878.py -- tests/files/web/generated/M16-GAP-00878-operator-grease_pencil.vertexmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00878", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00878", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00879", + "gapId": "operator:grease_pencil.weight_brush_stroke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00879-operator-grease_pencil.weight_brush_stroke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00879.py -- tests/files/web/generated/M16-GAP-00879-operator-grease_pencil.weight_brush_stroke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00879", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00879", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00880", + "gapId": "operator:grease_pencil.weight_invert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00880-operator-grease_pencil.weight_invert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00880.py -- tests/files/web/generated/M16-GAP-00880-operator-grease_pencil.weight_invert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00880", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00880", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00881", + "gapId": "operator:grease_pencil.weight_sample", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00881-operator-grease_pencil.weight_sample.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00881.py -- tests/files/web/generated/M16-GAP-00881-operator-grease_pencil.weight_sample.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00881", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00881", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00882", + "gapId": "operator:grease_pencil.weight_toggle_direction", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00882-operator-grease_pencil.weight_toggle_direction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00882.py -- tests/files/web/generated/M16-GAP-00882-operator-grease_pencil.weight_toggle_direction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00882", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00882", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00883", + "gapId": "operator:grease_pencil.weightmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00883-operator-grease_pencil.weightmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00883.py -- tests/files/web/generated/M16-GAP-00883-operator-grease_pencil.weightmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00883", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00883", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00884", + "gapId": "operator:image.add_render_slot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00884-operator-image.add_render_slot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00884.py -- tests/files/web/generated/M16-GAP-00884-operator-image.add_render_slot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00884", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00884", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00885", + "gapId": "operator:image.change_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00885-operator-image.change_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00885.py -- tests/files/web/generated/M16-GAP-00885-operator-image.change_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00885", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00885", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00886", + "gapId": "operator:image.clear_render_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00886-operator-image.clear_render_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00886.py -- tests/files/web/generated/M16-GAP-00886-operator-image.clear_render_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00886", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00886", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00887", + "gapId": "operator:image.clear_render_slot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00887-operator-image.clear_render_slot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00887.py -- tests/files/web/generated/M16-GAP-00887-operator-image.clear_render_slot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00887", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00887", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00888", + "gapId": "operator:image.clipboard_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00888-operator-image.clipboard_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00888.py -- tests/files/web/generated/M16-GAP-00888-operator-image.clipboard_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00888", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00888", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00889", + "gapId": "operator:image.clipboard_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00889-operator-image.clipboard_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00889.py -- tests/files/web/generated/M16-GAP-00889-operator-image.clipboard_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00889", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00889", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00890", + "gapId": "operator:image.convert_to_mesh_plane", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00890-operator-image.convert_to_mesh_plane.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00890.py -- tests/files/web/generated/M16-GAP-00890-operator-image.convert_to_mesh_plane.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00890", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00890", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00891", + "gapId": "operator:image.curves_point_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00891-operator-image.curves_point_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00891.py -- tests/files/web/generated/M16-GAP-00891-operator-image.curves_point_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00891", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00891", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00892", + "gapId": "operator:image.cycle_render_slot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00892-operator-image.cycle_render_slot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00892.py -- tests/files/web/generated/M16-GAP-00892-operator-image.cycle_render_slot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00892", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00892", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00893", + "gapId": "operator:image.external_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00893-operator-image.external_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00893.py -- tests/files/web/generated/M16-GAP-00893-operator-image.external_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00893", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00893", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00894", + "gapId": "operator:image.file_browse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00894-operator-image.file_browse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00894.py -- tests/files/web/generated/M16-GAP-00894-operator-image.file_browse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00894", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00894", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00895", + "gapId": "operator:image.flip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00895-operator-image.flip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00895.py -- tests/files/web/generated/M16-GAP-00895-operator-image.flip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00895", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00895", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00896", + "gapId": "operator:image.import_as_mesh_planes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00896-operator-image.import_as_mesh_planes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00896.py -- tests/files/web/generated/M16-GAP-00896-operator-image.import_as_mesh_planes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00896", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00896", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00897", + "gapId": "operator:image.invert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00897-operator-image.invert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00897.py -- tests/files/web/generated/M16-GAP-00897-operator-image.invert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00897", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00897", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00898", + "gapId": "operator:image.match_movie_length", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00898-operator-image.match_movie_length.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00898.py -- tests/files/web/generated/M16-GAP-00898-operator-image.match_movie_length.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00898", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00898", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00899", + "gapId": "operator:image.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00899-operator-image.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00899.py -- tests/files/web/generated/M16-GAP-00899-operator-image.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00899", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00899", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00900", + "gapId": "operator:image.open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00900-operator-image.open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00900.py -- tests/files/web/generated/M16-GAP-00900-operator-image.open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00900", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00900", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00901", + "gapId": "operator:image.open_images", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00901-operator-image.open_images.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00901.py -- tests/files/web/generated/M16-GAP-00901-operator-image.open_images.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00901", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00901", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00902", + "gapId": "operator:image.pack", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00902-operator-image.pack.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00902.py -- tests/files/web/generated/M16-GAP-00902-operator-image.pack.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00902", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00902", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00903", + "gapId": "operator:image.project_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00903-operator-image.project_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00903.py -- tests/files/web/generated/M16-GAP-00903-operator-image.project_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00903", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00903", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00904", + "gapId": "operator:image.project_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00904-operator-image.project_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00904.py -- tests/files/web/generated/M16-GAP-00904-operator-image.project_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00904", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00904", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00905", + "gapId": "operator:image.read_viewlayers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00905-operator-image.read_viewlayers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00905.py -- tests/files/web/generated/M16-GAP-00905-operator-image.read_viewlayers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00905", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00905", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00906", + "gapId": "operator:image.reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00906-operator-image.reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00906.py -- tests/files/web/generated/M16-GAP-00906-operator-image.reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00906", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00906", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00907", + "gapId": "operator:image.remove_render_slot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00907-operator-image.remove_render_slot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00907.py -- tests/files/web/generated/M16-GAP-00907-operator-image.remove_render_slot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00907", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00907", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00908", + "gapId": "operator:image.render_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00908-operator-image.render_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00908.py -- tests/files/web/generated/M16-GAP-00908-operator-image.render_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00908", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00908", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00909", + "gapId": "operator:image.replace", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00909-operator-image.replace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00909.py -- tests/files/web/generated/M16-GAP-00909-operator-image.replace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00909", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00909", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00910", + "gapId": "operator:image.resize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00910-operator-image.resize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00910.py -- tests/files/web/generated/M16-GAP-00910-operator-image.resize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00910", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00910", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00911", + "gapId": "operator:image.rotate_orthogonal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00911-operator-image.rotate_orthogonal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00911.py -- tests/files/web/generated/M16-GAP-00911-operator-image.rotate_orthogonal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00911", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00911", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00912", + "gapId": "operator:image.sample", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00912-operator-image.sample.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00912.py -- tests/files/web/generated/M16-GAP-00912-operator-image.sample.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00912", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00912", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00913", + "gapId": "operator:image.sample_line", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00913-operator-image.sample_line.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00913.py -- tests/files/web/generated/M16-GAP-00913-operator-image.sample_line.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00913", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00913", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00914", + "gapId": "operator:image.save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00914-operator-image.save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00914.py -- tests/files/web/generated/M16-GAP-00914-operator-image.save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00914", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00914", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00915", + "gapId": "operator:image.save_all_modified", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00915-operator-image.save_all_modified.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00915.py -- tests/files/web/generated/M16-GAP-00915-operator-image.save_all_modified.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00915", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00915", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00916", + "gapId": "operator:image.save_as", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00916-operator-image.save_as.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00916.py -- tests/files/web/generated/M16-GAP-00916-operator-image.save_as.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00916", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00916", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00917", + "gapId": "operator:image.save_sequence", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00917-operator-image.save_sequence.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00917.py -- tests/files/web/generated/M16-GAP-00917-operator-image.save_sequence.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00917", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00917", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00918", + "gapId": "operator:image.tile_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00918-operator-image.tile_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00918.py -- tests/files/web/generated/M16-GAP-00918-operator-image.tile_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00918", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00918", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00919", + "gapId": "operator:image.tile_fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00919-operator-image.tile_fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00919.py -- tests/files/web/generated/M16-GAP-00919-operator-image.tile_fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00919", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00919", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00920", + "gapId": "operator:image.tile_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00920-operator-image.tile_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00920.py -- tests/files/web/generated/M16-GAP-00920-operator-image.tile_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00920", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00920", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00921", + "gapId": "operator:image.unpack", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00921-operator-image.unpack.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00921.py -- tests/files/web/generated/M16-GAP-00921-operator-image.unpack.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00921", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00921", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00922", + "gapId": "operator:image.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00922-operator-image.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00922.py -- tests/files/web/generated/M16-GAP-00922-operator-image.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00922", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00922", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00923", + "gapId": "operator:image.view_center_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00923-operator-image.view_center_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00923.py -- tests/files/web/generated/M16-GAP-00923-operator-image.view_center_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00923", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00923", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00924", + "gapId": "operator:image.view_cursor_center", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00924-operator-image.view_cursor_center.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00924.py -- tests/files/web/generated/M16-GAP-00924-operator-image.view_cursor_center.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00924", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00924", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00925", + "gapId": "operator:image.view_ndof", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00925-operator-image.view_ndof.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00925.py -- tests/files/web/generated/M16-GAP-00925-operator-image.view_ndof.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00925", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00925", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00926", + "gapId": "operator:image.view_pan", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00926-operator-image.view_pan.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00926.py -- tests/files/web/generated/M16-GAP-00926-operator-image.view_pan.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00926", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00926", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00927", + "gapId": "operator:image.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00927-operator-image.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00927.py -- tests/files/web/generated/M16-GAP-00927-operator-image.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00927", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00927", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00928", + "gapId": "operator:image.view_zoom", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00928-operator-image.view_zoom.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00928.py -- tests/files/web/generated/M16-GAP-00928-operator-image.view_zoom.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00928", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00928", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00929", + "gapId": "operator:image.view_zoom_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00929-operator-image.view_zoom_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00929.py -- tests/files/web/generated/M16-GAP-00929-operator-image.view_zoom_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00929", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00929", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00930", + "gapId": "operator:image.view_zoom_in", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00930-operator-image.view_zoom_in.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00930.py -- tests/files/web/generated/M16-GAP-00930-operator-image.view_zoom_in.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00930", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00930", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00931", + "gapId": "operator:image.view_zoom_out", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00931-operator-image.view_zoom_out.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00931.py -- tests/files/web/generated/M16-GAP-00931-operator-image.view_zoom_out.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00931", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00931", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00932", + "gapId": "operator:image.view_zoom_ratio", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00932-operator-image.view_zoom_ratio.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00932.py -- tests/files/web/generated/M16-GAP-00932-operator-image.view_zoom_ratio.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00932", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00932", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00933", + "gapId": "operator:import_anim.bvh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00933-operator-import_anim.bvh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00933.py -- tests/files/web/generated/M16-GAP-00933-operator-import_anim.bvh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00933", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00933", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00934", + "gapId": "operator:import_curve.svg", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00934-operator-import_curve.svg.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00934.py -- tests/files/web/generated/M16-GAP-00934-operator-import_curve.svg.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00934", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00934", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00935", + "gapId": "operator:import_scene.fbx", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00935-operator-import_scene.fbx.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00935.py -- tests/files/web/generated/M16-GAP-00935-operator-import_scene.fbx.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00935", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00935", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00936", + "gapId": "operator:import_scene.gltf", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00936-operator-import_scene.gltf.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00936.py -- tests/files/web/generated/M16-GAP-00936-operator-import_scene.gltf.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00936", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00936", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00937", + "gapId": "operator:info.report_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00937-operator-info.report_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00937.py -- tests/files/web/generated/M16-GAP-00937-operator-info.report_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00937", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00937", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00938", + "gapId": "operator:info.report_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00938-operator-info.report_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00938.py -- tests/files/web/generated/M16-GAP-00938-operator-info.report_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00938", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00938", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00939", + "gapId": "operator:info.report_replay", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00939-operator-info.report_replay.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00939.py -- tests/files/web/generated/M16-GAP-00939-operator-info.report_replay.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00939", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00939", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00940", + "gapId": "operator:info.reports_display_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00940-operator-info.reports_display_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00940.py -- tests/files/web/generated/M16-GAP-00940-operator-info.reports_display_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00940", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00940", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00941", + "gapId": "operator:info.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00941-operator-info.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00941.py -- tests/files/web/generated/M16-GAP-00941-operator-info.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00941", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00941", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00942", + "gapId": "operator:info.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00942-operator-info.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00942.py -- tests/files/web/generated/M16-GAP-00942-operator-info.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00942", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00942", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00943", + "gapId": "operator:info.select_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00943-operator-info.select_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00943.py -- tests/files/web/generated/M16-GAP-00943-operator-info.select_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00943", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00943", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00944", + "gapId": "operator:lattice.flip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00944-operator-lattice.flip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00944.py -- tests/files/web/generated/M16-GAP-00944-operator-lattice.flip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00944", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00944", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00945", + "gapId": "operator:lattice.make_regular", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00945-operator-lattice.make_regular.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00945.py -- tests/files/web/generated/M16-GAP-00945-operator-lattice.make_regular.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00945", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00945", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00946", + "gapId": "operator:lattice.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00946-operator-lattice.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00946.py -- tests/files/web/generated/M16-GAP-00946-operator-lattice.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00946", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00946", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00947", + "gapId": "operator:lattice.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00947-operator-lattice.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00947.py -- tests/files/web/generated/M16-GAP-00947-operator-lattice.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00947", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00947", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00948", + "gapId": "operator:lattice.select_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00948-operator-lattice.select_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00948.py -- tests/files/web/generated/M16-GAP-00948-operator-lattice.select_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00948", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00948", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00949", + "gapId": "operator:lattice.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00949-operator-lattice.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00949.py -- tests/files/web/generated/M16-GAP-00949-operator-lattice.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00949", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00949", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00950", + "gapId": "operator:lattice.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00950-operator-lattice.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00950.py -- tests/files/web/generated/M16-GAP-00950-operator-lattice.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00950", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00950", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00951", + "gapId": "operator:lattice.select_ungrouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00951-operator-lattice.select_ungrouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00951.py -- tests/files/web/generated/M16-GAP-00951-operator-lattice.select_ungrouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00951", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00951", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00952", + "gapId": "operator:marker.add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00952-operator-marker.add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00952.py -- tests/files/web/generated/M16-GAP-00952-operator-marker.add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00952", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00952", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00953", + "gapId": "operator:marker.camera_bind", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00953-operator-marker.camera_bind.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00953.py -- tests/files/web/generated/M16-GAP-00953-operator-marker.camera_bind.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00953", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00953", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00954", + "gapId": "operator:marker.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00954-operator-marker.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00954.py -- tests/files/web/generated/M16-GAP-00954-operator-marker.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00954", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00954", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00955", + "gapId": "operator:marker.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00955-operator-marker.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00955.py -- tests/files/web/generated/M16-GAP-00955-operator-marker.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00955", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00955", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00956", + "gapId": "operator:marker.make_links_scene", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00956-operator-marker.make_links_scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00956.py -- tests/files/web/generated/M16-GAP-00956-operator-marker.make_links_scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00956", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00956", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00957", + "gapId": "operator:marker.move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00957-operator-marker.move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00957.py -- tests/files/web/generated/M16-GAP-00957-operator-marker.move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00957", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00957", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00958", + "gapId": "operator:marker.rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00958-operator-marker.rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00958.py -- tests/files/web/generated/M16-GAP-00958-operator-marker.rename.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00958", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00958", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00959", + "gapId": "operator:marker.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00959-operator-marker.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00959.py -- tests/files/web/generated/M16-GAP-00959-operator-marker.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00959", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00959", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00960", + "gapId": "operator:marker.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00960-operator-marker.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00960.py -- tests/files/web/generated/M16-GAP-00960-operator-marker.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00960", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00960", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00961", + "gapId": "operator:marker.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00961-operator-marker.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00961.py -- tests/files/web/generated/M16-GAP-00961-operator-marker.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00961", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00961", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00962", + "gapId": "operator:marker.select_leftright", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00962-operator-marker.select_leftright.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00962.py -- tests/files/web/generated/M16-GAP-00962-operator-marker.select_leftright.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00962", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00962", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00963", + "gapId": "operator:mask.add_feather_vertex", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00963-operator-mask.add_feather_vertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00963.py -- tests/files/web/generated/M16-GAP-00963-operator-mask.add_feather_vertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00963", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00963", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00964", + "gapId": "operator:mask.add_feather_vertex_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00964-operator-mask.add_feather_vertex_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00964.py -- tests/files/web/generated/M16-GAP-00964-operator-mask.add_feather_vertex_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00964", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00964", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00965", + "gapId": "operator:mask.add_vertex", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00965-operator-mask.add_vertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00965.py -- tests/files/web/generated/M16-GAP-00965-operator-mask.add_vertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00965", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00965", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00966", + "gapId": "operator:mask.add_vertex_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00966-operator-mask.add_vertex_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00966.py -- tests/files/web/generated/M16-GAP-00966-operator-mask.add_vertex_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00966", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00966", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00967", + "gapId": "operator:mask.copy_splines", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00967-operator-mask.copy_splines.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00967.py -- tests/files/web/generated/M16-GAP-00967-operator-mask.copy_splines.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00967", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00967", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00968", + "gapId": "operator:mask.cyclic_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00968-operator-mask.cyclic_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00968.py -- tests/files/web/generated/M16-GAP-00968-operator-mask.cyclic_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00968", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00968", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00969", + "gapId": "operator:mask.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00969-operator-mask.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00969.py -- tests/files/web/generated/M16-GAP-00969-operator-mask.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00969", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00969", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00970", + "gapId": "operator:mask.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00970-operator-mask.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00970.py -- tests/files/web/generated/M16-GAP-00970-operator-mask.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00970", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00970", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00971", + "gapId": "operator:mask.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00971-operator-mask.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00971.py -- tests/files/web/generated/M16-GAP-00971-operator-mask.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00971", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00971", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00972", + "gapId": "operator:mask.feather_weight_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00972-operator-mask.feather_weight_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00972.py -- tests/files/web/generated/M16-GAP-00972-operator-mask.feather_weight_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00972", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00972", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00973", + "gapId": "operator:mask.handle_type_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00973-operator-mask.handle_type_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00973.py -- tests/files/web/generated/M16-GAP-00973-operator-mask.handle_type_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00973", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00973", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00974", + "gapId": "operator:mask.hide_view_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00974-operator-mask.hide_view_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00974.py -- tests/files/web/generated/M16-GAP-00974-operator-mask.hide_view_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00974", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00974", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00975", + "gapId": "operator:mask.hide_view_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00975-operator-mask.hide_view_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00975.py -- tests/files/web/generated/M16-GAP-00975-operator-mask.hide_view_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00975", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00975", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00976", + "gapId": "operator:mask.layer_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00976-operator-mask.layer_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00976.py -- tests/files/web/generated/M16-GAP-00976-operator-mask.layer_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00976", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00976", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00977", + "gapId": "operator:mask.layer_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00977-operator-mask.layer_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00977.py -- tests/files/web/generated/M16-GAP-00977-operator-mask.layer_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00977", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00977", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00978", + "gapId": "operator:mask.layer_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00978-operator-mask.layer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00978.py -- tests/files/web/generated/M16-GAP-00978-operator-mask.layer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00978", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00978", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00979", + "gapId": "operator:mask.move_to_layer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00979-operator-mask.move_to_layer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00979.py -- tests/files/web/generated/M16-GAP-00979-operator-mask.move_to_layer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00979", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00979", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00980", + "gapId": "operator:mask.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00980-operator-mask.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00980.py -- tests/files/web/generated/M16-GAP-00980-operator-mask.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00980", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00980", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00981", + "gapId": "operator:mask.normals_make_consistent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00981-operator-mask.normals_make_consistent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00981.py -- tests/files/web/generated/M16-GAP-00981-operator-mask.normals_make_consistent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00981", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00981", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00982", + "gapId": "operator:mask.parent_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00982-operator-mask.parent_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00982.py -- tests/files/web/generated/M16-GAP-00982-operator-mask.parent_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00982", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00982", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00983", + "gapId": "operator:mask.parent_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00983-operator-mask.parent_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00983.py -- tests/files/web/generated/M16-GAP-00983-operator-mask.parent_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00983", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00983", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00984", + "gapId": "operator:mask.paste_splines", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00984-operator-mask.paste_splines.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00984.py -- tests/files/web/generated/M16-GAP-00984-operator-mask.paste_splines.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00984", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00984", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00985", + "gapId": "operator:mask.primitive_circle_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00985-operator-mask.primitive_circle_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00985.py -- tests/files/web/generated/M16-GAP-00985-operator-mask.primitive_circle_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00985", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00985", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00986", + "gapId": "operator:mask.primitive_square_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00986-operator-mask.primitive_square_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00986.py -- tests/files/web/generated/M16-GAP-00986-operator-mask.primitive_square_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00986", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00986", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00987", + "gapId": "operator:mask.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00987-operator-mask.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00987.py -- tests/files/web/generated/M16-GAP-00987-operator-mask.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00987", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00987", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00988", + "gapId": "operator:mask.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00988-operator-mask.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00988.py -- tests/files/web/generated/M16-GAP-00988-operator-mask.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00988", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00988", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00989", + "gapId": "operator:mask.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00989-operator-mask.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00989.py -- tests/files/web/generated/M16-GAP-00989-operator-mask.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00989", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00989", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00990", + "gapId": "operator:mask.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00990-operator-mask.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00990.py -- tests/files/web/generated/M16-GAP-00990-operator-mask.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00990", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00990", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00991", + "gapId": "operator:mask.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00991-operator-mask.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00991.py -- tests/files/web/generated/M16-GAP-00991-operator-mask.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00991", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00991", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00992", + "gapId": "operator:mask.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00992-operator-mask.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00992.py -- tests/files/web/generated/M16-GAP-00992-operator-mask.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00992", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00992", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00993", + "gapId": "operator:mask.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00993-operator-mask.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00993.py -- tests/files/web/generated/M16-GAP-00993-operator-mask.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00993", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00993", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00994", + "gapId": "operator:mask.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00994-operator-mask.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00994.py -- tests/files/web/generated/M16-GAP-00994-operator-mask.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00994", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00994", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00995", + "gapId": "operator:mask.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00995-operator-mask.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00995.py -- tests/files/web/generated/M16-GAP-00995-operator-mask.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00995", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00995", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00996", + "gapId": "operator:mask.shape_key_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00996-operator-mask.shape_key_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00996.py -- tests/files/web/generated/M16-GAP-00996-operator-mask.shape_key_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00996", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00996", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00997", + "gapId": "operator:mask.shape_key_feather_reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00997-operator-mask.shape_key_feather_reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00997.py -- tests/files/web/generated/M16-GAP-00997-operator-mask.shape_key_feather_reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00997", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00997", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00998", + "gapId": "operator:mask.shape_key_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00998-operator-mask.shape_key_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00998.py -- tests/files/web/generated/M16-GAP-00998-operator-mask.shape_key_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00998", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00998", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-00999", + "gapId": "operator:mask.shape_key_rekey", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00999-operator-mask.shape_key_rekey.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00999.py -- tests/files/web/generated/M16-GAP-00999-operator-mask.shape_key_rekey.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-00999", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-00999", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01000", + "gapId": "operator:mask.slide_point", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01000-operator-mask.slide_point.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01000.py -- tests/files/web/generated/M16-GAP-01000-operator-mask.slide_point.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01000", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01000", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01001", + "gapId": "operator:mask.slide_spline_curvature", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01001-operator-mask.slide_spline_curvature.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01001.py -- tests/files/web/generated/M16-GAP-01001-operator-mask.slide_spline_curvature.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01001", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01002", + "gapId": "operator:mask.switch_direction", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01002-operator-mask.switch_direction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01002.py -- tests/files/web/generated/M16-GAP-01002-operator-mask.switch_direction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01002", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01003", + "gapId": "operator:material.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01003-operator-material.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01003.py -- tests/files/web/generated/M16-GAP-01003-operator-material.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01003", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01004", + "gapId": "operator:material.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01004-operator-material.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01004.py -- tests/files/web/generated/M16-GAP-01004-operator-material.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01004", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01005", + "gapId": "operator:material.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01005-operator-material.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01005.py -- tests/files/web/generated/M16-GAP-01005-operator-material.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01005", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01006", + "gapId": "operator:mball.delete_metaelems", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01006-operator-mball.delete_metaelems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01006.py -- tests/files/web/generated/M16-GAP-01006-operator-mball.delete_metaelems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01006", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01007", + "gapId": "operator:mball.duplicate_metaelems", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01007-operator-mball.duplicate_metaelems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01007.py -- tests/files/web/generated/M16-GAP-01007-operator-mball.duplicate_metaelems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01007", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01008", + "gapId": "operator:mball.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01008-operator-mball.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01008.py -- tests/files/web/generated/M16-GAP-01008-operator-mball.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01008", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01009", + "gapId": "operator:mball.hide_metaelems", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01009-operator-mball.hide_metaelems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01009.py -- tests/files/web/generated/M16-GAP-01009-operator-mball.hide_metaelems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01009", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01010", + "gapId": "operator:mball.reveal_metaelems", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01010-operator-mball.reveal_metaelems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01010.py -- tests/files/web/generated/M16-GAP-01010-operator-mball.reveal_metaelems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01010", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01011", + "gapId": "operator:mball.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01011-operator-mball.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01011.py -- tests/files/web/generated/M16-GAP-01011-operator-mball.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01011", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01012", + "gapId": "operator:mball.select_random_metaelems", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01012-operator-mball.select_random_metaelems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01012.py -- tests/files/web/generated/M16-GAP-01012-operator-mball.select_random_metaelems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01012", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01013", + "gapId": "operator:mball.select_similar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01013-operator-mball.select_similar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01013.py -- tests/files/web/generated/M16-GAP-01013-operator-mball.select_similar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01013", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01014", + "gapId": "operator:mesh.attribute_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01014-operator-mesh.attribute_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01014.py -- tests/files/web/generated/M16-GAP-01014-operator-mesh.attribute_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01014", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01015", + "gapId": "operator:mesh.average_normals", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01015-operator-mesh.average_normals.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01015.py -- tests/files/web/generated/M16-GAP-01015-operator-mesh.average_normals.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01015", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01016", + "gapId": "operator:mesh.beautify_fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01016-operator-mesh.beautify_fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01016.py -- tests/files/web/generated/M16-GAP-01016-operator-mesh.beautify_fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01016", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01017", + "gapId": "operator:mesh.bevel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01017-operator-mesh.bevel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01017.py -- tests/files/web/generated/M16-GAP-01017-operator-mesh.bevel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01017", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01018", + "gapId": "operator:mesh.bisect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01018-operator-mesh.bisect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01018.py -- tests/files/web/generated/M16-GAP-01018-operator-mesh.bisect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01018", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01019", + "gapId": "operator:mesh.blend_from_shape", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01019-operator-mesh.blend_from_shape.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01019.py -- tests/files/web/generated/M16-GAP-01019-operator-mesh.blend_from_shape.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01019", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01020", + "gapId": "operator:mesh.bridge_edge_loops", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01020-operator-mesh.bridge_edge_loops.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01020.py -- tests/files/web/generated/M16-GAP-01020-operator-mesh.bridge_edge_loops.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01020", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01021", + "gapId": "operator:mesh.circularize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01021-operator-mesh.circularize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01021.py -- tests/files/web/generated/M16-GAP-01021-operator-mesh.circularize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01021", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01022", + "gapId": "operator:mesh.colors_reverse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01022-operator-mesh.colors_reverse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01022.py -- tests/files/web/generated/M16-GAP-01022-operator-mesh.colors_reverse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01022", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01023", + "gapId": "operator:mesh.colors_rotate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01023-operator-mesh.colors_rotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01023.py -- tests/files/web/generated/M16-GAP-01023-operator-mesh.colors_rotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01023", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01024", + "gapId": "operator:mesh.convex_hull", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01024-operator-mesh.convex_hull.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01024.py -- tests/files/web/generated/M16-GAP-01024-operator-mesh.convex_hull.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01024", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01025", + "gapId": "operator:mesh.customdata_custom_splitnormals_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01025-operator-mesh.customdata_custom_splitnormals_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01025.py -- tests/files/web/generated/M16-GAP-01025-operator-mesh.customdata_custom_splitnormals_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01025", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01026", + "gapId": "operator:mesh.customdata_custom_splitnormals_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01026-operator-mesh.customdata_custom_splitnormals_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01026.py -- tests/files/web/generated/M16-GAP-01026-operator-mesh.customdata_custom_splitnormals_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01026", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01027", + "gapId": "operator:mesh.customdata_face_sets_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01027-operator-mesh.customdata_face_sets_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01027.py -- tests/files/web/generated/M16-GAP-01027-operator-mesh.customdata_face_sets_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01027", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01028", + "gapId": "operator:mesh.customdata_mask_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01028-operator-mesh.customdata_mask_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01028.py -- tests/files/web/generated/M16-GAP-01028-operator-mesh.customdata_mask_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01028", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01029", + "gapId": "operator:mesh.customdata_skin_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01029-operator-mesh.customdata_skin_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01029.py -- tests/files/web/generated/M16-GAP-01029-operator-mesh.customdata_skin_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01029", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01030", + "gapId": "operator:mesh.customdata_skin_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01030-operator-mesh.customdata_skin_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01030.py -- tests/files/web/generated/M16-GAP-01030-operator-mesh.customdata_skin_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01030", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01031", + "gapId": "operator:mesh.decimate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01031-operator-mesh.decimate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01031.py -- tests/files/web/generated/M16-GAP-01031-operator-mesh.decimate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01031", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01032", + "gapId": "operator:mesh.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01032-operator-mesh.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01032.py -- tests/files/web/generated/M16-GAP-01032-operator-mesh.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01032", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01033", + "gapId": "operator:mesh.delete_edgeloop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01033-operator-mesh.delete_edgeloop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01033.py -- tests/files/web/generated/M16-GAP-01033-operator-mesh.delete_edgeloop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01033", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01034", + "gapId": "operator:mesh.delete_loose", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01034-operator-mesh.delete_loose.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01034.py -- tests/files/web/generated/M16-GAP-01034-operator-mesh.delete_loose.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01034", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01035", + "gapId": "operator:mesh.dissolve_degenerate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01035-operator-mesh.dissolve_degenerate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01035.py -- tests/files/web/generated/M16-GAP-01035-operator-mesh.dissolve_degenerate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01035", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01036", + "gapId": "operator:mesh.dissolve_edges", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01036-operator-mesh.dissolve_edges.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01036.py -- tests/files/web/generated/M16-GAP-01036-operator-mesh.dissolve_edges.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01036", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01037", + "gapId": "operator:mesh.dissolve_faces", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01037-operator-mesh.dissolve_faces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01037.py -- tests/files/web/generated/M16-GAP-01037-operator-mesh.dissolve_faces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01037", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01038", + "gapId": "operator:mesh.dissolve_limited", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01038-operator-mesh.dissolve_limited.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01038.py -- tests/files/web/generated/M16-GAP-01038-operator-mesh.dissolve_limited.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01038", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01039", + "gapId": "operator:mesh.dissolve_mode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01039-operator-mesh.dissolve_mode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01039.py -- tests/files/web/generated/M16-GAP-01039-operator-mesh.dissolve_mode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01039", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01040", + "gapId": "operator:mesh.dissolve_verts", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01040-operator-mesh.dissolve_verts.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01040.py -- tests/files/web/generated/M16-GAP-01040-operator-mesh.dissolve_verts.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01040", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01041", + "gapId": "operator:mesh.dupli_extrude_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01041-operator-mesh.dupli_extrude_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01041.py -- tests/files/web/generated/M16-GAP-01041-operator-mesh.dupli_extrude_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01041", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01042", + "gapId": "operator:mesh.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01042-operator-mesh.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01042.py -- tests/files/web/generated/M16-GAP-01042-operator-mesh.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01042", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01043", + "gapId": "operator:mesh.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01043-operator-mesh.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01043.py -- tests/files/web/generated/M16-GAP-01043-operator-mesh.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01043", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01044", + "gapId": "operator:mesh.edge_collapse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01044-operator-mesh.edge_collapse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01044.py -- tests/files/web/generated/M16-GAP-01044-operator-mesh.edge_collapse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01044", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01045", + "gapId": "operator:mesh.edge_face_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01045-operator-mesh.edge_face_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01045.py -- tests/files/web/generated/M16-GAP-01045-operator-mesh.edge_face_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01045", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01046", + "gapId": "operator:mesh.edge_rotate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01046-operator-mesh.edge_rotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01046.py -- tests/files/web/generated/M16-GAP-01046-operator-mesh.edge_rotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01046", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01047", + "gapId": "operator:mesh.edge_split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01047-operator-mesh.edge_split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01047.py -- tests/files/web/generated/M16-GAP-01047-operator-mesh.edge_split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01047", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01048", + "gapId": "operator:mesh.edgering_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01048-operator-mesh.edgering_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01048.py -- tests/files/web/generated/M16-GAP-01048-operator-mesh.edgering_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01048", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01049", + "gapId": "operator:mesh.edges_select_sharp", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01049-operator-mesh.edges_select_sharp.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01049.py -- tests/files/web/generated/M16-GAP-01049-operator-mesh.edges_select_sharp.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01049", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01050", + "gapId": "operator:mesh.extrude_context", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01050-operator-mesh.extrude_context.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01050.py -- tests/files/web/generated/M16-GAP-01050-operator-mesh.extrude_context.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01050", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01051", + "gapId": "operator:mesh.extrude_context_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01051-operator-mesh.extrude_context_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01051.py -- tests/files/web/generated/M16-GAP-01051-operator-mesh.extrude_context_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01051", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01052", + "gapId": "operator:mesh.extrude_edges_indiv", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01052-operator-mesh.extrude_edges_indiv.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01052.py -- tests/files/web/generated/M16-GAP-01052-operator-mesh.extrude_edges_indiv.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01052", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01053", + "gapId": "operator:mesh.extrude_edges_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01053-operator-mesh.extrude_edges_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01053.py -- tests/files/web/generated/M16-GAP-01053-operator-mesh.extrude_edges_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01053", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01054", + "gapId": "operator:mesh.extrude_faces_indiv", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01054-operator-mesh.extrude_faces_indiv.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01054.py -- tests/files/web/generated/M16-GAP-01054-operator-mesh.extrude_faces_indiv.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01054", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01055", + "gapId": "operator:mesh.extrude_faces_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01055-operator-mesh.extrude_faces_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01055.py -- tests/files/web/generated/M16-GAP-01055-operator-mesh.extrude_faces_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01055", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01056", + "gapId": "operator:mesh.extrude_manifold", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01056-operator-mesh.extrude_manifold.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01056.py -- tests/files/web/generated/M16-GAP-01056-operator-mesh.extrude_manifold.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01056", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01057", + "gapId": "operator:mesh.extrude_region", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01057-operator-mesh.extrude_region.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01057.py -- tests/files/web/generated/M16-GAP-01057-operator-mesh.extrude_region.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01057", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01058", + "gapId": "operator:mesh.extrude_region_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01058-operator-mesh.extrude_region_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01058.py -- tests/files/web/generated/M16-GAP-01058-operator-mesh.extrude_region_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01058", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01059", + "gapId": "operator:mesh.extrude_region_shrink_fatten", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01059-operator-mesh.extrude_region_shrink_fatten.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01059.py -- tests/files/web/generated/M16-GAP-01059-operator-mesh.extrude_region_shrink_fatten.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01059", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01060", + "gapId": "operator:mesh.extrude_repeat", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01060-operator-mesh.extrude_repeat.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01060.py -- tests/files/web/generated/M16-GAP-01060-operator-mesh.extrude_repeat.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01060", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01061", + "gapId": "operator:mesh.extrude_vertices_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01061-operator-mesh.extrude_vertices_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01061.py -- tests/files/web/generated/M16-GAP-01061-operator-mesh.extrude_vertices_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01061", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01062", + "gapId": "operator:mesh.extrude_verts_indiv", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01062-operator-mesh.extrude_verts_indiv.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01062.py -- tests/files/web/generated/M16-GAP-01062-operator-mesh.extrude_verts_indiv.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01062", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01063", + "gapId": "operator:mesh.face_make_planar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01063-operator-mesh.face_make_planar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01063.py -- tests/files/web/generated/M16-GAP-01063-operator-mesh.face_make_planar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01063", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01064", + "gapId": "operator:mesh.face_split_by_edges", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01064-operator-mesh.face_split_by_edges.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01064.py -- tests/files/web/generated/M16-GAP-01064-operator-mesh.face_split_by_edges.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01064", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01065", + "gapId": "operator:mesh.faces_select_linked_flat", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01065-operator-mesh.faces_select_linked_flat.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01065.py -- tests/files/web/generated/M16-GAP-01065-operator-mesh.faces_select_linked_flat.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01065", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01066", + "gapId": "operator:mesh.faces_shade_flat", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01066-operator-mesh.faces_shade_flat.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01066.py -- tests/files/web/generated/M16-GAP-01066-operator-mesh.faces_shade_flat.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01066", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01067", + "gapId": "operator:mesh.faces_shade_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01067-operator-mesh.faces_shade_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01067.py -- tests/files/web/generated/M16-GAP-01067-operator-mesh.faces_shade_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01067", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01068", + "gapId": "operator:mesh.fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01068-operator-mesh.fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01068.py -- tests/files/web/generated/M16-GAP-01068-operator-mesh.fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01068", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01069", + "gapId": "operator:mesh.fill_grid", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01069-operator-mesh.fill_grid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01069.py -- tests/files/web/generated/M16-GAP-01069-operator-mesh.fill_grid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01069", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01070", + "gapId": "operator:mesh.fill_holes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01070-operator-mesh.fill_holes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01070.py -- tests/files/web/generated/M16-GAP-01070-operator-mesh.fill_holes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01070", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01071", + "gapId": "operator:mesh.flatten", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01071-operator-mesh.flatten.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01071.py -- tests/files/web/generated/M16-GAP-01071-operator-mesh.flatten.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01071", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01072", + "gapId": "operator:mesh.flip_normals", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01072-operator-mesh.flip_normals.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01072.py -- tests/files/web/generated/M16-GAP-01072-operator-mesh.flip_normals.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01072", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01073", + "gapId": "operator:mesh.flip_quad_tessellation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01073-operator-mesh.flip_quad_tessellation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01073.py -- tests/files/web/generated/M16-GAP-01073-operator-mesh.flip_quad_tessellation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01073", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01074", + "gapId": "operator:mesh.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01074-operator-mesh.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01074.py -- tests/files/web/generated/M16-GAP-01074-operator-mesh.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01074", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01075", + "gapId": "operator:mesh.inset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01075-operator-mesh.inset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01075.py -- tests/files/web/generated/M16-GAP-01075-operator-mesh.inset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01075", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01076", + "gapId": "operator:mesh.intersect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01076-operator-mesh.intersect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01076.py -- tests/files/web/generated/M16-GAP-01076-operator-mesh.intersect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01076", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01077", + "gapId": "operator:mesh.intersect_boolean", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01077-operator-mesh.intersect_boolean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01077.py -- tests/files/web/generated/M16-GAP-01077-operator-mesh.intersect_boolean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01077", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01078", + "gapId": "operator:mesh.knife_project", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01078-operator-mesh.knife_project.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01078.py -- tests/files/web/generated/M16-GAP-01078-operator-mesh.knife_project.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01078", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01079", + "gapId": "operator:mesh.knife_tool", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01079-operator-mesh.knife_tool.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01079.py -- tests/files/web/generated/M16-GAP-01079-operator-mesh.knife_tool.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01079", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01080", + "gapId": "operator:mesh.loop_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01080-operator-mesh.loop_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01080.py -- tests/files/web/generated/M16-GAP-01080-operator-mesh.loop_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01080", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01081", + "gapId": "operator:mesh.loop_to_region", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01081-operator-mesh.loop_to_region.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01081.py -- tests/files/web/generated/M16-GAP-01081-operator-mesh.loop_to_region.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01081", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01082", + "gapId": "operator:mesh.loopcut", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01082-operator-mesh.loopcut.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01082.py -- tests/files/web/generated/M16-GAP-01082-operator-mesh.loopcut.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01082", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01083", + "gapId": "operator:mesh.loopcut_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01083-operator-mesh.loopcut_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01083.py -- tests/files/web/generated/M16-GAP-01083-operator-mesh.loopcut_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01083", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01084", + "gapId": "operator:mesh.mark_freestyle_edge", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01084-operator-mesh.mark_freestyle_edge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01084.py -- tests/files/web/generated/M16-GAP-01084-operator-mesh.mark_freestyle_edge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01084", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01085", + "gapId": "operator:mesh.mark_freestyle_face", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01085-operator-mesh.mark_freestyle_face.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01085.py -- tests/files/web/generated/M16-GAP-01085-operator-mesh.mark_freestyle_face.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01085", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01086", + "gapId": "operator:mesh.mark_seam", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01086-operator-mesh.mark_seam.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01086.py -- tests/files/web/generated/M16-GAP-01086-operator-mesh.mark_seam.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01086", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01087", + "gapId": "operator:mesh.mark_sharp", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01087-operator-mesh.mark_sharp.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01087.py -- tests/files/web/generated/M16-GAP-01087-operator-mesh.mark_sharp.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01087", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01088", + "gapId": "operator:mesh.merge", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01088-operator-mesh.merge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01088.py -- tests/files/web/generated/M16-GAP-01088-operator-mesh.merge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01088", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01089", + "gapId": "operator:mesh.merge_normals", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01089-operator-mesh.merge_normals.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01089.py -- tests/files/web/generated/M16-GAP-01089-operator-mesh.merge_normals.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01089", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01090", + "gapId": "operator:mesh.mod_weighted_strength", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01090-operator-mesh.mod_weighted_strength.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01090.py -- tests/files/web/generated/M16-GAP-01090-operator-mesh.mod_weighted_strength.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01090", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01091", + "gapId": "operator:mesh.normals_make_consistent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01091-operator-mesh.normals_make_consistent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01091.py -- tests/files/web/generated/M16-GAP-01091-operator-mesh.normals_make_consistent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01091", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01092", + "gapId": "operator:mesh.normals_tools", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01092-operator-mesh.normals_tools.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01092.py -- tests/files/web/generated/M16-GAP-01092-operator-mesh.normals_tools.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01092", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01093", + "gapId": "operator:mesh.offset_edge_loops", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01093-operator-mesh.offset_edge_loops.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01093.py -- tests/files/web/generated/M16-GAP-01093-operator-mesh.offset_edge_loops.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01093", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01094", + "gapId": "operator:mesh.offset_edge_loops_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01094-operator-mesh.offset_edge_loops_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01094.py -- tests/files/web/generated/M16-GAP-01094-operator-mesh.offset_edge_loops_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01094", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01095", + "gapId": "operator:mesh.point_normals", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01095-operator-mesh.point_normals.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01095.py -- tests/files/web/generated/M16-GAP-01095-operator-mesh.point_normals.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01095", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01096", + "gapId": "operator:mesh.poke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01096-operator-mesh.poke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01096.py -- tests/files/web/generated/M16-GAP-01096-operator-mesh.poke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01096", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01097", + "gapId": "operator:mesh.polybuild_delete_at_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01097-operator-mesh.polybuild_delete_at_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01097.py -- tests/files/web/generated/M16-GAP-01097-operator-mesh.polybuild_delete_at_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01097", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01098", + "gapId": "operator:mesh.polybuild_dissolve_at_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01098-operator-mesh.polybuild_dissolve_at_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01098.py -- tests/files/web/generated/M16-GAP-01098-operator-mesh.polybuild_dissolve_at_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01098", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01099", + "gapId": "operator:mesh.polybuild_extrude_at_cursor_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01099-operator-mesh.polybuild_extrude_at_cursor_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01099.py -- tests/files/web/generated/M16-GAP-01099-operator-mesh.polybuild_extrude_at_cursor_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01099", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01100", + "gapId": "operator:mesh.polybuild_face_at_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01100-operator-mesh.polybuild_face_at_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01100.py -- tests/files/web/generated/M16-GAP-01100-operator-mesh.polybuild_face_at_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01100", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01101", + "gapId": "operator:mesh.polybuild_face_at_cursor_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01101-operator-mesh.polybuild_face_at_cursor_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01101.py -- tests/files/web/generated/M16-GAP-01101-operator-mesh.polybuild_face_at_cursor_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01101", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01102", + "gapId": "operator:mesh.polybuild_split_at_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01102-operator-mesh.polybuild_split_at_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01102.py -- tests/files/web/generated/M16-GAP-01102-operator-mesh.polybuild_split_at_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01102", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01103", + "gapId": "operator:mesh.polybuild_split_at_cursor_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01103-operator-mesh.polybuild_split_at_cursor_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01103.py -- tests/files/web/generated/M16-GAP-01103-operator-mesh.polybuild_split_at_cursor_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01103", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01104", + "gapId": "operator:mesh.polybuild_transform_at_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01104-operator-mesh.polybuild_transform_at_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01104.py -- tests/files/web/generated/M16-GAP-01104-operator-mesh.polybuild_transform_at_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01104", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01105", + "gapId": "operator:mesh.polybuild_transform_at_cursor_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01105-operator-mesh.polybuild_transform_at_cursor_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01105.py -- tests/files/web/generated/M16-GAP-01105-operator-mesh.polybuild_transform_at_cursor_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01105", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01106", + "gapId": "operator:mesh.primitive_circle_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01106-operator-mesh.primitive_circle_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01106.py -- tests/files/web/generated/M16-GAP-01106-operator-mesh.primitive_circle_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01106", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01107", + "gapId": "operator:mesh.primitive_cone_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01107-operator-mesh.primitive_cone_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01107.py -- tests/files/web/generated/M16-GAP-01107-operator-mesh.primitive_cone_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01107", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01108", + "gapId": "operator:mesh.primitive_cube_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01108-operator-mesh.primitive_cube_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01108.py -- tests/files/web/generated/M16-GAP-01108-operator-mesh.primitive_cube_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01108", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01109", + "gapId": "operator:mesh.primitive_cube_add_gizmo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01109-operator-mesh.primitive_cube_add_gizmo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01109.py -- tests/files/web/generated/M16-GAP-01109-operator-mesh.primitive_cube_add_gizmo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01109", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01110", + "gapId": "operator:mesh.primitive_cylinder_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01110-operator-mesh.primitive_cylinder_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01110.py -- tests/files/web/generated/M16-GAP-01110-operator-mesh.primitive_cylinder_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01110", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01111", + "gapId": "operator:mesh.primitive_grid_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01111-operator-mesh.primitive_grid_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01111.py -- tests/files/web/generated/M16-GAP-01111-operator-mesh.primitive_grid_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01111", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01112", + "gapId": "operator:mesh.primitive_ico_sphere_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01112-operator-mesh.primitive_ico_sphere_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01112.py -- tests/files/web/generated/M16-GAP-01112-operator-mesh.primitive_ico_sphere_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01112", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01113", + "gapId": "operator:mesh.primitive_monkey_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01113-operator-mesh.primitive_monkey_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01113.py -- tests/files/web/generated/M16-GAP-01113-operator-mesh.primitive_monkey_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01113", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01114", + "gapId": "operator:mesh.primitive_plane_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01114-operator-mesh.primitive_plane_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01114.py -- tests/files/web/generated/M16-GAP-01114-operator-mesh.primitive_plane_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01114", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01115", + "gapId": "operator:mesh.primitive_torus_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01115-operator-mesh.primitive_torus_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01115.py -- tests/files/web/generated/M16-GAP-01115-operator-mesh.primitive_torus_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01115", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01116", + "gapId": "operator:mesh.primitive_uv_sphere_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01116-operator-mesh.primitive_uv_sphere_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01116.py -- tests/files/web/generated/M16-GAP-01116-operator-mesh.primitive_uv_sphere_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01116", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01117", + "gapId": "operator:mesh.quads_convert_to_tris", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01117-operator-mesh.quads_convert_to_tris.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01117.py -- tests/files/web/generated/M16-GAP-01117-operator-mesh.quads_convert_to_tris.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01117", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01118", + "gapId": "operator:mesh.region_to_loop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01118-operator-mesh.region_to_loop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01118.py -- tests/files/web/generated/M16-GAP-01118-operator-mesh.region_to_loop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01118", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01119", + "gapId": "operator:mesh.remove_doubles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01119-operator-mesh.remove_doubles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01119.py -- tests/files/web/generated/M16-GAP-01119-operator-mesh.remove_doubles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01119", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01120", + "gapId": "operator:mesh.reorder_vertices_spatial", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01120-operator-mesh.reorder_vertices_spatial.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01120.py -- tests/files/web/generated/M16-GAP-01120-operator-mesh.reorder_vertices_spatial.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01120", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01121", + "gapId": "operator:mesh.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01121-operator-mesh.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01121.py -- tests/files/web/generated/M16-GAP-01121-operator-mesh.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01121", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01122", + "gapId": "operator:mesh.rip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01122-operator-mesh.rip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01122.py -- tests/files/web/generated/M16-GAP-01122-operator-mesh.rip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01122", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01123", + "gapId": "operator:mesh.rip_edge", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01123-operator-mesh.rip_edge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01123.py -- tests/files/web/generated/M16-GAP-01123-operator-mesh.rip_edge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01123", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01124", + "gapId": "operator:mesh.rip_edge_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01124-operator-mesh.rip_edge_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01124.py -- tests/files/web/generated/M16-GAP-01124-operator-mesh.rip_edge_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01124", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01125", + "gapId": "operator:mesh.rip_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01125-operator-mesh.rip_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01125.py -- tests/files/web/generated/M16-GAP-01125-operator-mesh.rip_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01125", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01126", + "gapId": "operator:mesh.screw", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01126-operator-mesh.screw.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01126.py -- tests/files/web/generated/M16-GAP-01126-operator-mesh.screw.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01126", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01127", + "gapId": "operator:mesh.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01127-operator-mesh.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01127.py -- tests/files/web/generated/M16-GAP-01127-operator-mesh.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01127", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01128", + "gapId": "operator:mesh.select_axis", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01128-operator-mesh.select_axis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01128.py -- tests/files/web/generated/M16-GAP-01128-operator-mesh.select_axis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01128", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01129", + "gapId": "operator:mesh.select_boundary_loop_multi", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01129-operator-mesh.select_boundary_loop_multi.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01129.py -- tests/files/web/generated/M16-GAP-01129-operator-mesh.select_boundary_loop_multi.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01129", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01130", + "gapId": "operator:mesh.select_by_attribute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01130-operator-mesh.select_by_attribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01130.py -- tests/files/web/generated/M16-GAP-01130-operator-mesh.select_by_attribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01130", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01131", + "gapId": "operator:mesh.select_by_pole_count", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01131-operator-mesh.select_by_pole_count.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01131.py -- tests/files/web/generated/M16-GAP-01131-operator-mesh.select_by_pole_count.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01131", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01132", + "gapId": "operator:mesh.select_edge_loop_multi", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01132-operator-mesh.select_edge_loop_multi.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01132.py -- tests/files/web/generated/M16-GAP-01132-operator-mesh.select_edge_loop_multi.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01132", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01133", + "gapId": "operator:mesh.select_edge_ring_multi", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01133-operator-mesh.select_edge_ring_multi.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01133.py -- tests/files/web/generated/M16-GAP-01133-operator-mesh.select_edge_ring_multi.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01133", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01134", + "gapId": "operator:mesh.select_face_by_sides", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01134-operator-mesh.select_face_by_sides.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01134.py -- tests/files/web/generated/M16-GAP-01134-operator-mesh.select_face_by_sides.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01134", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01135", + "gapId": "operator:mesh.select_interior_faces", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01135-operator-mesh.select_interior_faces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01135.py -- tests/files/web/generated/M16-GAP-01135-operator-mesh.select_interior_faces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01135", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01136", + "gapId": "operator:mesh.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01136-operator-mesh.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01136.py -- tests/files/web/generated/M16-GAP-01136-operator-mesh.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01136", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01137", + "gapId": "operator:mesh.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01137-operator-mesh.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01137.py -- tests/files/web/generated/M16-GAP-01137-operator-mesh.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01137", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01138", + "gapId": "operator:mesh.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01138-operator-mesh.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01138.py -- tests/files/web/generated/M16-GAP-01138-operator-mesh.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01138", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01139", + "gapId": "operator:mesh.select_loose", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01139-operator-mesh.select_loose.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01139.py -- tests/files/web/generated/M16-GAP-01139-operator-mesh.select_loose.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01139", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01140", + "gapId": "operator:mesh.select_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01140-operator-mesh.select_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01140.py -- tests/files/web/generated/M16-GAP-01140-operator-mesh.select_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01140", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01141", + "gapId": "operator:mesh.select_mode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01141-operator-mesh.select_mode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01141.py -- tests/files/web/generated/M16-GAP-01141-operator-mesh.select_mode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01141", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01142", + "gapId": "operator:mesh.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01142-operator-mesh.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01142.py -- tests/files/web/generated/M16-GAP-01142-operator-mesh.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01142", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01143", + "gapId": "operator:mesh.select_next_item", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01143-operator-mesh.select_next_item.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01143.py -- tests/files/web/generated/M16-GAP-01143-operator-mesh.select_next_item.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01143", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01144", + "gapId": "operator:mesh.select_non_manifold", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01144-operator-mesh.select_non_manifold.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01144.py -- tests/files/web/generated/M16-GAP-01144-operator-mesh.select_non_manifold.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01144", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01145", + "gapId": "operator:mesh.select_nth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01145-operator-mesh.select_nth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01145.py -- tests/files/web/generated/M16-GAP-01145-operator-mesh.select_nth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01145", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01146", + "gapId": "operator:mesh.select_prev_item", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01146-operator-mesh.select_prev_item.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01146.py -- tests/files/web/generated/M16-GAP-01146-operator-mesh.select_prev_item.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01146", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01147", + "gapId": "operator:mesh.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01147-operator-mesh.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01147.py -- tests/files/web/generated/M16-GAP-01147-operator-mesh.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01147", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01148", + "gapId": "operator:mesh.select_similar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01148-operator-mesh.select_similar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01148.py -- tests/files/web/generated/M16-GAP-01148-operator-mesh.select_similar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01148", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01149", + "gapId": "operator:mesh.select_similar_region", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01149-operator-mesh.select_similar_region.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01149.py -- tests/files/web/generated/M16-GAP-01149-operator-mesh.select_similar_region.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01149", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01150", + "gapId": "operator:mesh.select_ungrouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01150-operator-mesh.select_ungrouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01150.py -- tests/files/web/generated/M16-GAP-01150-operator-mesh.select_ungrouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01150", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01151", + "gapId": "operator:mesh.separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01151-operator-mesh.separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01151.py -- tests/files/web/generated/M16-GAP-01151-operator-mesh.separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01151", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01152", + "gapId": "operator:mesh.set_normals_from_faces", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01152-operator-mesh.set_normals_from_faces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01152.py -- tests/files/web/generated/M16-GAP-01152-operator-mesh.set_normals_from_faces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01152", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01153", + "gapId": "operator:mesh.set_sharpness_by_angle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01153-operator-mesh.set_sharpness_by_angle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01153.py -- tests/files/web/generated/M16-GAP-01153-operator-mesh.set_sharpness_by_angle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01153", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01154", + "gapId": "operator:mesh.shape_propagate_to_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01154-operator-mesh.shape_propagate_to_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01154.py -- tests/files/web/generated/M16-GAP-01154-operator-mesh.shape_propagate_to_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01154", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01155", + "gapId": "operator:mesh.shortest_path_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01155-operator-mesh.shortest_path_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01155.py -- tests/files/web/generated/M16-GAP-01155-operator-mesh.shortest_path_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01155", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01156", + "gapId": "operator:mesh.shortest_path_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01156-operator-mesh.shortest_path_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01156.py -- tests/files/web/generated/M16-GAP-01156-operator-mesh.shortest_path_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01156", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01157", + "gapId": "operator:mesh.smooth_normals", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01157-operator-mesh.smooth_normals.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01157.py -- tests/files/web/generated/M16-GAP-01157-operator-mesh.smooth_normals.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01157", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01158", + "gapId": "operator:mesh.solidify", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01158-operator-mesh.solidify.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01158.py -- tests/files/web/generated/M16-GAP-01158-operator-mesh.solidify.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01158", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01159", + "gapId": "operator:mesh.sort_elements", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01159-operator-mesh.sort_elements.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01159.py -- tests/files/web/generated/M16-GAP-01159-operator-mesh.sort_elements.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01159", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01160", + "gapId": "operator:mesh.space_edge_loops_evenly", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01160-operator-mesh.space_edge_loops_evenly.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01160.py -- tests/files/web/generated/M16-GAP-01160-operator-mesh.space_edge_loops_evenly.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01160", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01161", + "gapId": "operator:mesh.spin", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01161-operator-mesh.spin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01161.py -- tests/files/web/generated/M16-GAP-01161-operator-mesh.spin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01161", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01162", + "gapId": "operator:mesh.split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01162-operator-mesh.split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01162.py -- tests/files/web/generated/M16-GAP-01162-operator-mesh.split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01162", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01163", + "gapId": "operator:mesh.split_normals", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01163-operator-mesh.split_normals.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01163.py -- tests/files/web/generated/M16-GAP-01163-operator-mesh.split_normals.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01163", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01164", + "gapId": "operator:mesh.subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01164-operator-mesh.subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01164.py -- tests/files/web/generated/M16-GAP-01164-operator-mesh.subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01164", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01165", + "gapId": "operator:mesh.subdivide_edgering", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01165-operator-mesh.subdivide_edgering.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01165.py -- tests/files/web/generated/M16-GAP-01165-operator-mesh.subdivide_edgering.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01165", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01166", + "gapId": "operator:mesh.symmetrize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01166-operator-mesh.symmetrize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01166.py -- tests/files/web/generated/M16-GAP-01166-operator-mesh.symmetrize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01166", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01167", + "gapId": "operator:mesh.symmetry_snap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01167-operator-mesh.symmetry_snap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01167.py -- tests/files/web/generated/M16-GAP-01167-operator-mesh.symmetry_snap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01167", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01168", + "gapId": "operator:mesh.tris_convert_to_quads", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01168-operator-mesh.tris_convert_to_quads.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01168.py -- tests/files/web/generated/M16-GAP-01168-operator-mesh.tris_convert_to_quads.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01168", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01169", + "gapId": "operator:mesh.unsubdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01169-operator-mesh.unsubdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01169.py -- tests/files/web/generated/M16-GAP-01169-operator-mesh.unsubdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01169", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01170", + "gapId": "operator:mesh.uv_texture_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01170-operator-mesh.uv_texture_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01170.py -- tests/files/web/generated/M16-GAP-01170-operator-mesh.uv_texture_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01170", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01171", + "gapId": "operator:mesh.uv_texture_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01171-operator-mesh.uv_texture_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01171.py -- tests/files/web/generated/M16-GAP-01171-operator-mesh.uv_texture_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01171", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01172", + "gapId": "operator:mesh.uvs_reverse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01172-operator-mesh.uvs_reverse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01172.py -- tests/files/web/generated/M16-GAP-01172-operator-mesh.uvs_reverse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01172", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01173", + "gapId": "operator:mesh.uvs_rotate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01173-operator-mesh.uvs_rotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01173.py -- tests/files/web/generated/M16-GAP-01173-operator-mesh.uvs_rotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01173", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01174", + "gapId": "operator:mesh.vert_connect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01174-operator-mesh.vert_connect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01174.py -- tests/files/web/generated/M16-GAP-01174-operator-mesh.vert_connect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01174", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01175", + "gapId": "operator:mesh.vert_connect_concave", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01175-operator-mesh.vert_connect_concave.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01175.py -- tests/files/web/generated/M16-GAP-01175-operator-mesh.vert_connect_concave.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01175", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01176", + "gapId": "operator:mesh.vert_connect_nonplanar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01176-operator-mesh.vert_connect_nonplanar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01176.py -- tests/files/web/generated/M16-GAP-01176-operator-mesh.vert_connect_nonplanar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01176", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01177", + "gapId": "operator:mesh.vert_connect_path", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01177-operator-mesh.vert_connect_path.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01177.py -- tests/files/web/generated/M16-GAP-01177-operator-mesh.vert_connect_path.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01177", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01178", + "gapId": "operator:mesh.vertices_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01178-operator-mesh.vertices_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01178.py -- tests/files/web/generated/M16-GAP-01178-operator-mesh.vertices_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01178", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01179", + "gapId": "operator:mesh.vertices_smooth_laplacian", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01179-operator-mesh.vertices_smooth_laplacian.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01179.py -- tests/files/web/generated/M16-GAP-01179-operator-mesh.vertices_smooth_laplacian.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01179", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01180", + "gapId": "operator:mesh.wireframe", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01180-operator-mesh.wireframe.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01180.py -- tests/files/web/generated/M16-GAP-01180-operator-mesh.wireframe.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01180", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01181", + "gapId": "operator:nla.action_pushdown", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01181-operator-nla.action_pushdown.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01181.py -- tests/files/web/generated/M16-GAP-01181-operator-nla.action_pushdown.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01181", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01182", + "gapId": "operator:nla.action_sync_length", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01182-operator-nla.action_sync_length.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01182.py -- tests/files/web/generated/M16-GAP-01182-operator-nla.action_sync_length.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01182", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01183", + "gapId": "operator:nla.action_unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01183-operator-nla.action_unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01183.py -- tests/files/web/generated/M16-GAP-01183-operator-nla.action_unlink.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01183", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01184", + "gapId": "operator:nla.actionclip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01184-operator-nla.actionclip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01184.py -- tests/files/web/generated/M16-GAP-01184-operator-nla.actionclip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01184", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01185", + "gapId": "operator:nla.apply_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01185-operator-nla.apply_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01185.py -- tests/files/web/generated/M16-GAP-01185-operator-nla.apply_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01185", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01186", + "gapId": "operator:nla.bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01186-operator-nla.bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01186.py -- tests/files/web/generated/M16-GAP-01186-operator-nla.bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01186", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01187", + "gapId": "operator:nla.channels_click", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01187-operator-nla.channels_click.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01187.py -- tests/files/web/generated/M16-GAP-01187-operator-nla.channels_click.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01187", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01188", + "gapId": "operator:nla.clear_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01188-operator-nla.clear_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01188.py -- tests/files/web/generated/M16-GAP-01188-operator-nla.clear_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01188", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01189", + "gapId": "operator:nla.click_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01189-operator-nla.click_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01189.py -- tests/files/web/generated/M16-GAP-01189-operator-nla.click_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01189", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01190", + "gapId": "operator:nla.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01190-operator-nla.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01190.py -- tests/files/web/generated/M16-GAP-01190-operator-nla.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01190", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01191", + "gapId": "operator:nla.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01191-operator-nla.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01191.py -- tests/files/web/generated/M16-GAP-01191-operator-nla.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01191", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01192", + "gapId": "operator:nla.duplicate_linked_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01192-operator-nla.duplicate_linked_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01192.py -- tests/files/web/generated/M16-GAP-01192-operator-nla.duplicate_linked_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01192", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01193", + "gapId": "operator:nla.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01193-operator-nla.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01193.py -- tests/files/web/generated/M16-GAP-01193-operator-nla.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01193", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01194", + "gapId": "operator:nla.fmodifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01194-operator-nla.fmodifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01194.py -- tests/files/web/generated/M16-GAP-01194-operator-nla.fmodifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01194", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01195", + "gapId": "operator:nla.fmodifier_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01195-operator-nla.fmodifier_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01195.py -- tests/files/web/generated/M16-GAP-01195-operator-nla.fmodifier_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01195", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01196", + "gapId": "operator:nla.fmodifier_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01196-operator-nla.fmodifier_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01196.py -- tests/files/web/generated/M16-GAP-01196-operator-nla.fmodifier_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01196", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01197", + "gapId": "operator:nla.make_single_user", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01197-operator-nla.make_single_user.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01197.py -- tests/files/web/generated/M16-GAP-01197-operator-nla.make_single_user.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01197", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01198", + "gapId": "operator:nla.meta_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01198-operator-nla.meta_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01198.py -- tests/files/web/generated/M16-GAP-01198-operator-nla.meta_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01198", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01199", + "gapId": "operator:nla.meta_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01199-operator-nla.meta_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01199.py -- tests/files/web/generated/M16-GAP-01199-operator-nla.meta_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01199", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01200", + "gapId": "operator:nla.move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01200-operator-nla.move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01200.py -- tests/files/web/generated/M16-GAP-01200-operator-nla.move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01200", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01201", + "gapId": "operator:nla.move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01201-operator-nla.move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01201.py -- tests/files/web/generated/M16-GAP-01201-operator-nla.move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01201", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01202", + "gapId": "operator:nla.mute_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01202-operator-nla.mute_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01202.py -- tests/files/web/generated/M16-GAP-01202-operator-nla.mute_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01202", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01203", + "gapId": "operator:nla.previewrange_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01203-operator-nla.previewrange_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01203.py -- tests/files/web/generated/M16-GAP-01203-operator-nla.previewrange_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01203", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01204", + "gapId": "operator:nla.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01204-operator-nla.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01204.py -- tests/files/web/generated/M16-GAP-01204-operator-nla.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01204", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01205", + "gapId": "operator:nla.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01205-operator-nla.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01205.py -- tests/files/web/generated/M16-GAP-01205-operator-nla.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01205", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01206", + "gapId": "operator:nla.select_leftright", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01206-operator-nla.select_leftright.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01206.py -- tests/files/web/generated/M16-GAP-01206-operator-nla.select_leftright.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01206", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01207", + "gapId": "operator:nla.selected_objects_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01207-operator-nla.selected_objects_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01207.py -- tests/files/web/generated/M16-GAP-01207-operator-nla.selected_objects_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01207", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01208", + "gapId": "operator:nla.snap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01208-operator-nla.snap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01208.py -- tests/files/web/generated/M16-GAP-01208-operator-nla.snap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01208", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01209", + "gapId": "operator:nla.soundclip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01209-operator-nla.soundclip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01209.py -- tests/files/web/generated/M16-GAP-01209-operator-nla.soundclip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01209", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01210", + "gapId": "operator:nla.split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01210-operator-nla.split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01210.py -- tests/files/web/generated/M16-GAP-01210-operator-nla.split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01210", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01211", + "gapId": "operator:nla.swap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01211-operator-nla.swap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01211.py -- tests/files/web/generated/M16-GAP-01211-operator-nla.swap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01211", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01212", + "gapId": "operator:nla.tracks_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01212-operator-nla.tracks_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01212.py -- tests/files/web/generated/M16-GAP-01212-operator-nla.tracks_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01212", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01213", + "gapId": "operator:nla.tracks_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01213-operator-nla.tracks_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01213.py -- tests/files/web/generated/M16-GAP-01213-operator-nla.tracks_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01213", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01214", + "gapId": "operator:nla.transition_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01214-operator-nla.transition_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01214.py -- tests/files/web/generated/M16-GAP-01214-operator-nla.transition_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01214", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01215", + "gapId": "operator:nla.tweakmode_enter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01215-operator-nla.tweakmode_enter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01215.py -- tests/files/web/generated/M16-GAP-01215-operator-nla.tweakmode_enter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01215", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01216", + "gapId": "operator:nla.tweakmode_exit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01216-operator-nla.tweakmode_exit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01216.py -- tests/files/web/generated/M16-GAP-01216-operator-nla.tweakmode_exit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01216", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01217", + "gapId": "operator:nla.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01217-operator-nla.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01217.py -- tests/files/web/generated/M16-GAP-01217-operator-nla.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01217", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01218", + "gapId": "operator:nla.view_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01218-operator-nla.view_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01218.py -- tests/files/web/generated/M16-GAP-01218-operator-nla.view_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01218", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01219", + "gapId": "operator:nla.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01219-operator-nla.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01219.py -- tests/files/web/generated/M16-GAP-01219-operator-nla.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01219", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01220", + "gapId": "operator:node.activate_viewer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01220-operator-node.activate_viewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01220.py -- tests/files/web/generated/M16-GAP-01220-operator-node.activate_viewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01220", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01221", + "gapId": "operator:node.add_closure_zone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01221-operator-node.add_closure_zone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01221.py -- tests/files/web/generated/M16-GAP-01221-operator-node.add_closure_zone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01221", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01222", + "gapId": "operator:node.add_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01222-operator-node.add_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01222.py -- tests/files/web/generated/M16-GAP-01222-operator-node.add_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01222", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01223", + "gapId": "operator:node.add_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01223-operator-node.add_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01223.py -- tests/files/web/generated/M16-GAP-01223-operator-node.add_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01223", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01224", + "gapId": "operator:node.add_empty_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01224-operator-node.add_empty_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01224.py -- tests/files/web/generated/M16-GAP-01224-operator-node.add_empty_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01224", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01225", + "gapId": "operator:node.add_foreach_geometry_element_zone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01225-operator-node.add_foreach_geometry_element_zone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01225.py -- tests/files/web/generated/M16-GAP-01225-operator-node.add_foreach_geometry_element_zone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01225", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01226", + "gapId": "operator:node.add_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01226-operator-node.add_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01226.py -- tests/files/web/generated/M16-GAP-01226-operator-node.add_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01226", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01227", + "gapId": "operator:node.add_group_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01227-operator-node.add_group_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01227.py -- tests/files/web/generated/M16-GAP-01227-operator-node.add_group_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01227", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01228", + "gapId": "operator:node.add_group_input_node", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01228-operator-node.add_group_input_node.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01228.py -- tests/files/web/generated/M16-GAP-01228-operator-node.add_group_input_node.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01228", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01229", + "gapId": "operator:node.add_image", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01229-operator-node.add_image.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01229.py -- tests/files/web/generated/M16-GAP-01229-operator-node.add_image.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01229", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01230", + "gapId": "operator:node.add_import_node", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01230-operator-node.add_import_node.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01230.py -- tests/files/web/generated/M16-GAP-01230-operator-node.add_import_node.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01230", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01231", + "gapId": "operator:node.add_mask", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01231-operator-node.add_mask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01231.py -- tests/files/web/generated/M16-GAP-01231-operator-node.add_mask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01231", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01232", + "gapId": "operator:node.add_material", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01232-operator-node.add_material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01232.py -- tests/files/web/generated/M16-GAP-01232-operator-node.add_material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01232", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01233", + "gapId": "operator:node.add_node", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01233-operator-node.add_node.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01233.py -- tests/files/web/generated/M16-GAP-01233-operator-node.add_node.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01233", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01234", + "gapId": "operator:node.add_object", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01234-operator-node.add_object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01234.py -- tests/files/web/generated/M16-GAP-01234-operator-node.add_object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01234", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01235", + "gapId": "operator:node.add_repeat_zone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01235-operator-node.add_repeat_zone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01235.py -- tests/files/web/generated/M16-GAP-01235-operator-node.add_repeat_zone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01235", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01236", + "gapId": "operator:node.add_reroute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01236-operator-node.add_reroute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01236.py -- tests/files/web/generated/M16-GAP-01236-operator-node.add_reroute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01236", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01237", + "gapId": "operator:node.add_simulation_zone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01237-operator-node.add_simulation_zone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01237.py -- tests/files/web/generated/M16-GAP-01237-operator-node.add_simulation_zone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01237", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01238", + "gapId": "operator:node.add_typed_bundle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01238-operator-node.add_typed_bundle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01238.py -- tests/files/web/generated/M16-GAP-01238-operator-node.add_typed_bundle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01238", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01239", + "gapId": "operator:node.add_zone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01239-operator-node.add_zone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01239.py -- tests/files/web/generated/M16-GAP-01239-operator-node.add_zone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01239", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01240", + "gapId": "operator:node.attach", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01240-operator-node.attach.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01240.py -- tests/files/web/generated/M16-GAP-01240-operator-node.attach.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01240", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01241", + "gapId": "operator:node.backimage_fit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01241-operator-node.backimage_fit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01241.py -- tests/files/web/generated/M16-GAP-01241-operator-node.backimage_fit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01241", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01242", + "gapId": "operator:node.backimage_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01242-operator-node.backimage_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01242.py -- tests/files/web/generated/M16-GAP-01242-operator-node.backimage_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01242", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01243", + "gapId": "operator:node.backimage_sample", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01243-operator-node.backimage_sample.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01243.py -- tests/files/web/generated/M16-GAP-01243-operator-node.backimage_sample.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01243", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01244", + "gapId": "operator:node.backimage_zoom", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01244-operator-node.backimage_zoom.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01244.py -- tests/files/web/generated/M16-GAP-01244-operator-node.backimage_zoom.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01244", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01245", + "gapId": "operator:node.bake_node_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01245-operator-node.bake_node_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01245.py -- tests/files/web/generated/M16-GAP-01245-operator-node.bake_node_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01245", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01246", + "gapId": "operator:node.bake_node_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01246-operator-node.bake_node_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01246.py -- tests/files/web/generated/M16-GAP-01246-operator-node.bake_node_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01246", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01247", + "gapId": "operator:node.bake_node_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01247-operator-node.bake_node_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01247.py -- tests/files/web/generated/M16-GAP-01247-operator-node.bake_node_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01247", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01248", + "gapId": "operator:node.capture_attribute_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01248-operator-node.capture_attribute_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01248.py -- tests/files/web/generated/M16-GAP-01248-operator-node.capture_attribute_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01248", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01249", + "gapId": "operator:node.capture_attribute_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01249-operator-node.capture_attribute_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01249.py -- tests/files/web/generated/M16-GAP-01249-operator-node.capture_attribute_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01249", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01250", + "gapId": "operator:node.capture_attribute_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01250-operator-node.capture_attribute_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01250.py -- tests/files/web/generated/M16-GAP-01250-operator-node.capture_attribute_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01250", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01251", + "gapId": "operator:node.clear_viewer_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01251-operator-node.clear_viewer_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01251.py -- tests/files/web/generated/M16-GAP-01251-operator-node.clear_viewer_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01251", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01252", + "gapId": "operator:node.clipboard_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01252-operator-node.clipboard_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01252.py -- tests/files/web/generated/M16-GAP-01252-operator-node.clipboard_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01252", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01253", + "gapId": "operator:node.clipboard_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01253-operator-node.clipboard_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01253.py -- tests/files/web/generated/M16-GAP-01253-operator-node.clipboard_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01253", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01254", + "gapId": "operator:node.closure_input_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01254-operator-node.closure_input_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01254.py -- tests/files/web/generated/M16-GAP-01254-operator-node.closure_input_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01254", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01255", + "gapId": "operator:node.closure_input_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01255-operator-node.closure_input_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01255.py -- tests/files/web/generated/M16-GAP-01255-operator-node.closure_input_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01255", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01256", + "gapId": "operator:node.closure_input_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01256-operator-node.closure_input_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01256.py -- tests/files/web/generated/M16-GAP-01256-operator-node.closure_input_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01256", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01257", + "gapId": "operator:node.closure_output_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01257-operator-node.closure_output_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01257.py -- tests/files/web/generated/M16-GAP-01257-operator-node.closure_output_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01257", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01258", + "gapId": "operator:node.closure_output_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01258-operator-node.closure_output_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01258.py -- tests/files/web/generated/M16-GAP-01258-operator-node.closure_output_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01258", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01259", + "gapId": "operator:node.closure_output_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01259-operator-node.closure_output_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01259.py -- tests/files/web/generated/M16-GAP-01259-operator-node.closure_output_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01259", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01260", + "gapId": "operator:node.closure_to_list_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01260-operator-node.closure_to_list_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01260.py -- tests/files/web/generated/M16-GAP-01260-operator-node.closure_to_list_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01260", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01261", + "gapId": "operator:node.closure_to_list_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01261-operator-node.closure_to_list_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01261.py -- tests/files/web/generated/M16-GAP-01261-operator-node.closure_to_list_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01261", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01262", + "gapId": "operator:node.closure_to_list_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01262-operator-node.closure_to_list_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01262.py -- tests/files/web/generated/M16-GAP-01262-operator-node.closure_to_list_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01262", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01263", + "gapId": "operator:node.collapse_hide_unused_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01263-operator-node.collapse_hide_unused_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01263.py -- tests/files/web/generated/M16-GAP-01263-operator-node.collapse_hide_unused_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01263", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01264", + "gapId": "operator:node.combine_bundle_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01264-operator-node.combine_bundle_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01264.py -- tests/files/web/generated/M16-GAP-01264-operator-node.combine_bundle_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01264", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01265", + "gapId": "operator:node.combine_bundle_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01265-operator-node.combine_bundle_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01265.py -- tests/files/web/generated/M16-GAP-01265-operator-node.combine_bundle_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01265", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01266", + "gapId": "operator:node.combine_bundle_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01266-operator-node.combine_bundle_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01266.py -- tests/files/web/generated/M16-GAP-01266-operator-node.combine_bundle_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01266", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01267", + "gapId": "operator:node.connect_to_output", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01267-operator-node.connect_to_output.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01267.py -- tests/files/web/generated/M16-GAP-01267-operator-node.connect_to_output.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01267", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01268", + "gapId": "operator:node.cryptomatte_layer_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01268-operator-node.cryptomatte_layer_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01268.py -- tests/files/web/generated/M16-GAP-01268-operator-node.cryptomatte_layer_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01268", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01269", + "gapId": "operator:node.cryptomatte_layer_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01269-operator-node.cryptomatte_layer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01269.py -- tests/files/web/generated/M16-GAP-01269-operator-node.cryptomatte_layer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01269", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01270", + "gapId": "operator:node.deactivate_viewer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01270-operator-node.deactivate_viewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01270.py -- tests/files/web/generated/M16-GAP-01270-operator-node.deactivate_viewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01270", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01271", + "gapId": "operator:node.default_group_width_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01271-operator-node.default_group_width_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01271.py -- tests/files/web/generated/M16-GAP-01271-operator-node.default_group_width_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01271", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01272", + "gapId": "operator:node.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01272-operator-node.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01272.py -- tests/files/web/generated/M16-GAP-01272-operator-node.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01272", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01273", + "gapId": "operator:node.delete_copy_reconnect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01273-operator-node.delete_copy_reconnect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01273.py -- tests/files/web/generated/M16-GAP-01273-operator-node.delete_copy_reconnect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01273", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01274", + "gapId": "operator:node.delete_reconnect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01274-operator-node.delete_reconnect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01274.py -- tests/files/web/generated/M16-GAP-01274-operator-node.delete_reconnect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01274", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01275", + "gapId": "operator:node.detach", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01275-operator-node.detach.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01275.py -- tests/files/web/generated/M16-GAP-01275-operator-node.detach.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01275", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01276", + "gapId": "operator:node.detach_translate_attach", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01276-operator-node.detach_translate_attach.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01276.py -- tests/files/web/generated/M16-GAP-01276-operator-node.detach_translate_attach.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01276", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01277", + "gapId": "operator:node.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01277-operator-node.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01277.py -- tests/files/web/generated/M16-GAP-01277-operator-node.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01277", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01278", + "gapId": "operator:node.duplicate_compositing_modifier_node_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01278-operator-node.duplicate_compositing_modifier_node_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01278.py -- tests/files/web/generated/M16-GAP-01278-operator-node.duplicate_compositing_modifier_node_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01278", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01279", + "gapId": "operator:node.duplicate_compositing_node_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01279-operator-node.duplicate_compositing_node_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01279.py -- tests/files/web/generated/M16-GAP-01279-operator-node.duplicate_compositing_node_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01279", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01280", + "gapId": "operator:node.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01280-operator-node.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01280.py -- tests/files/web/generated/M16-GAP-01280-operator-node.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01280", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01281", + "gapId": "operator:node.duplicate_move_keep_inputs", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01281-operator-node.duplicate_move_keep_inputs.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01281.py -- tests/files/web/generated/M16-GAP-01281-operator-node.duplicate_move_keep_inputs.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01281", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01282", + "gapId": "operator:node.duplicate_move_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01282-operator-node.duplicate_move_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01282.py -- tests/files/web/generated/M16-GAP-01282-operator-node.duplicate_move_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01282", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01283", + "gapId": "operator:node.enum_definition_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01283-operator-node.enum_definition_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01283.py -- tests/files/web/generated/M16-GAP-01283-operator-node.enum_definition_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01283", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01284", + "gapId": "operator:node.enum_definition_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01284-operator-node.enum_definition_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01284.py -- tests/files/web/generated/M16-GAP-01284-operator-node.enum_definition_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01284", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01285", + "gapId": "operator:node.enum_definition_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01285-operator-node.enum_definition_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01285.py -- tests/files/web/generated/M16-GAP-01285-operator-node.enum_definition_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01285", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01286", + "gapId": "operator:node.evaluate_closure_input_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01286-operator-node.evaluate_closure_input_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01286.py -- tests/files/web/generated/M16-GAP-01286-operator-node.evaluate_closure_input_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01286", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01287", + "gapId": "operator:node.evaluate_closure_input_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01287-operator-node.evaluate_closure_input_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01287.py -- tests/files/web/generated/M16-GAP-01287-operator-node.evaluate_closure_input_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01287", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01288", + "gapId": "operator:node.evaluate_closure_input_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01288-operator-node.evaluate_closure_input_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01288.py -- tests/files/web/generated/M16-GAP-01288-operator-node.evaluate_closure_input_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01288", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01289", + "gapId": "operator:node.evaluate_closure_output_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01289-operator-node.evaluate_closure_output_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01289.py -- tests/files/web/generated/M16-GAP-01289-operator-node.evaluate_closure_output_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01289", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01290", + "gapId": "operator:node.evaluate_closure_output_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01290-operator-node.evaluate_closure_output_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01290.py -- tests/files/web/generated/M16-GAP-01290-operator-node.evaluate_closure_output_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01290", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01291", + "gapId": "operator:node.evaluate_closure_output_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01291-operator-node.evaluate_closure_output_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01291.py -- tests/files/web/generated/M16-GAP-01291-operator-node.evaluate_closure_output_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01291", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01292", + "gapId": "operator:node.field_to_grid_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01292-operator-node.field_to_grid_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01292.py -- tests/files/web/generated/M16-GAP-01292-operator-node.field_to_grid_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01292", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01293", + "gapId": "operator:node.field_to_grid_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01293-operator-node.field_to_grid_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01293.py -- tests/files/web/generated/M16-GAP-01293-operator-node.field_to_grid_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01293", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01294", + "gapId": "operator:node.field_to_grid_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01294-operator-node.field_to_grid_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01294.py -- tests/files/web/generated/M16-GAP-01294-operator-node.field_to_grid_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01294", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01295", + "gapId": "operator:node.field_to_list_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01295-operator-node.field_to_list_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01295.py -- tests/files/web/generated/M16-GAP-01295-operator-node.field_to_list_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01295", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01296", + "gapId": "operator:node.field_to_list_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01296-operator-node.field_to_list_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01296.py -- tests/files/web/generated/M16-GAP-01296-operator-node.field_to_list_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01296", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01297", + "gapId": "operator:node.field_to_list_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01297-operator-node.field_to_list_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01297.py -- tests/files/web/generated/M16-GAP-01297-operator-node.field_to_list_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01297", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01298", + "gapId": "operator:node.file_output_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01298-operator-node.file_output_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01298.py -- tests/files/web/generated/M16-GAP-01298-operator-node.file_output_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01298", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01299", + "gapId": "operator:node.file_output_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01299-operator-node.file_output_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01299.py -- tests/files/web/generated/M16-GAP-01299-operator-node.file_output_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01299", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01300", + "gapId": "operator:node.file_output_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01300-operator-node.file_output_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01300.py -- tests/files/web/generated/M16-GAP-01300-operator-node.file_output_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01300", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01301", + "gapId": "operator:node.find_node", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01301-operator-node.find_node.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01301.py -- tests/files/web/generated/M16-GAP-01301-operator-node.find_node.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01301", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01302", + "gapId": "operator:node.foreach_geometry_element_zone_generation_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01302-operator-node.foreach_geometry_element_zone_generation_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01302.py -- tests/files/web/generated/M16-GAP-01302-operator-node.foreach_geometry_element_zone_generation_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01302", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01303", + "gapId": "operator:node.foreach_geometry_element_zone_generation_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01303-operator-node.foreach_geometry_element_zone_generation_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01303.py -- tests/files/web/generated/M16-GAP-01303-operator-node.foreach_geometry_element_zone_generation_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01303", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01304", + "gapId": "operator:node.foreach_geometry_element_zone_generation_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01304-operator-node.foreach_geometry_element_zone_generation_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01304.py -- tests/files/web/generated/M16-GAP-01304-operator-node.foreach_geometry_element_zone_generation_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01304", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01305", + "gapId": "operator:node.foreach_geometry_element_zone_input_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01305-operator-node.foreach_geometry_element_zone_input_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01305.py -- tests/files/web/generated/M16-GAP-01305-operator-node.foreach_geometry_element_zone_input_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01305", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01306", + "gapId": "operator:node.foreach_geometry_element_zone_input_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01306-operator-node.foreach_geometry_element_zone_input_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01306.py -- tests/files/web/generated/M16-GAP-01306-operator-node.foreach_geometry_element_zone_input_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01306", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01307", + "gapId": "operator:node.foreach_geometry_element_zone_input_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01307-operator-node.foreach_geometry_element_zone_input_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01307.py -- tests/files/web/generated/M16-GAP-01307-operator-node.foreach_geometry_element_zone_input_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01307", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01308", + "gapId": "operator:node.foreach_geometry_element_zone_main_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01308-operator-node.foreach_geometry_element_zone_main_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01308.py -- tests/files/web/generated/M16-GAP-01308-operator-node.foreach_geometry_element_zone_main_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01308", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01309", + "gapId": "operator:node.foreach_geometry_element_zone_main_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01309-operator-node.foreach_geometry_element_zone_main_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01309.py -- tests/files/web/generated/M16-GAP-01309-operator-node.foreach_geometry_element_zone_main_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01309", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01310", + "gapId": "operator:node.foreach_geometry_element_zone_main_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01310-operator-node.foreach_geometry_element_zone_main_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01310.py -- tests/files/web/generated/M16-GAP-01310-operator-node.foreach_geometry_element_zone_main_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01310", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01311", + "gapId": "operator:node.format_string_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01311-operator-node.format_string_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01311.py -- tests/files/web/generated/M16-GAP-01311-operator-node.format_string_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01311", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01312", + "gapId": "operator:node.format_string_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01312-operator-node.format_string_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01312.py -- tests/files/web/generated/M16-GAP-01312-operator-node.format_string_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01312", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01313", + "gapId": "operator:node.format_string_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01313-operator-node.format_string_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01313.py -- tests/files/web/generated/M16-GAP-01313-operator-node.format_string_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01313", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01314", + "gapId": "operator:node.geometry_nodes_viewer_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01314-operator-node.geometry_nodes_viewer_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01314.py -- tests/files/web/generated/M16-GAP-01314-operator-node.geometry_nodes_viewer_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01314", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01315", + "gapId": "operator:node.geometry_nodes_viewer_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01315-operator-node.geometry_nodes_viewer_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01315.py -- tests/files/web/generated/M16-GAP-01315-operator-node.geometry_nodes_viewer_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01315", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01316", + "gapId": "operator:node.geometry_nodes_viewer_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01316-operator-node.geometry_nodes_viewer_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01316.py -- tests/files/web/generated/M16-GAP-01316-operator-node.geometry_nodes_viewer_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01316", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01317", + "gapId": "operator:node.gltf_settings_node_operator", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01317-operator-node.gltf_settings_node_operator.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01317.py -- tests/files/web/generated/M16-GAP-01317-operator-node.gltf_settings_node_operator.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01317", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01318", + "gapId": "operator:node.group_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01318-operator-node.group_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01318.py -- tests/files/web/generated/M16-GAP-01318-operator-node.group_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01318", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01319", + "gapId": "operator:node.group_enter_exit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01319-operator-node.group_enter_exit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01319.py -- tests/files/web/generated/M16-GAP-01319-operator-node.group_enter_exit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01319", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01320", + "gapId": "operator:node.group_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01320-operator-node.group_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01320.py -- tests/files/web/generated/M16-GAP-01320-operator-node.group_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01320", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01321", + "gapId": "operator:node.group_make", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01321-operator-node.group_make.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01321.py -- tests/files/web/generated/M16-GAP-01321-operator-node.group_make.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01321", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01322", + "gapId": "operator:node.group_separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01322-operator-node.group_separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01322.py -- tests/files/web/generated/M16-GAP-01322-operator-node.group_separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01322", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01323", + "gapId": "operator:node.group_ungroup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01323-operator-node.group_ungroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01323.py -- tests/files/web/generated/M16-GAP-01323-operator-node.group_ungroup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01323", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01324", + "gapId": "operator:node.hide_socket_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01324-operator-node.hide_socket_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01324.py -- tests/files/web/generated/M16-GAP-01324-operator-node.hide_socket_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01324", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01325", + "gapId": "operator:node.hide_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01325-operator-node.hide_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01325.py -- tests/files/web/generated/M16-GAP-01325-operator-node.hide_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01325", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01326", + "gapId": "operator:node.index_switch_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01326-operator-node.index_switch_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01326.py -- tests/files/web/generated/M16-GAP-01326-operator-node.index_switch_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01326", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01327", + "gapId": "operator:node.index_switch_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01327-operator-node.index_switch_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01327.py -- tests/files/web/generated/M16-GAP-01327-operator-node.index_switch_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01327", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01328", + "gapId": "operator:node.index_switch_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01328-operator-node.index_switch_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01328.py -- tests/files/web/generated/M16-GAP-01328-operator-node.index_switch_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01328", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01329", + "gapId": "operator:node.insert_offset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01329-operator-node.insert_offset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01329.py -- tests/files/web/generated/M16-GAP-01329-operator-node.insert_offset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01329", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01330", + "gapId": "operator:node.interface_item_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01330-operator-node.interface_item_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01330.py -- tests/files/web/generated/M16-GAP-01330-operator-node.interface_item_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01330", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01331", + "gapId": "operator:node.interface_item_make_panel_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01331-operator-node.interface_item_make_panel_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01331.py -- tests/files/web/generated/M16-GAP-01331-operator-node.interface_item_make_panel_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01331", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01332", + "gapId": "operator:node.interface_item_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01332-operator-node.interface_item_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01332.py -- tests/files/web/generated/M16-GAP-01332-operator-node.interface_item_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01332", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01333", + "gapId": "operator:node.interface_item_new_panel_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01333-operator-node.interface_item_new_panel_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01333.py -- tests/files/web/generated/M16-GAP-01333-operator-node.interface_item_new_panel_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01333", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01334", + "gapId": "operator:node.interface_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01334-operator-node.interface_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01334.py -- tests/files/web/generated/M16-GAP-01334-operator-node.interface_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01334", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01335", + "gapId": "operator:node.interface_item_unlink_panel_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01335-operator-node.interface_item_unlink_panel_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01335.py -- tests/files/web/generated/M16-GAP-01335-operator-node.interface_item_unlink_panel_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01335", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01336", + "gapId": "operator:node.join", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01336-operator-node.join.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01336.py -- tests/files/web/generated/M16-GAP-01336-operator-node.join.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01336", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01337", + "gapId": "operator:node.join_named", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01337-operator-node.join_named.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01337.py -- tests/files/web/generated/M16-GAP-01337-operator-node.join_named.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01337", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01338", + "gapId": "operator:node.join_nodes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01338-operator-node.join_nodes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01338.py -- tests/files/web/generated/M16-GAP-01338-operator-node.join_nodes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01338", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01339", + "gapId": "operator:node.link", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01339-operator-node.link.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01339.py -- tests/files/web/generated/M16-GAP-01339-operator-node.link.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01339", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01340", + "gapId": "operator:node.link_drag_operation_test", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01340-operator-node.link_drag_operation_test.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01340.py -- tests/files/web/generated/M16-GAP-01340-operator-node.link_drag_operation_test.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01340", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01341", + "gapId": "operator:node.link_make", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01341-operator-node.link_make.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01341.py -- tests/files/web/generated/M16-GAP-01341-operator-node.link_make.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01341", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01342", + "gapId": "operator:node.link_viewer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01342-operator-node.link_viewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01342.py -- tests/files/web/generated/M16-GAP-01342-operator-node.link_viewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01342", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01343", + "gapId": "operator:node.links_cut", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01343-operator-node.links_cut.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01343.py -- tests/files/web/generated/M16-GAP-01343-operator-node.links_cut.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01343", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01344", + "gapId": "operator:node.links_detach", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01344-operator-node.links_detach.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01344.py -- tests/files/web/generated/M16-GAP-01344-operator-node.links_detach.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01344", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01345", + "gapId": "operator:node.links_mute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01345-operator-node.links_mute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01345.py -- tests/files/web/generated/M16-GAP-01345-operator-node.links_mute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01345", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01346", + "gapId": "operator:node.move_detach_links", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01346-operator-node.move_detach_links.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01346.py -- tests/files/web/generated/M16-GAP-01346-operator-node.move_detach_links.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01346", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01347", + "gapId": "operator:node.move_detach_links_release", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01347-operator-node.move_detach_links_release.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01347.py -- tests/files/web/generated/M16-GAP-01347-operator-node.move_detach_links_release.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01347", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01348", + "gapId": "operator:node.mute_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01348-operator-node.mute_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01348.py -- tests/files/web/generated/M16-GAP-01348-operator-node.mute_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01348", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01349", + "gapId": "operator:node.new_compositing_node_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01349-operator-node.new_compositing_node_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01349.py -- tests/files/web/generated/M16-GAP-01349-operator-node.new_compositing_node_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01349", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01350", + "gapId": "operator:node.new_compositor_sequencer_node_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01350-operator-node.new_compositor_sequencer_node_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01350.py -- tests/files/web/generated/M16-GAP-01350-operator-node.new_compositor_sequencer_node_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01350", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01351", + "gapId": "operator:node.new_geometry_node_group_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01351-operator-node.new_geometry_node_group_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01351.py -- tests/files/web/generated/M16-GAP-01351-operator-node.new_geometry_node_group_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01351", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01352", + "gapId": "operator:node.new_geometry_node_group_tool", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01352-operator-node.new_geometry_node_group_tool.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01352.py -- tests/files/web/generated/M16-GAP-01352-operator-node.new_geometry_node_group_tool.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01352", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01353", + "gapId": "operator:node.new_geometry_nodes_modifier", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01353-operator-node.new_geometry_nodes_modifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01353.py -- tests/files/web/generated/M16-GAP-01353-operator-node.new_geometry_nodes_modifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01353", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01354", + "gapId": "operator:node.new_node_tree", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01354-operator-node.new_node_tree.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01354.py -- tests/files/web/generated/M16-GAP-01354-operator-node.new_node_tree.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01354", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01355", + "gapId": "operator:node.node_color_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01355-operator-node.node_color_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01355.py -- tests/files/web/generated/M16-GAP-01355-operator-node.node_color_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01355", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01356", + "gapId": "operator:node.node_copy_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01356-operator-node.node_copy_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01356.py -- tests/files/web/generated/M16-GAP-01356-operator-node.node_copy_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01356", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01357", + "gapId": "operator:node.options_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01357-operator-node.options_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01357.py -- tests/files/web/generated/M16-GAP-01357-operator-node.options_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01357", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01358", + "gapId": "operator:node.parent_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01358-operator-node.parent_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01358.py -- tests/files/web/generated/M16-GAP-01358-operator-node.parent_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01358", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01359", + "gapId": "operator:node.preview_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01359-operator-node.preview_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01359.py -- tests/files/web/generated/M16-GAP-01359-operator-node.preview_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01359", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01360", + "gapId": "operator:node.read_viewlayers", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01360-operator-node.read_viewlayers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01360.py -- tests/files/web/generated/M16-GAP-01360-operator-node.read_viewlayers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01360", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01361", + "gapId": "operator:node.render_changed", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01361-operator-node.render_changed.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01361.py -- tests/files/web/generated/M16-GAP-01361-operator-node.render_changed.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01361", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01362", + "gapId": "operator:node.repeat_zone_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01362-operator-node.repeat_zone_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01362.py -- tests/files/web/generated/M16-GAP-01362-operator-node.repeat_zone_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01362", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01363", + "gapId": "operator:node.repeat_zone_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01363-operator-node.repeat_zone_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01363.py -- tests/files/web/generated/M16-GAP-01363-operator-node.repeat_zone_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01363", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01364", + "gapId": "operator:node.repeat_zone_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01364-operator-node.repeat_zone_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01364.py -- tests/files/web/generated/M16-GAP-01364-operator-node.repeat_zone_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01364", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01365", + "gapId": "operator:node.resize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01365-operator-node.resize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01365.py -- tests/files/web/generated/M16-GAP-01365-operator-node.resize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01365", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01366", + "gapId": "operator:node.sample_attribute_items_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01366-operator-node.sample_attribute_items_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01366.py -- tests/files/web/generated/M16-GAP-01366-operator-node.sample_attribute_items_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01366", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01367", + "gapId": "operator:node.sample_attribute_items_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01367-operator-node.sample_attribute_items_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01367.py -- tests/files/web/generated/M16-GAP-01367-operator-node.sample_attribute_items_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01367", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01368", + "gapId": "operator:node.sample_attribute_items_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01368-operator-node.sample_attribute_items_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01368.py -- tests/files/web/generated/M16-GAP-01368-operator-node.sample_attribute_items_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01368", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01369", + "gapId": "operator:node.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01369-operator-node.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01369.py -- tests/files/web/generated/M16-GAP-01369-operator-node.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01369", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01370", + "gapId": "operator:node.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01370-operator-node.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01370.py -- tests/files/web/generated/M16-GAP-01370-operator-node.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01370", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01371", + "gapId": "operator:node.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01371-operator-node.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01371.py -- tests/files/web/generated/M16-GAP-01371-operator-node.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01371", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01372", + "gapId": "operator:node.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01372-operator-node.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01372.py -- tests/files/web/generated/M16-GAP-01372-operator-node.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01372", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01373", + "gapId": "operator:node.select_grouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01373-operator-node.select_grouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01373.py -- tests/files/web/generated/M16-GAP-01373-operator-node.select_grouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01373", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01374", + "gapId": "operator:node.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01374-operator-node.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01374.py -- tests/files/web/generated/M16-GAP-01374-operator-node.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01374", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01375", + "gapId": "operator:node.select_link_viewer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01375-operator-node.select_link_viewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01375.py -- tests/files/web/generated/M16-GAP-01375-operator-node.select_link_viewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01375", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01376", + "gapId": "operator:node.select_linked_from", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01376-operator-node.select_linked_from.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01376.py -- tests/files/web/generated/M16-GAP-01376-operator-node.select_linked_from.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01376", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01377", + "gapId": "operator:node.select_linked_to", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01377-operator-node.select_linked_to.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01377.py -- tests/files/web/generated/M16-GAP-01377-operator-node.select_linked_to.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01377", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01378", + "gapId": "operator:node.select_same_type_step", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01378-operator-node.select_same_type_step.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01378.py -- tests/files/web/generated/M16-GAP-01378-operator-node.select_same_type_step.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01378", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01379", + "gapId": "operator:node.separate_bundle_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01379-operator-node.separate_bundle_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01379.py -- tests/files/web/generated/M16-GAP-01379-operator-node.separate_bundle_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01379", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01380", + "gapId": "operator:node.separate_bundle_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01380-operator-node.separate_bundle_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01380.py -- tests/files/web/generated/M16-GAP-01380-operator-node.separate_bundle_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01380", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01381", + "gapId": "operator:node.separate_bundle_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01381-operator-node.separate_bundle_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01381.py -- tests/files/web/generated/M16-GAP-01381-operator-node.separate_bundle_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01381", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01382", + "gapId": "operator:node.shader_script_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01382-operator-node.shader_script_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01382.py -- tests/files/web/generated/M16-GAP-01382-operator-node.shader_script_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01382", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01383", + "gapId": "operator:node.simulation_zone_item_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01383-operator-node.simulation_zone_item_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01383.py -- tests/files/web/generated/M16-GAP-01383-operator-node.simulation_zone_item_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01383", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01384", + "gapId": "operator:node.simulation_zone_item_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01384-operator-node.simulation_zone_item_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01384.py -- tests/files/web/generated/M16-GAP-01384-operator-node.simulation_zone_item_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01384", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01385", + "gapId": "operator:node.simulation_zone_item_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01385-operator-node.simulation_zone_item_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01385.py -- tests/files/web/generated/M16-GAP-01385-operator-node.simulation_zone_item_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01385", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01386", + "gapId": "operator:node.sockets_sync", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01386-operator-node.sockets_sync.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01386.py -- tests/files/web/generated/M16-GAP-01386-operator-node.sockets_sync.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01386", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01387", + "gapId": "operator:node.swap_empty_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01387-operator-node.swap_empty_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01387.py -- tests/files/web/generated/M16-GAP-01387-operator-node.swap_empty_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01387", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01388", + "gapId": "operator:node.swap_group_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01388-operator-node.swap_group_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01388.py -- tests/files/web/generated/M16-GAP-01388-operator-node.swap_group_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01388", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01389", + "gapId": "operator:node.swap_node", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01389-operator-node.swap_node.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01389.py -- tests/files/web/generated/M16-GAP-01389-operator-node.swap_node.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01389", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01390", + "gapId": "operator:node.swap_typed_bundle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01390-operator-node.swap_typed_bundle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01390.py -- tests/files/web/generated/M16-GAP-01390-operator-node.swap_typed_bundle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01390", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01391", + "gapId": "operator:node.swap_zone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01391-operator-node.swap_zone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01391.py -- tests/files/web/generated/M16-GAP-01391-operator-node.swap_zone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01391", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01392", + "gapId": "operator:node.test_inlining_shader_nodes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01392-operator-node.test_inlining_shader_nodes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01392.py -- tests/files/web/generated/M16-GAP-01392-operator-node.test_inlining_shader_nodes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01392", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01393", + "gapId": "operator:node.toggle_viewer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01393-operator-node.toggle_viewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01393.py -- tests/files/web/generated/M16-GAP-01393-operator-node.toggle_viewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01393", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01394", + "gapId": "operator:node.translate_attach", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01394-operator-node.translate_attach.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01394.py -- tests/files/web/generated/M16-GAP-01394-operator-node.translate_attach.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01394", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01395", + "gapId": "operator:node.translate_attach_remove_on_cancel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01395-operator-node.translate_attach_remove_on_cancel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01395.py -- tests/files/web/generated/M16-GAP-01395-operator-node.translate_attach_remove_on_cancel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01395", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01396", + "gapId": "operator:node.tree_path_parent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01396-operator-node.tree_path_parent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01396.py -- tests/files/web/generated/M16-GAP-01396-operator-node.tree_path_parent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01396", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01397", + "gapId": "operator:node.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01397-operator-node.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01397.py -- tests/files/web/generated/M16-GAP-01397-operator-node.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01397", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01398", + "gapId": "operator:node.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01398-operator-node.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01398.py -- tests/files/web/generated/M16-GAP-01398-operator-node.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01398", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01399", + "gapId": "operator:node.viewer_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01399-operator-node.viewer_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01399.py -- tests/files/web/generated/M16-GAP-01399-operator-node.viewer_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01399", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01400", + "gapId": "operator:node.viewer_shortcut_get", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01400-operator-node.viewer_shortcut_get.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01400.py -- tests/files/web/generated/M16-GAP-01400-operator-node.viewer_shortcut_get.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01400", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01401", + "gapId": "operator:node.viewer_shortcut_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01401-operator-node.viewer_shortcut_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01401.py -- tests/files/web/generated/M16-GAP-01401-operator-node.viewer_shortcut_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01401", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01402", + "gapId": "operator:object.add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01402-operator-object.add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01402.py -- tests/files/web/generated/M16-GAP-01402-operator-object.add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01402", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01403", + "gapId": "operator:object.add_modifier_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01403-operator-object.add_modifier_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01403.py -- tests/files/web/generated/M16-GAP-01403-operator-object.add_modifier_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01403", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01404", + "gapId": "operator:object.add_named", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01404-operator-object.add_named.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01404.py -- tests/files/web/generated/M16-GAP-01404-operator-object.add_named.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01404", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01405", + "gapId": "operator:object.align", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01405-operator-object.align.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01405.py -- tests/files/web/generated/M16-GAP-01405-operator-object.align.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01405", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01406", + "gapId": "operator:object.anim_transforms_to_deltas", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01406-operator-object.anim_transforms_to_deltas.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01406.py -- tests/files/web/generated/M16-GAP-01406-operator-object.anim_transforms_to_deltas.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01406", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01407", + "gapId": "operator:object.armature_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01407-operator-object.armature_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01407.py -- tests/files/web/generated/M16-GAP-01407-operator-object.armature_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01407", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01408", + "gapId": "operator:object.assign_property_defaults", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01408-operator-object.assign_property_defaults.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01408.py -- tests/files/web/generated/M16-GAP-01408-operator-object.assign_property_defaults.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01408", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01409", + "gapId": "operator:object.bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01409-operator-object.bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01409.py -- tests/files/web/generated/M16-GAP-01409-operator-object.bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01409", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01410", + "gapId": "operator:object.bake_image", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01410-operator-object.bake_image.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01410.py -- tests/files/web/generated/M16-GAP-01410-operator-object.bake_image.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01410", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01411", + "gapId": "operator:object.camera_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01411-operator-object.camera_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01411.py -- tests/files/web/generated/M16-GAP-01411-operator-object.camera_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01411", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01412", + "gapId": "operator:object.camera_custom_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01412-operator-object.camera_custom_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01412.py -- tests/files/web/generated/M16-GAP-01412-operator-object.camera_custom_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01412", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01413", + "gapId": "operator:object.clear_override_library", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01413-operator-object.clear_override_library.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01413.py -- tests/files/web/generated/M16-GAP-01413-operator-object.clear_override_library.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01413", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01414", + "gapId": "operator:object.collection_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01414-operator-object.collection_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01414.py -- tests/files/web/generated/M16-GAP-01414-operator-object.collection_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01414", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01415", + "gapId": "operator:object.collection_external_asset_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01415-operator-object.collection_external_asset_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01415.py -- tests/files/web/generated/M16-GAP-01415-operator-object.collection_external_asset_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01415", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01416", + "gapId": "operator:object.collection_instance_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01416-operator-object.collection_instance_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01416.py -- tests/files/web/generated/M16-GAP-01416-operator-object.collection_instance_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01416", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01417", + "gapId": "operator:object.collection_link", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01417-operator-object.collection_link.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01417.py -- tests/files/web/generated/M16-GAP-01417-operator-object.collection_link.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01417", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01418", + "gapId": "operator:object.collection_objects_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01418-operator-object.collection_objects_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01418.py -- tests/files/web/generated/M16-GAP-01418-operator-object.collection_objects_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01418", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01419", + "gapId": "operator:object.collection_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01419-operator-object.collection_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01419.py -- tests/files/web/generated/M16-GAP-01419-operator-object.collection_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01419", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01420", + "gapId": "operator:object.collection_unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01420-operator-object.collection_unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01420.py -- tests/files/web/generated/M16-GAP-01420-operator-object.collection_unlink.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01420", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01421", + "gapId": "operator:object.constraint_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01421-operator-object.constraint_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01421.py -- tests/files/web/generated/M16-GAP-01421-operator-object.constraint_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01421", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01422", + "gapId": "operator:object.constraint_add_with_targets", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01422-operator-object.constraint_add_with_targets.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01422.py -- tests/files/web/generated/M16-GAP-01422-operator-object.constraint_add_with_targets.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01422", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01423", + "gapId": "operator:object.constraints_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01423-operator-object.constraints_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01423.py -- tests/files/web/generated/M16-GAP-01423-operator-object.constraints_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01423", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01424", + "gapId": "operator:object.constraints_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01424-operator-object.constraints_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01424.py -- tests/files/web/generated/M16-GAP-01424-operator-object.constraints_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01424", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01425", + "gapId": "operator:object.convert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01425-operator-object.convert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01425.py -- tests/files/web/generated/M16-GAP-01425-operator-object.convert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01425", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01426", + "gapId": "operator:object.copy_global_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01426-operator-object.copy_global_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01426.py -- tests/files/web/generated/M16-GAP-01426-operator-object.copy_global_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01426", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01427", + "gapId": "operator:object.copy_relative_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01427-operator-object.copy_relative_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01427.py -- tests/files/web/generated/M16-GAP-01427-operator-object.copy_relative_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01427", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01428", + "gapId": "operator:object.correctivesmooth_bind", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01428-operator-object.correctivesmooth_bind.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01428.py -- tests/files/web/generated/M16-GAP-01428-operator-object.correctivesmooth_bind.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01428", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01429", + "gapId": "operator:object.curves_empty_hair_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01429-operator-object.curves_empty_hair_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01429.py -- tests/files/web/generated/M16-GAP-01429-operator-object.curves_empty_hair_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01429", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01430", + "gapId": "operator:object.curves_random_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01430-operator-object.curves_random_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01430.py -- tests/files/web/generated/M16-GAP-01430-operator-object.curves_random_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01430", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01431", + "gapId": "operator:object.data_instance_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01431-operator-object.data_instance_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01431.py -- tests/files/web/generated/M16-GAP-01431-operator-object.data_instance_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01431", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01432", + "gapId": "operator:object.data_transfer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01432-operator-object.data_transfer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01432.py -- tests/files/web/generated/M16-GAP-01432-operator-object.data_transfer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01432", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01433", + "gapId": "operator:object.datalayout_transfer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01433-operator-object.datalayout_transfer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01433.py -- tests/files/web/generated/M16-GAP-01433-operator-object.datalayout_transfer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01433", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01434", + "gapId": "operator:object.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01434-operator-object.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01434.py -- tests/files/web/generated/M16-GAP-01434-operator-object.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01434", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01435", + "gapId": "operator:object.delete_fix_to_camera_keys", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01435-operator-object.delete_fix_to_camera_keys.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01435.py -- tests/files/web/generated/M16-GAP-01435-operator-object.delete_fix_to_camera_keys.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01435", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01436", + "gapId": "operator:object.drop_geometry_nodes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01436-operator-object.drop_geometry_nodes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01436.py -- tests/files/web/generated/M16-GAP-01436-operator-object.drop_geometry_nodes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01436", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01437", + "gapId": "operator:object.drop_named_material", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01437-operator-object.drop_named_material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01437.py -- tests/files/web/generated/M16-GAP-01437-operator-object.drop_named_material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01437", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01438", + "gapId": "operator:object.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01438-operator-object.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01438.py -- tests/files/web/generated/M16-GAP-01438-operator-object.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01438", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01439", + "gapId": "operator:object.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01439-operator-object.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01439.py -- tests/files/web/generated/M16-GAP-01439-operator-object.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01439", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01440", + "gapId": "operator:object.duplicate_move_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01440-operator-object.duplicate_move_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01440.py -- tests/files/web/generated/M16-GAP-01440-operator-object.duplicate_move_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01440", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01441", + "gapId": "operator:object.duplicates_make_real", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01441-operator-object.duplicates_make_real.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01441.py -- tests/files/web/generated/M16-GAP-01441-operator-object.duplicates_make_real.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01441", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01442", + "gapId": "operator:object.editmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01442-operator-object.editmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01442.py -- tests/files/web/generated/M16-GAP-01442-operator-object.editmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01442", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01443", + "gapId": "operator:object.effector_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01443-operator-object.effector_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01443.py -- tests/files/web/generated/M16-GAP-01443-operator-object.effector_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01443", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01444", + "gapId": "operator:object.empty_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01444-operator-object.empty_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01444.py -- tests/files/web/generated/M16-GAP-01444-operator-object.empty_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01444", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01445", + "gapId": "operator:object.empty_image_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01445-operator-object.empty_image_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01445.py -- tests/files/web/generated/M16-GAP-01445-operator-object.empty_image_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01445", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01446", + "gapId": "operator:object.explode_refresh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01446-operator-object.explode_refresh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01446.py -- tests/files/web/generated/M16-GAP-01446-operator-object.explode_refresh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01446", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01447", + "gapId": "operator:object.fix_to_camera", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01447-operator-object.fix_to_camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01447.py -- tests/files/web/generated/M16-GAP-01447-operator-object.fix_to_camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01447", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01448", + "gapId": "operator:object.forcefield_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01448-operator-object.forcefield_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01448.py -- tests/files/web/generated/M16-GAP-01448-operator-object.forcefield_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01448", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01449", + "gapId": "operator:object.geometry_node_bake_delete_single", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01449-operator-object.geometry_node_bake_delete_single.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01449.py -- tests/files/web/generated/M16-GAP-01449-operator-object.geometry_node_bake_delete_single.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01449", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01450", + "gapId": "operator:object.geometry_node_bake_pack_single", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01450-operator-object.geometry_node_bake_pack_single.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01450.py -- tests/files/web/generated/M16-GAP-01450-operator-object.geometry_node_bake_pack_single.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01450", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01451", + "gapId": "operator:object.geometry_node_bake_single", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01451-operator-object.geometry_node_bake_single.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01451.py -- tests/files/web/generated/M16-GAP-01451-operator-object.geometry_node_bake_single.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01451", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01452", + "gapId": "operator:object.geometry_node_bake_unpack_single", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01452-operator-object.geometry_node_bake_unpack_single.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01452.py -- tests/files/web/generated/M16-GAP-01452-operator-object.geometry_node_bake_unpack_single.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01452", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01453", + "gapId": "operator:object.geometry_node_tree_copy_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01453-operator-object.geometry_node_tree_copy_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01453.py -- tests/files/web/generated/M16-GAP-01453-operator-object.geometry_node_tree_copy_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01453", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01454", + "gapId": "operator:object.geometry_nodes_input_attribute_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01454-operator-object.geometry_nodes_input_attribute_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01454.py -- tests/files/web/generated/M16-GAP-01454-operator-object.geometry_nodes_input_attribute_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01454", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01455", + "gapId": "operator:object.geometry_nodes_move_to_nodes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01455-operator-object.geometry_nodes_move_to_nodes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01455.py -- tests/files/web/generated/M16-GAP-01455-operator-object.geometry_nodes_move_to_nodes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01455", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01456", + "gapId": "operator:object.grease_pencil_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01456-operator-object.grease_pencil_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01456.py -- tests/files/web/generated/M16-GAP-01456-operator-object.grease_pencil_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01456", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01457", + "gapId": "operator:object.grease_pencil_dash_modifier_segment_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01457-operator-object.grease_pencil_dash_modifier_segment_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01457.py -- tests/files/web/generated/M16-GAP-01457-operator-object.grease_pencil_dash_modifier_segment_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01457", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01458", + "gapId": "operator:object.grease_pencil_dash_modifier_segment_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01458-operator-object.grease_pencil_dash_modifier_segment_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01458.py -- tests/files/web/generated/M16-GAP-01458-operator-object.grease_pencil_dash_modifier_segment_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01458", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01459", + "gapId": "operator:object.grease_pencil_dash_modifier_segment_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01459-operator-object.grease_pencil_dash_modifier_segment_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01459.py -- tests/files/web/generated/M16-GAP-01459-operator-object.grease_pencil_dash_modifier_segment_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01459", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01460", + "gapId": "operator:object.grease_pencil_time_modifier_segment_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01460-operator-object.grease_pencil_time_modifier_segment_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01460.py -- tests/files/web/generated/M16-GAP-01460-operator-object.grease_pencil_time_modifier_segment_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01460", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01461", + "gapId": "operator:object.grease_pencil_time_modifier_segment_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01461-operator-object.grease_pencil_time_modifier_segment_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01461.py -- tests/files/web/generated/M16-GAP-01461-operator-object.grease_pencil_time_modifier_segment_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01461", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01462", + "gapId": "operator:object.grease_pencil_time_modifier_segment_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01462-operator-object.grease_pencil_time_modifier_segment_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01462.py -- tests/files/web/generated/M16-GAP-01462-operator-object.grease_pencil_time_modifier_segment_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01462", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01463", + "gapId": "operator:object.hide_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01463-operator-object.hide_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01463.py -- tests/files/web/generated/M16-GAP-01463-operator-object.hide_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01463", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01464", + "gapId": "operator:object.hide_render_clear_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01464-operator-object.hide_render_clear_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01464.py -- tests/files/web/generated/M16-GAP-01464-operator-object.hide_render_clear_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01464", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01465", + "gapId": "operator:object.hide_view_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01465-operator-object.hide_view_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01465.py -- tests/files/web/generated/M16-GAP-01465-operator-object.hide_view_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01465", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01466", + "gapId": "operator:object.hide_view_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01466-operator-object.hide_view_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01466.py -- tests/files/web/generated/M16-GAP-01466-operator-object.hide_view_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01466", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01467", + "gapId": "operator:object.hook_add_newob", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01467-operator-object.hook_add_newob.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01467.py -- tests/files/web/generated/M16-GAP-01467-operator-object.hook_add_newob.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01467", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01468", + "gapId": "operator:object.hook_add_selob", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01468-operator-object.hook_add_selob.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01468.py -- tests/files/web/generated/M16-GAP-01468-operator-object.hook_add_selob.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01468", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01469", + "gapId": "operator:object.hook_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01469-operator-object.hook_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01469.py -- tests/files/web/generated/M16-GAP-01469-operator-object.hook_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01469", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01470", + "gapId": "operator:object.hook_recenter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01470-operator-object.hook_recenter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01470.py -- tests/files/web/generated/M16-GAP-01470-operator-object.hook_recenter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01470", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01471", + "gapId": "operator:object.hook_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01471-operator-object.hook_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01471.py -- tests/files/web/generated/M16-GAP-01471-operator-object.hook_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01471", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01472", + "gapId": "operator:object.hook_reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01472-operator-object.hook_reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01472.py -- tests/files/web/generated/M16-GAP-01472-operator-object.hook_reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01472", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01473", + "gapId": "operator:object.hook_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01473-operator-object.hook_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01473.py -- tests/files/web/generated/M16-GAP-01473-operator-object.hook_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01473", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01474", + "gapId": "operator:object.instance_offset_from_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01474-operator-object.instance_offset_from_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01474.py -- tests/files/web/generated/M16-GAP-01474-operator-object.instance_offset_from_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01474", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01475", + "gapId": "operator:object.instance_offset_from_object", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01475-operator-object.instance_offset_from_object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01475.py -- tests/files/web/generated/M16-GAP-01475-operator-object.instance_offset_from_object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01475", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01476", + "gapId": "operator:object.instance_offset_to_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01476-operator-object.instance_offset_to_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01476.py -- tests/files/web/generated/M16-GAP-01476-operator-object.instance_offset_to_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01476", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01477", + "gapId": "operator:object.isolate_type_render", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01477-operator-object.isolate_type_render.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01477.py -- tests/files/web/generated/M16-GAP-01477-operator-object.isolate_type_render.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01477", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01478", + "gapId": "operator:object.join", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01478-operator-object.join.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01478.py -- tests/files/web/generated/M16-GAP-01478-operator-object.join.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01478", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01479", + "gapId": "operator:object.join_shapes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01479-operator-object.join_shapes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01479.py -- tests/files/web/generated/M16-GAP-01479-operator-object.join_shapes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01479", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01480", + "gapId": "operator:object.join_uvs", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01480-operator-object.join_uvs.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01480.py -- tests/files/web/generated/M16-GAP-01480-operator-object.join_uvs.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01480", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01481", + "gapId": "operator:object.laplaciandeform_bind", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01481-operator-object.laplaciandeform_bind.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01481.py -- tests/files/web/generated/M16-GAP-01481-operator-object.laplaciandeform_bind.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01481", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01482", + "gapId": "operator:object.lattice_add_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01482-operator-object.lattice_add_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01482.py -- tests/files/web/generated/M16-GAP-01482-operator-object.lattice_add_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01482", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01483", + "gapId": "operator:object.light_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01483-operator-object.light_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01483.py -- tests/files/web/generated/M16-GAP-01483-operator-object.light_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01483", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01484", + "gapId": "operator:object.light_linking_blocker_collection_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01484-operator-object.light_linking_blocker_collection_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01484.py -- tests/files/web/generated/M16-GAP-01484-operator-object.light_linking_blocker_collection_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01484", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01485", + "gapId": "operator:object.light_linking_blockers_link", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01485-operator-object.light_linking_blockers_link.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01485.py -- tests/files/web/generated/M16-GAP-01485-operator-object.light_linking_blockers_link.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01485", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01486", + "gapId": "operator:object.light_linking_blockers_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01486-operator-object.light_linking_blockers_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01486.py -- tests/files/web/generated/M16-GAP-01486-operator-object.light_linking_blockers_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01486", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01487", + "gapId": "operator:object.light_linking_receiver_collection_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01487-operator-object.light_linking_receiver_collection_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01487.py -- tests/files/web/generated/M16-GAP-01487-operator-object.light_linking_receiver_collection_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01487", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01488", + "gapId": "operator:object.light_linking_receivers_link", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01488-operator-object.light_linking_receivers_link.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01488.py -- tests/files/web/generated/M16-GAP-01488-operator-object.light_linking_receivers_link.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01488", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01489", + "gapId": "operator:object.light_linking_receivers_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01489-operator-object.light_linking_receivers_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01489.py -- tests/files/web/generated/M16-GAP-01489-operator-object.light_linking_receivers_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01489", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01490", + "gapId": "operator:object.light_linking_unlink_from_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01490-operator-object.light_linking_unlink_from_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01490.py -- tests/files/web/generated/M16-GAP-01490-operator-object.light_linking_unlink_from_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01490", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01491", + "gapId": "operator:object.lightprobe_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01491-operator-object.lightprobe_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01491.py -- tests/files/web/generated/M16-GAP-01491-operator-object.lightprobe_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01491", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01492", + "gapId": "operator:object.lightprobe_cache_bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01492-operator-object.lightprobe_cache_bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01492.py -- tests/files/web/generated/M16-GAP-01492-operator-object.lightprobe_cache_bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01492", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01493", + "gapId": "operator:object.lightprobe_cache_free", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01493-operator-object.lightprobe_cache_free.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01493.py -- tests/files/web/generated/M16-GAP-01493-operator-object.lightprobe_cache_free.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01493", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01494", + "gapId": "operator:object.lineart_bake_strokes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01494-operator-object.lineart_bake_strokes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01494.py -- tests/files/web/generated/M16-GAP-01494-operator-object.lineart_bake_strokes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01494", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01495", + "gapId": "operator:object.lineart_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01495-operator-object.lineart_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01495.py -- tests/files/web/generated/M16-GAP-01495-operator-object.lineart_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01495", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01496", + "gapId": "operator:object.link_to_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01496-operator-object.link_to_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01496.py -- tests/files/web/generated/M16-GAP-01496-operator-object.link_to_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01496", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01497", + "gapId": "operator:object.location_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01497-operator-object.location_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01497.py -- tests/files/web/generated/M16-GAP-01497-operator-object.location_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01497", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01498", + "gapId": "operator:object.make_dupli_face", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01498-operator-object.make_dupli_face.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01498.py -- tests/files/web/generated/M16-GAP-01498-operator-object.make_dupli_face.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01498", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01499", + "gapId": "operator:object.make_links_data", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01499-operator-object.make_links_data.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01499.py -- tests/files/web/generated/M16-GAP-01499-operator-object.make_links_data.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01499", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01500", + "gapId": "operator:object.make_links_scene", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01500-operator-object.make_links_scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01500.py -- tests/files/web/generated/M16-GAP-01500-operator-object.make_links_scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01500", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01501", + "gapId": "operator:object.make_local", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01501-operator-object.make_local.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01501.py -- tests/files/web/generated/M16-GAP-01501-operator-object.make_local.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01501", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01502", + "gapId": "operator:object.make_override_library", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01502-operator-object.make_override_library.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01502.py -- tests/files/web/generated/M16-GAP-01502-operator-object.make_override_library.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01502", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01503", + "gapId": "operator:object.make_single_user", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01503-operator-object.make_single_user.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01503.py -- tests/files/web/generated/M16-GAP-01503-operator-object.make_single_user.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01503", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01504", + "gapId": "operator:object.material_slot_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01504-operator-object.material_slot_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01504.py -- tests/files/web/generated/M16-GAP-01504-operator-object.material_slot_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01504", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01505", + "gapId": "operator:object.material_slot_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01505-operator-object.material_slot_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01505.py -- tests/files/web/generated/M16-GAP-01505-operator-object.material_slot_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01505", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01506", + "gapId": "operator:object.material_slot_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01506-operator-object.material_slot_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01506.py -- tests/files/web/generated/M16-GAP-01506-operator-object.material_slot_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01506", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01507", + "gapId": "operator:object.material_slot_deselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01507-operator-object.material_slot_deselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01507.py -- tests/files/web/generated/M16-GAP-01507-operator-object.material_slot_deselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01507", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01508", + "gapId": "operator:object.material_slot_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01508-operator-object.material_slot_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01508.py -- tests/files/web/generated/M16-GAP-01508-operator-object.material_slot_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01508", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01509", + "gapId": "operator:object.material_slot_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01509-operator-object.material_slot_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01509.py -- tests/files/web/generated/M16-GAP-01509-operator-object.material_slot_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01509", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01510", + "gapId": "operator:object.material_slot_remove_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01510-operator-object.material_slot_remove_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01510.py -- tests/files/web/generated/M16-GAP-01510-operator-object.material_slot_remove_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01510", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01511", + "gapId": "operator:object.material_slot_remove_unused", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01511-operator-object.material_slot_remove_unused.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01511.py -- tests/files/web/generated/M16-GAP-01511-operator-object.material_slot_remove_unused.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01511", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01512", + "gapId": "operator:object.material_slot_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01512-operator-object.material_slot_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01512.py -- tests/files/web/generated/M16-GAP-01512-operator-object.material_slot_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01512", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01513", + "gapId": "operator:object.meshdeform_bind", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01513-operator-object.meshdeform_bind.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01513.py -- tests/files/web/generated/M16-GAP-01513-operator-object.meshdeform_bind.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01513", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01514", + "gapId": "operator:object.metaball_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01514-operator-object.metaball_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01514.py -- tests/files/web/generated/M16-GAP-01514-operator-object.metaball_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01514", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01515", + "gapId": "operator:object.mode_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01515-operator-object.mode_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01515.py -- tests/files/web/generated/M16-GAP-01515-operator-object.mode_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01515", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01516", + "gapId": "operator:object.mode_set_with_submode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01516-operator-object.mode_set_with_submode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01516.py -- tests/files/web/generated/M16-GAP-01516-operator-object.mode_set_with_submode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01516", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01517", + "gapId": "operator:object.modifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01517-operator-object.modifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01517.py -- tests/files/web/generated/M16-GAP-01517-operator-object.modifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01517", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01518", + "gapId": "operator:object.modifier_add_node_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01518-operator-object.modifier_add_node_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01518.py -- tests/files/web/generated/M16-GAP-01518-operator-object.modifier_add_node_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01518", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01519", + "gapId": "operator:object.modifier_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01519-operator-object.modifier_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01519.py -- tests/files/web/generated/M16-GAP-01519-operator-object.modifier_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01519", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01520", + "gapId": "operator:object.modifier_apply_as_shapekey", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01520-operator-object.modifier_apply_as_shapekey.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01520.py -- tests/files/web/generated/M16-GAP-01520-operator-object.modifier_apply_as_shapekey.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01520", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01521", + "gapId": "operator:object.modifier_convert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01521-operator-object.modifier_convert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01521.py -- tests/files/web/generated/M16-GAP-01521-operator-object.modifier_convert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01521", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01522", + "gapId": "operator:object.modifier_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01522-operator-object.modifier_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01522.py -- tests/files/web/generated/M16-GAP-01522-operator-object.modifier_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01522", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01523", + "gapId": "operator:object.modifier_copy_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01523-operator-object.modifier_copy_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01523.py -- tests/files/web/generated/M16-GAP-01523-operator-object.modifier_copy_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01523", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01524", + "gapId": "operator:object.modifier_move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01524-operator-object.modifier_move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01524.py -- tests/files/web/generated/M16-GAP-01524-operator-object.modifier_move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01524", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01525", + "gapId": "operator:object.modifier_move_to_index", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01525-operator-object.modifier_move_to_index.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01525.py -- tests/files/web/generated/M16-GAP-01525-operator-object.modifier_move_to_index.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01525", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01526", + "gapId": "operator:object.modifier_move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01526-operator-object.modifier_move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01526.py -- tests/files/web/generated/M16-GAP-01526-operator-object.modifier_move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01526", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01527", + "gapId": "operator:object.modifier_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01527-operator-object.modifier_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01527.py -- tests/files/web/generated/M16-GAP-01527-operator-object.modifier_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01527", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01528", + "gapId": "operator:object.modifier_set_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01528-operator-object.modifier_set_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01528.py -- tests/files/web/generated/M16-GAP-01528-operator-object.modifier_set_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01528", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01529", + "gapId": "operator:object.modifiers_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01529-operator-object.modifiers_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01529.py -- tests/files/web/generated/M16-GAP-01529-operator-object.modifiers_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01529", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01530", + "gapId": "operator:object.modifiers_copy_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01530-operator-object.modifiers_copy_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01530.py -- tests/files/web/generated/M16-GAP-01530-operator-object.modifiers_copy_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01530", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01531", + "gapId": "operator:object.move_to_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01531-operator-object.move_to_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01531.py -- tests/files/web/generated/M16-GAP-01531-operator-object.move_to_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01531", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01532", + "gapId": "operator:object.multires_base_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01532-operator-object.multires_base_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01532.py -- tests/files/web/generated/M16-GAP-01532-operator-object.multires_base_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01532", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01533", + "gapId": "operator:object.multires_external_pack", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01533-operator-object.multires_external_pack.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01533.py -- tests/files/web/generated/M16-GAP-01533-operator-object.multires_external_pack.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01533", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01534", + "gapId": "operator:object.multires_external_save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01534-operator-object.multires_external_save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01534.py -- tests/files/web/generated/M16-GAP-01534-operator-object.multires_external_save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01534", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01535", + "gapId": "operator:object.multires_higher_levels_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01535-operator-object.multires_higher_levels_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01535.py -- tests/files/web/generated/M16-GAP-01535-operator-object.multires_higher_levels_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01535", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01536", + "gapId": "operator:object.multires_rebuild_subdiv", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01536-operator-object.multires_rebuild_subdiv.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01536.py -- tests/files/web/generated/M16-GAP-01536-operator-object.multires_rebuild_subdiv.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01536", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01537", + "gapId": "operator:object.multires_reshape", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01537-operator-object.multires_reshape.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01537.py -- tests/files/web/generated/M16-GAP-01537-operator-object.multires_reshape.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01537", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01538", + "gapId": "operator:object.multires_subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01538-operator-object.multires_subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01538.py -- tests/files/web/generated/M16-GAP-01538-operator-object.multires_subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01538", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01539", + "gapId": "operator:object.multires_unsubdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01539-operator-object.multires_unsubdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01539.py -- tests/files/web/generated/M16-GAP-01539-operator-object.multires_unsubdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01539", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01540", + "gapId": "operator:object.ocean_bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01540-operator-object.ocean_bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01540.py -- tests/files/web/generated/M16-GAP-01540-operator-object.ocean_bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01540", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01541", + "gapId": "operator:object.origin_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01541-operator-object.origin_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01541.py -- tests/files/web/generated/M16-GAP-01541-operator-object.origin_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01541", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01542", + "gapId": "operator:object.origin_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01542-operator-object.origin_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01542.py -- tests/files/web/generated/M16-GAP-01542-operator-object.origin_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01542", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01543", + "gapId": "operator:object.parent_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01543-operator-object.parent_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01543.py -- tests/files/web/generated/M16-GAP-01543-operator-object.parent_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01543", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01544", + "gapId": "operator:object.parent_inverse_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01544-operator-object.parent_inverse_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01544.py -- tests/files/web/generated/M16-GAP-01544-operator-object.parent_inverse_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01544", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01545", + "gapId": "operator:object.parent_no_inverse_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01545-operator-object.parent_no_inverse_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01545.py -- tests/files/web/generated/M16-GAP-01545-operator-object.parent_no_inverse_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01545", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01546", + "gapId": "operator:object.parent_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01546-operator-object.parent_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01546.py -- tests/files/web/generated/M16-GAP-01546-operator-object.parent_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01546", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01547", + "gapId": "operator:object.particle_system_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01547-operator-object.particle_system_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01547.py -- tests/files/web/generated/M16-GAP-01547-operator-object.particle_system_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01547", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01548", + "gapId": "operator:object.particle_system_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01548-operator-object.particle_system_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01548.py -- tests/files/web/generated/M16-GAP-01548-operator-object.particle_system_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01548", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01549", + "gapId": "operator:object.paste_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01549-operator-object.paste_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01549.py -- tests/files/web/generated/M16-GAP-01549-operator-object.paste_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01549", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01550", + "gapId": "operator:object.paths_calculate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01550-operator-object.paths_calculate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01550.py -- tests/files/web/generated/M16-GAP-01550-operator-object.paths_calculate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01550", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01551", + "gapId": "operator:object.paths_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01551-operator-object.paths_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01551.py -- tests/files/web/generated/M16-GAP-01551-operator-object.paths_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01551", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01552", + "gapId": "operator:object.paths_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01552-operator-object.paths_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01552.py -- tests/files/web/generated/M16-GAP-01552-operator-object.paths_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01552", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01553", + "gapId": "operator:object.paths_update_visible", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01553-operator-object.paths_update_visible.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01553.py -- tests/files/web/generated/M16-GAP-01553-operator-object.paths_update_visible.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01553", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01554", + "gapId": "operator:object.pointcloud_random_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01554-operator-object.pointcloud_random_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01554.py -- tests/files/web/generated/M16-GAP-01554-operator-object.pointcloud_random_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01554", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01555", + "gapId": "operator:object.posemode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01555-operator-object.posemode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01555.py -- tests/files/web/generated/M16-GAP-01555-operator-object.posemode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01555", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01556", + "gapId": "operator:object.quadriflow_remesh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01556-operator-object.quadriflow_remesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01556.py -- tests/files/web/generated/M16-GAP-01556-operator-object.quadriflow_remesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01556", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01557", + "gapId": "operator:object.quick_explode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01557-operator-object.quick_explode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01557.py -- tests/files/web/generated/M16-GAP-01557-operator-object.quick_explode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01557", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01558", + "gapId": "operator:object.quick_fur", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01558-operator-object.quick_fur.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01558.py -- tests/files/web/generated/M16-GAP-01558-operator-object.quick_fur.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01558", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01559", + "gapId": "operator:object.quick_liquid", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01559-operator-object.quick_liquid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01559.py -- tests/files/web/generated/M16-GAP-01559-operator-object.quick_liquid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01559", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01560", + "gapId": "operator:object.quick_smoke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01560-operator-object.quick_smoke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01560.py -- tests/files/web/generated/M16-GAP-01560-operator-object.quick_smoke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01560", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01561", + "gapId": "operator:object.randomize_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01561-operator-object.randomize_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01561.py -- tests/files/web/generated/M16-GAP-01561-operator-object.randomize_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01561", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01562", + "gapId": "operator:object.reset_override_library", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01562-operator-object.reset_override_library.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01562.py -- tests/files/web/generated/M16-GAP-01562-operator-object.reset_override_library.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01562", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01563", + "gapId": "operator:object.rotation_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01563-operator-object.rotation_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01563.py -- tests/files/web/generated/M16-GAP-01563-operator-object.rotation_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01563", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01564", + "gapId": "operator:object.scale_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01564-operator-object.scale_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01564.py -- tests/files/web/generated/M16-GAP-01564-operator-object.scale_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01564", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01565", + "gapId": "operator:object.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01565-operator-object.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01565.py -- tests/files/web/generated/M16-GAP-01565-operator-object.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01565", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01566", + "gapId": "operator:object.select_by_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01566-operator-object.select_by_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01566.py -- tests/files/web/generated/M16-GAP-01566-operator-object.select_by_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01566", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01567", + "gapId": "operator:object.select_camera", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01567-operator-object.select_camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01567.py -- tests/files/web/generated/M16-GAP-01567-operator-object.select_camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01567", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01568", + "gapId": "operator:object.select_grouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01568-operator-object.select_grouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01568.py -- tests/files/web/generated/M16-GAP-01568-operator-object.select_grouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01568", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01569", + "gapId": "operator:object.select_hierarchy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01569-operator-object.select_hierarchy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01569.py -- tests/files/web/generated/M16-GAP-01569-operator-object.select_hierarchy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01569", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01570", + "gapId": "operator:object.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01570-operator-object.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01570.py -- tests/files/web/generated/M16-GAP-01570-operator-object.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01570", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01571", + "gapId": "operator:object.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01571-operator-object.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01571.py -- tests/files/web/generated/M16-GAP-01571-operator-object.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01571", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01572", + "gapId": "operator:object.select_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01572-operator-object.select_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01572.py -- tests/files/web/generated/M16-GAP-01572-operator-object.select_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01572", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01573", + "gapId": "operator:object.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01573-operator-object.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01573.py -- tests/files/web/generated/M16-GAP-01573-operator-object.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01573", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01574", + "gapId": "operator:object.select_pattern", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01574-operator-object.select_pattern.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01574.py -- tests/files/web/generated/M16-GAP-01574-operator-object.select_pattern.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01574", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01575", + "gapId": "operator:object.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01575-operator-object.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01575.py -- tests/files/web/generated/M16-GAP-01575-operator-object.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01575", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01576", + "gapId": "operator:object.select_same_collection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01576-operator-object.select_same_collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01576.py -- tests/files/web/generated/M16-GAP-01576-operator-object.select_same_collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01576", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01577", + "gapId": "operator:object.shade_auto_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01577-operator-object.shade_auto_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01577.py -- tests/files/web/generated/M16-GAP-01577-operator-object.shade_auto_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01577", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01578", + "gapId": "operator:object.shade_flat", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01578-operator-object.shade_flat.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01578.py -- tests/files/web/generated/M16-GAP-01578-operator-object.shade_flat.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01578", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01579", + "gapId": "operator:object.shade_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01579-operator-object.shade_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01579.py -- tests/files/web/generated/M16-GAP-01579-operator-object.shade_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01579", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01580", + "gapId": "operator:object.shade_smooth_by_angle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01580-operator-object.shade_smooth_by_angle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01580.py -- tests/files/web/generated/M16-GAP-01580-operator-object.shade_smooth_by_angle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01580", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01581", + "gapId": "operator:object.shaderfx_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01581-operator-object.shaderfx_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01581.py -- tests/files/web/generated/M16-GAP-01581-operator-object.shaderfx_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01581", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01582", + "gapId": "operator:object.shaderfx_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01582-operator-object.shaderfx_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01582.py -- tests/files/web/generated/M16-GAP-01582-operator-object.shaderfx_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01582", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01583", + "gapId": "operator:object.shaderfx_move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01583-operator-object.shaderfx_move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01583.py -- tests/files/web/generated/M16-GAP-01583-operator-object.shaderfx_move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01583", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01584", + "gapId": "operator:object.shaderfx_move_to_index", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01584-operator-object.shaderfx_move_to_index.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01584.py -- tests/files/web/generated/M16-GAP-01584-operator-object.shaderfx_move_to_index.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01584", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01585", + "gapId": "operator:object.shaderfx_move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01585-operator-object.shaderfx_move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01585.py -- tests/files/web/generated/M16-GAP-01585-operator-object.shaderfx_move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01585", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01586", + "gapId": "operator:object.shaderfx_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01586-operator-object.shaderfx_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01586.py -- tests/files/web/generated/M16-GAP-01586-operator-object.shaderfx_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01586", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01587", + "gapId": "operator:object.shape_key_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01587-operator-object.shape_key_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01587.py -- tests/files/web/generated/M16-GAP-01587-operator-object.shape_key_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01587", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01588", + "gapId": "operator:object.shape_key_apply_to_basis", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01588-operator-object.shape_key_apply_to_basis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01588.py -- tests/files/web/generated/M16-GAP-01588-operator-object.shape_key_apply_to_basis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01588", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01589", + "gapId": "operator:object.shape_key_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01589-operator-object.shape_key_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01589.py -- tests/files/web/generated/M16-GAP-01589-operator-object.shape_key_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01589", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01590", + "gapId": "operator:object.shape_key_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01590-operator-object.shape_key_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01590.py -- tests/files/web/generated/M16-GAP-01590-operator-object.shape_key_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01590", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01591", + "gapId": "operator:object.shape_key_lock", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01591-operator-object.shape_key_lock.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01591.py -- tests/files/web/generated/M16-GAP-01591-operator-object.shape_key_lock.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01591", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01592", + "gapId": "operator:object.shape_key_make_basis", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01592-operator-object.shape_key_make_basis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01592.py -- tests/files/web/generated/M16-GAP-01592-operator-object.shape_key_make_basis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01592", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01593", + "gapId": "operator:object.shape_key_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01593-operator-object.shape_key_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01593.py -- tests/files/web/generated/M16-GAP-01593-operator-object.shape_key_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01593", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01594", + "gapId": "operator:object.shape_key_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01594-operator-object.shape_key_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01594.py -- tests/files/web/generated/M16-GAP-01594-operator-object.shape_key_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01594", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01595", + "gapId": "operator:object.shape_key_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01595-operator-object.shape_key_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01595.py -- tests/files/web/generated/M16-GAP-01595-operator-object.shape_key_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01595", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01596", + "gapId": "operator:object.shape_key_retime", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01596-operator-object.shape_key_retime.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01596.py -- tests/files/web/generated/M16-GAP-01596-operator-object.shape_key_retime.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01596", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01597", + "gapId": "operator:object.shape_key_transfer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01597-operator-object.shape_key_transfer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01597.py -- tests/files/web/generated/M16-GAP-01597-operator-object.shape_key_transfer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01597", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01598", + "gapId": "operator:object.simulation_nodes_cache_bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01598-operator-object.simulation_nodes_cache_bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01598.py -- tests/files/web/generated/M16-GAP-01598-operator-object.simulation_nodes_cache_bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01598", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01599", + "gapId": "operator:object.simulation_nodes_cache_calculate_to_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01599-operator-object.simulation_nodes_cache_calculate_to_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01599.py -- tests/files/web/generated/M16-GAP-01599-operator-object.simulation_nodes_cache_calculate_to_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01599", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01600", + "gapId": "operator:object.simulation_nodes_cache_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01600-operator-object.simulation_nodes_cache_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01600.py -- tests/files/web/generated/M16-GAP-01600-operator-object.simulation_nodes_cache_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01600", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01601", + "gapId": "operator:object.skin_armature_create", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01601-operator-object.skin_armature_create.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01601.py -- tests/files/web/generated/M16-GAP-01601-operator-object.skin_armature_create.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01601", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01602", + "gapId": "operator:object.skin_loose_mark_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01602-operator-object.skin_loose_mark_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01602.py -- tests/files/web/generated/M16-GAP-01602-operator-object.skin_loose_mark_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01602", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01603", + "gapId": "operator:object.skin_radii_equalize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01603-operator-object.skin_radii_equalize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01603.py -- tests/files/web/generated/M16-GAP-01603-operator-object.skin_radii_equalize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01603", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01604", + "gapId": "operator:object.skin_root_mark", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01604-operator-object.skin_root_mark.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01604.py -- tests/files/web/generated/M16-GAP-01604-operator-object.skin_root_mark.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01604", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01605", + "gapId": "operator:object.speaker_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01605-operator-object.speaker_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01605.py -- tests/files/web/generated/M16-GAP-01605-operator-object.speaker_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01605", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01606", + "gapId": "operator:object.subdivision_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01606-operator-object.subdivision_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01606.py -- tests/files/web/generated/M16-GAP-01606-operator-object.subdivision_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01606", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01607", + "gapId": "operator:object.surfacedeform_bind", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01607-operator-object.surfacedeform_bind.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01607.py -- tests/files/web/generated/M16-GAP-01607-operator-object.surfacedeform_bind.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01607", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01608", + "gapId": "operator:object.text_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01608-operator-object.text_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01608.py -- tests/files/web/generated/M16-GAP-01608-operator-object.text_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01608", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01609", + "gapId": "operator:object.track_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01609-operator-object.track_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01609.py -- tests/files/web/generated/M16-GAP-01609-operator-object.track_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01609", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01610", + "gapId": "operator:object.track_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01610-operator-object.track_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01610.py -- tests/files/web/generated/M16-GAP-01610-operator-object.track_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01610", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01611", + "gapId": "operator:object.transfer_mode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01611-operator-object.transfer_mode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01611.py -- tests/files/web/generated/M16-GAP-01611-operator-object.transfer_mode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01611", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01612", + "gapId": "operator:object.transform_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01612-operator-object.transform_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01612.py -- tests/files/web/generated/M16-GAP-01612-operator-object.transform_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01612", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01613", + "gapId": "operator:object.transform_axis_target", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01613-operator-object.transform_axis_target.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01613.py -- tests/files/web/generated/M16-GAP-01613-operator-object.transform_axis_target.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01613", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01614", + "gapId": "operator:object.transform_to_mouse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01614-operator-object.transform_to_mouse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01614.py -- tests/files/web/generated/M16-GAP-01614-operator-object.transform_to_mouse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01614", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01615", + "gapId": "operator:object.transforms_to_deltas", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01615-operator-object.transforms_to_deltas.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01615.py -- tests/files/web/generated/M16-GAP-01615-operator-object.transforms_to_deltas.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01615", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01616", + "gapId": "operator:object.unlink_data", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01616-operator-object.unlink_data.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01616.py -- tests/files/web/generated/M16-GAP-01616-operator-object.unlink_data.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01616", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01617", + "gapId": "operator:object.update_shapes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01617-operator-object.update_shapes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01617.py -- tests/files/web/generated/M16-GAP-01617-operator-object.update_shapes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01617", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01618", + "gapId": "operator:object.vertex_group_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01618-operator-object.vertex_group_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01618.py -- tests/files/web/generated/M16-GAP-01618-operator-object.vertex_group_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01618", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01619", + "gapId": "operator:object.vertex_group_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01619-operator-object.vertex_group_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01619.py -- tests/files/web/generated/M16-GAP-01619-operator-object.vertex_group_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01619", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01620", + "gapId": "operator:object.vertex_group_assign_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01620-operator-object.vertex_group_assign_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01620.py -- tests/files/web/generated/M16-GAP-01620-operator-object.vertex_group_assign_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01620", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01621", + "gapId": "operator:object.vertex_group_clean", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01621-operator-object.vertex_group_clean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01621.py -- tests/files/web/generated/M16-GAP-01621-operator-object.vertex_group_clean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01621", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01622", + "gapId": "operator:object.vertex_group_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01622-operator-object.vertex_group_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01622.py -- tests/files/web/generated/M16-GAP-01622-operator-object.vertex_group_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01622", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01623", + "gapId": "operator:object.vertex_group_copy_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01623-operator-object.vertex_group_copy_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01623.py -- tests/files/web/generated/M16-GAP-01623-operator-object.vertex_group_copy_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01623", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01624", + "gapId": "operator:object.vertex_group_deselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01624-operator-object.vertex_group_deselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01624.py -- tests/files/web/generated/M16-GAP-01624-operator-object.vertex_group_deselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01624", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01625", + "gapId": "operator:object.vertex_group_invert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01625-operator-object.vertex_group_invert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01625.py -- tests/files/web/generated/M16-GAP-01625-operator-object.vertex_group_invert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01625", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01626", + "gapId": "operator:object.vertex_group_levels", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01626-operator-object.vertex_group_levels.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01626.py -- tests/files/web/generated/M16-GAP-01626-operator-object.vertex_group_levels.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01626", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01626", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01627", + "gapId": "operator:object.vertex_group_limit_total", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01627-operator-object.vertex_group_limit_total.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01627.py -- tests/files/web/generated/M16-GAP-01627-operator-object.vertex_group_limit_total.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01627", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01627", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01628", + "gapId": "operator:object.vertex_group_lock", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01628-operator-object.vertex_group_lock.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01628.py -- tests/files/web/generated/M16-GAP-01628-operator-object.vertex_group_lock.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01628", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01628", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01629", + "gapId": "operator:object.vertex_group_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01629-operator-object.vertex_group_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01629.py -- tests/files/web/generated/M16-GAP-01629-operator-object.vertex_group_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01629", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01629", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01630", + "gapId": "operator:object.vertex_group_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01630-operator-object.vertex_group_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01630.py -- tests/files/web/generated/M16-GAP-01630-operator-object.vertex_group_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01630", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01630", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01631", + "gapId": "operator:object.vertex_group_normalize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01631-operator-object.vertex_group_normalize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01631.py -- tests/files/web/generated/M16-GAP-01631-operator-object.vertex_group_normalize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01631", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01631", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01632", + "gapId": "operator:object.vertex_group_normalize_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01632-operator-object.vertex_group_normalize_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01632.py -- tests/files/web/generated/M16-GAP-01632-operator-object.vertex_group_normalize_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01632", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01632", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01633", + "gapId": "operator:object.vertex_group_quantize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01633-operator-object.vertex_group_quantize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01633.py -- tests/files/web/generated/M16-GAP-01633-operator-object.vertex_group_quantize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01633", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01633", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01634", + "gapId": "operator:object.vertex_group_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01634-operator-object.vertex_group_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01634.py -- tests/files/web/generated/M16-GAP-01634-operator-object.vertex_group_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01634", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01634", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01635", + "gapId": "operator:object.vertex_group_remove_from", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01635-operator-object.vertex_group_remove_from.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01635.py -- tests/files/web/generated/M16-GAP-01635-operator-object.vertex_group_remove_from.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01635", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01635", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01636", + "gapId": "operator:object.vertex_group_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01636-operator-object.vertex_group_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01636.py -- tests/files/web/generated/M16-GAP-01636-operator-object.vertex_group_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01636", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01636", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01637", + "gapId": "operator:object.vertex_group_set_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01637-operator-object.vertex_group_set_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01637.py -- tests/files/web/generated/M16-GAP-01637-operator-object.vertex_group_set_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01637", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01637", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01638", + "gapId": "operator:object.vertex_group_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01638-operator-object.vertex_group_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01638.py -- tests/files/web/generated/M16-GAP-01638-operator-object.vertex_group_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01638", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01638", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01639", + "gapId": "operator:object.vertex_group_sort", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01639-operator-object.vertex_group_sort.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01639.py -- tests/files/web/generated/M16-GAP-01639-operator-object.vertex_group_sort.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01639", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01639", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01640", + "gapId": "operator:object.vertex_parent_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01640-operator-object.vertex_parent_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01640.py -- tests/files/web/generated/M16-GAP-01640-operator-object.vertex_parent_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01640", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01640", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01641", + "gapId": "operator:object.vertex_weight_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01641-operator-object.vertex_weight_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01641.py -- tests/files/web/generated/M16-GAP-01641-operator-object.vertex_weight_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01641", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01641", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01642", + "gapId": "operator:object.vertex_weight_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01642-operator-object.vertex_weight_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01642.py -- tests/files/web/generated/M16-GAP-01642-operator-object.vertex_weight_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01642", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01642", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01643", + "gapId": "operator:object.vertex_weight_normalize_active_vertex", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01643-operator-object.vertex_weight_normalize_active_vertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01643.py -- tests/files/web/generated/M16-GAP-01643-operator-object.vertex_weight_normalize_active_vertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01643", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01643", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01644", + "gapId": "operator:object.vertex_weight_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01644-operator-object.vertex_weight_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01644.py -- tests/files/web/generated/M16-GAP-01644-operator-object.vertex_weight_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01644", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01644", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01645", + "gapId": "operator:object.vertex_weight_set_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01645-operator-object.vertex_weight_set_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01645.py -- tests/files/web/generated/M16-GAP-01645-operator-object.vertex_weight_set_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01645", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01645", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01646", + "gapId": "operator:object.visual_geometry_to_objects", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01646-operator-object.visual_geometry_to_objects.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01646.py -- tests/files/web/generated/M16-GAP-01646-operator-object.visual_geometry_to_objects.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01646", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01646", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01647", + "gapId": "operator:object.visual_transform_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01647-operator-object.visual_transform_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01647.py -- tests/files/web/generated/M16-GAP-01647-operator-object.visual_transform_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01647", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01647", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01648", + "gapId": "operator:object.volume_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01648-operator-object.volume_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01648.py -- tests/files/web/generated/M16-GAP-01648-operator-object.volume_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01648", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01648", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01649", + "gapId": "operator:object.volume_import", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01649-operator-object.volume_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01649.py -- tests/files/web/generated/M16-GAP-01649-operator-object.volume_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01649", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01649", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01650", + "gapId": "operator:object.voxel_remesh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01650-operator-object.voxel_remesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01650.py -- tests/files/web/generated/M16-GAP-01650-operator-object.voxel_remesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01650", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01650", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01651", + "gapId": "operator:object.voxel_size_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01651-operator-object.voxel_size_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01651.py -- tests/files/web/generated/M16-GAP-01651-operator-object.voxel_size_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01651", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01651", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01652", + "gapId": "operator:outliner.action_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01652-operator-outliner.action_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01652.py -- tests/files/web/generated/M16-GAP-01652-operator-outliner.action_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01652", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01652", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01653", + "gapId": "operator:outliner.animdata_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01653-operator-outliner.animdata_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01653.py -- tests/files/web/generated/M16-GAP-01653-operator-outliner.animdata_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01653", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01653", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01654", + "gapId": "operator:outliner.clear_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01654-operator-outliner.clear_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01654.py -- tests/files/web/generated/M16-GAP-01654-operator-outliner.clear_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01654", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01654", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01655", + "gapId": "operator:outliner.collection_color_tag_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01655-operator-outliner.collection_color_tag_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01655.py -- tests/files/web/generated/M16-GAP-01655-operator-outliner.collection_color_tag_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01655", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01655", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01656", + "gapId": "operator:outliner.collection_disable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01656-operator-outliner.collection_disable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01656.py -- tests/files/web/generated/M16-GAP-01656-operator-outliner.collection_disable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01656", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01656", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01657", + "gapId": "operator:outliner.collection_disable_render", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01657-operator-outliner.collection_disable_render.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01657.py -- tests/files/web/generated/M16-GAP-01657-operator-outliner.collection_disable_render.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01657", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01657", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01658", + "gapId": "operator:outliner.collection_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01658-operator-outliner.collection_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01658.py -- tests/files/web/generated/M16-GAP-01658-operator-outliner.collection_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01658", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01658", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01659", + "gapId": "operator:outliner.collection_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01659-operator-outliner.collection_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01659.py -- tests/files/web/generated/M16-GAP-01659-operator-outliner.collection_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01659", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01659", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01660", + "gapId": "operator:outliner.collection_duplicate_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01660-operator-outliner.collection_duplicate_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01660.py -- tests/files/web/generated/M16-GAP-01660-operator-outliner.collection_duplicate_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01660", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01660", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01661", + "gapId": "operator:outliner.collection_enable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01661-operator-outliner.collection_enable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01661.py -- tests/files/web/generated/M16-GAP-01661-operator-outliner.collection_enable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01661", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01661", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01662", + "gapId": "operator:outliner.collection_enable_render", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01662-operator-outliner.collection_enable_render.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01662.py -- tests/files/web/generated/M16-GAP-01662-operator-outliner.collection_enable_render.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01662", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01662", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01663", + "gapId": "operator:outliner.collection_exclude_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01663-operator-outliner.collection_exclude_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01663.py -- tests/files/web/generated/M16-GAP-01663-operator-outliner.collection_exclude_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01663", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01663", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01664", + "gapId": "operator:outliner.collection_exclude_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01664-operator-outliner.collection_exclude_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01664.py -- tests/files/web/generated/M16-GAP-01664-operator-outliner.collection_exclude_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01664", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01664", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01665", + "gapId": "operator:outliner.collection_hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01665-operator-outliner.collection_hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01665.py -- tests/files/web/generated/M16-GAP-01665-operator-outliner.collection_hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01665", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01665", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01666", + "gapId": "operator:outliner.collection_hide_inside", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01666-operator-outliner.collection_hide_inside.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01666.py -- tests/files/web/generated/M16-GAP-01666-operator-outliner.collection_hide_inside.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01666", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01666", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01667", + "gapId": "operator:outliner.collection_hierarchy_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01667-operator-outliner.collection_hierarchy_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01667.py -- tests/files/web/generated/M16-GAP-01667-operator-outliner.collection_hierarchy_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01667", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01667", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01668", + "gapId": "operator:outliner.collection_holdout_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01668-operator-outliner.collection_holdout_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01668.py -- tests/files/web/generated/M16-GAP-01668-operator-outliner.collection_holdout_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01668", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01668", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01669", + "gapId": "operator:outliner.collection_holdout_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01669-operator-outliner.collection_holdout_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01669.py -- tests/files/web/generated/M16-GAP-01669-operator-outliner.collection_holdout_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01669", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01669", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01670", + "gapId": "operator:outliner.collection_indirect_only_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01670-operator-outliner.collection_indirect_only_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01670.py -- tests/files/web/generated/M16-GAP-01670-operator-outliner.collection_indirect_only_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01670", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01670", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01671", + "gapId": "operator:outliner.collection_indirect_only_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01671-operator-outliner.collection_indirect_only_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01671.py -- tests/files/web/generated/M16-GAP-01671-operator-outliner.collection_indirect_only_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01671", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01671", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01672", + "gapId": "operator:outliner.collection_instance", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01672-operator-outliner.collection_instance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01672.py -- tests/files/web/generated/M16-GAP-01672-operator-outliner.collection_instance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01672", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01672", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01673", + "gapId": "operator:outliner.collection_isolate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01673-operator-outliner.collection_isolate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01673.py -- tests/files/web/generated/M16-GAP-01673-operator-outliner.collection_isolate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01673", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01673", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01674", + "gapId": "operator:outliner.collection_link", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01674-operator-outliner.collection_link.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01674.py -- tests/files/web/generated/M16-GAP-01674-operator-outliner.collection_link.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01674", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01674", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01675", + "gapId": "operator:outliner.collection_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01675-operator-outliner.collection_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01675.py -- tests/files/web/generated/M16-GAP-01675-operator-outliner.collection_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01675", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01675", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01676", + "gapId": "operator:outliner.collection_objects_deselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01676-operator-outliner.collection_objects_deselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01676.py -- tests/files/web/generated/M16-GAP-01676-operator-outliner.collection_objects_deselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01676", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01676", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01677", + "gapId": "operator:outliner.collection_objects_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01677-operator-outliner.collection_objects_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01677.py -- tests/files/web/generated/M16-GAP-01677-operator-outliner.collection_objects_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01677", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01677", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01678", + "gapId": "operator:outliner.collection_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01678-operator-outliner.collection_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01678.py -- tests/files/web/generated/M16-GAP-01678-operator-outliner.collection_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01678", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01678", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01679", + "gapId": "operator:outliner.collection_show_inside", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01679-operator-outliner.collection_show_inside.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01679.py -- tests/files/web/generated/M16-GAP-01679-operator-outliner.collection_show_inside.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01679", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01679", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01680", + "gapId": "operator:outliner.constraint_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01680-operator-outliner.constraint_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01680.py -- tests/files/web/generated/M16-GAP-01680-operator-outliner.constraint_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01680", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01680", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01681", + "gapId": "operator:outliner.data_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01681-operator-outliner.data_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01681.py -- tests/files/web/generated/M16-GAP-01681-operator-outliner.data_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01681", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01681", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01682", + "gapId": "operator:outliner.datastack_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01682-operator-outliner.datastack_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01682.py -- tests/files/web/generated/M16-GAP-01682-operator-outliner.datastack_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01682", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01682", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01683", + "gapId": "operator:outliner.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01683-operator-outliner.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01683.py -- tests/files/web/generated/M16-GAP-01683-operator-outliner.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01683", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01683", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01684", + "gapId": "operator:outliner.drivers_add_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01684-operator-outliner.drivers_add_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01684.py -- tests/files/web/generated/M16-GAP-01684-operator-outliner.drivers_add_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01684", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01684", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01685", + "gapId": "operator:outliner.drivers_delete_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01685-operator-outliner.drivers_delete_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01685.py -- tests/files/web/generated/M16-GAP-01685-operator-outliner.drivers_delete_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01685", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01685", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01686", + "gapId": "operator:outliner.expanded_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01686-operator-outliner.expanded_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01686.py -- tests/files/web/generated/M16-GAP-01686-operator-outliner.expanded_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01686", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01686", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01687", + "gapId": "operator:outliner.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01687-operator-outliner.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01687.py -- tests/files/web/generated/M16-GAP-01687-operator-outliner.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01687", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01687", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01688", + "gapId": "operator:outliner.highlight_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01688-operator-outliner.highlight_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01688.py -- tests/files/web/generated/M16-GAP-01688-operator-outliner.highlight_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01688", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01688", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01689", + "gapId": "operator:outliner.id_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01689-operator-outliner.id_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01689.py -- tests/files/web/generated/M16-GAP-01689-operator-outliner.id_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01689", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01689", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01690", + "gapId": "operator:outliner.id_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01690-operator-outliner.id_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01690.py -- tests/files/web/generated/M16-GAP-01690-operator-outliner.id_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01690", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01690", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01691", + "gapId": "operator:outliner.id_linked_relocate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01691-operator-outliner.id_linked_relocate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01691.py -- tests/files/web/generated/M16-GAP-01691-operator-outliner.id_linked_relocate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01691", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01691", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01692", + "gapId": "operator:outliner.id_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01692-operator-outliner.id_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01692.py -- tests/files/web/generated/M16-GAP-01692-operator-outliner.id_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01692", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01692", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01693", + "gapId": "operator:outliner.id_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01693-operator-outliner.id_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01693.py -- tests/files/web/generated/M16-GAP-01693-operator-outliner.id_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01693", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01693", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01694", + "gapId": "operator:outliner.id_remap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01694-operator-outliner.id_remap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01694.py -- tests/files/web/generated/M16-GAP-01694-operator-outliner.id_remap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01694", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01694", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01695", + "gapId": "operator:outliner.item_activate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01695-operator-outliner.item_activate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01695.py -- tests/files/web/generated/M16-GAP-01695-operator-outliner.item_activate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01695", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01695", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01696", + "gapId": "operator:outliner.item_drag_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01696-operator-outliner.item_drag_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01696.py -- tests/files/web/generated/M16-GAP-01696-operator-outliner.item_drag_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01696", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01696", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01697", + "gapId": "operator:outliner.item_openclose", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01697-operator-outliner.item_openclose.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01697.py -- tests/files/web/generated/M16-GAP-01697-operator-outliner.item_openclose.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01697", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01697", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01698", + "gapId": "operator:outliner.item_rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01698-operator-outliner.item_rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01698.py -- tests/files/web/generated/M16-GAP-01698-operator-outliner.item_rename.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01698", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01698", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01699", + "gapId": "operator:outliner.keyingset_add_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01699-operator-outliner.keyingset_add_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01699.py -- tests/files/web/generated/M16-GAP-01699-operator-outliner.keyingset_add_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01699", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01699", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01700", + "gapId": "operator:outliner.keyingset_remove_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01700-operator-outliner.keyingset_remove_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01700.py -- tests/files/web/generated/M16-GAP-01700-operator-outliner.keyingset_remove_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01700", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01700", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01701", + "gapId": "operator:outliner.lib_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01701-operator-outliner.lib_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01701.py -- tests/files/web/generated/M16-GAP-01701-operator-outliner.lib_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01701", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01701", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01702", + "gapId": "operator:outliner.lib_relocate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01702-operator-outliner.lib_relocate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01702.py -- tests/files/web/generated/M16-GAP-01702-operator-outliner.lib_relocate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01702", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01702", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01703", + "gapId": "operator:outliner.liboverride_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01703-operator-outliner.liboverride_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01703.py -- tests/files/web/generated/M16-GAP-01703-operator-outliner.liboverride_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01703", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01703", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01704", + "gapId": "operator:outliner.liboverride_property_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01704-operator-outliner.liboverride_property_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01704.py -- tests/files/web/generated/M16-GAP-01704-operator-outliner.liboverride_property_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01704", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01704", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01705", + "gapId": "operator:outliner.liboverride_troubleshoot_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01705-operator-outliner.liboverride_troubleshoot_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01705.py -- tests/files/web/generated/M16-GAP-01705-operator-outliner.liboverride_troubleshoot_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01705", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01705", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01706", + "gapId": "operator:outliner.material_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01706-operator-outliner.material_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01706.py -- tests/files/web/generated/M16-GAP-01706-operator-outliner.material_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01706", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01706", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01707", + "gapId": "operator:outliner.modifier_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01707-operator-outliner.modifier_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01707.py -- tests/files/web/generated/M16-GAP-01707-operator-outliner.modifier_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01707", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01707", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01708", + "gapId": "operator:outliner.object_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01708-operator-outliner.object_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01708.py -- tests/files/web/generated/M16-GAP-01708-operator-outliner.object_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01708", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01708", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01709", + "gapId": "operator:outliner.operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01709-operator-outliner.operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01709.py -- tests/files/web/generated/M16-GAP-01709-operator-outliner.operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01709", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01709", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01710", + "gapId": "operator:outliner.orphans_manage", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01710-operator-outliner.orphans_manage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01710.py -- tests/files/web/generated/M16-GAP-01710-operator-outliner.orphans_manage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01710", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01710", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01711", + "gapId": "operator:outliner.orphans_purge", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01711-operator-outliner.orphans_purge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01711.py -- tests/files/web/generated/M16-GAP-01711-operator-outliner.orphans_purge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01711", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01711", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01712", + "gapId": "operator:outliner.parent_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01712-operator-outliner.parent_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01712.py -- tests/files/web/generated/M16-GAP-01712-operator-outliner.parent_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01712", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01712", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01713", + "gapId": "operator:outliner.parent_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01713-operator-outliner.parent_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01713.py -- tests/files/web/generated/M16-GAP-01713-operator-outliner.parent_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01713", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01713", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01714", + "gapId": "operator:outliner.scene_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01714-operator-outliner.scene_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01714.py -- tests/files/web/generated/M16-GAP-01714-operator-outliner.scene_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01714", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01714", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01715", + "gapId": "operator:outliner.scene_operation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01715-operator-outliner.scene_operation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01715.py -- tests/files/web/generated/M16-GAP-01715-operator-outliner.scene_operation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01715", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01715", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01716", + "gapId": "operator:outliner.scroll_page", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01716-operator-outliner.scroll_page.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01716.py -- tests/files/web/generated/M16-GAP-01716-operator-outliner.scroll_page.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01716", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01716", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01717", + "gapId": "operator:outliner.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01717-operator-outliner.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01717.py -- tests/files/web/generated/M16-GAP-01717-operator-outliner.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01717", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01717", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01718", + "gapId": "operator:outliner.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01718-operator-outliner.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01718.py -- tests/files/web/generated/M16-GAP-01718-operator-outliner.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01718", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01718", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01719", + "gapId": "operator:outliner.select_walk", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01719-operator-outliner.select_walk.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01719.py -- tests/files/web/generated/M16-GAP-01719-operator-outliner.select_walk.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01719", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01719", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01720", + "gapId": "operator:outliner.show_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01720-operator-outliner.show_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01720.py -- tests/files/web/generated/M16-GAP-01720-operator-outliner.show_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01720", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01720", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01721", + "gapId": "operator:outliner.show_hierarchy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01721-operator-outliner.show_hierarchy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01721.py -- tests/files/web/generated/M16-GAP-01721-operator-outliner.show_hierarchy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01721", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01721", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01722", + "gapId": "operator:outliner.show_one_level", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01722-operator-outliner.show_one_level.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01722.py -- tests/files/web/generated/M16-GAP-01722-operator-outliner.show_one_level.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01722", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01722", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01723", + "gapId": "operator:outliner.start_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01723-operator-outliner.start_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01723.py -- tests/files/web/generated/M16-GAP-01723-operator-outliner.start_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01723", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01723", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01724", + "gapId": "operator:outliner.unhide_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01724-operator-outliner.unhide_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01724.py -- tests/files/web/generated/M16-GAP-01724-operator-outliner.unhide_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01724", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01724", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01725", + "gapId": "operator:paint.add_simple_uvs", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01725-operator-paint.add_simple_uvs.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01725.py -- tests/files/web/generated/M16-GAP-01725-operator-paint.add_simple_uvs.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01725", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01725", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01726", + "gapId": "operator:paint.add_texture_paint_slot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01726-operator-paint.add_texture_paint_slot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01726.py -- tests/files/web/generated/M16-GAP-01726-operator-paint.add_texture_paint_slot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01726", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01726", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01727", + "gapId": "operator:paint.brush_colors_flip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01727-operator-paint.brush_colors_flip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01727.py -- tests/files/web/generated/M16-GAP-01727-operator-paint.brush_colors_flip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01727", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01727", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01728", + "gapId": "operator:paint.face_select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01728-operator-paint.face_select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01728.py -- tests/files/web/generated/M16-GAP-01728-operator-paint.face_select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01728", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01728", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01729", + "gapId": "operator:paint.face_select_hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01729-operator-paint.face_select_hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01729.py -- tests/files/web/generated/M16-GAP-01729-operator-paint.face_select_hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01729", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01729", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01730", + "gapId": "operator:paint.face_select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01730-operator-paint.face_select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01730.py -- tests/files/web/generated/M16-GAP-01730-operator-paint.face_select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01730", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01730", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01731", + "gapId": "operator:paint.face_select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01731-operator-paint.face_select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01731.py -- tests/files/web/generated/M16-GAP-01731-operator-paint.face_select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01731", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01731", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01732", + "gapId": "operator:paint.face_select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01732-operator-paint.face_select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01732.py -- tests/files/web/generated/M16-GAP-01732-operator-paint.face_select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01732", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01732", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01733", + "gapId": "operator:paint.face_select_loop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01733-operator-paint.face_select_loop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01733.py -- tests/files/web/generated/M16-GAP-01733-operator-paint.face_select_loop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01733", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01733", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01734", + "gapId": "operator:paint.face_select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01734-operator-paint.face_select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01734.py -- tests/files/web/generated/M16-GAP-01734-operator-paint.face_select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01734", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01734", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01735", + "gapId": "operator:paint.face_vert_reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01735-operator-paint.face_vert_reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01735.py -- tests/files/web/generated/M16-GAP-01735-operator-paint.face_vert_reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01735", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01735", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01736", + "gapId": "operator:paint.grab_clone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01736-operator-paint.grab_clone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01736.py -- tests/files/web/generated/M16-GAP-01736-operator-paint.grab_clone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01736", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01736", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01737", + "gapId": "operator:paint.hide_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01737-operator-paint.hide_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01737.py -- tests/files/web/generated/M16-GAP-01737-operator-paint.hide_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01737", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01737", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01738", + "gapId": "operator:paint.hide_show_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01738-operator-paint.hide_show_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01738.py -- tests/files/web/generated/M16-GAP-01738-operator-paint.hide_show_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01738", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01738", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01739", + "gapId": "operator:paint.hide_show_lasso_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01739-operator-paint.hide_show_lasso_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01739.py -- tests/files/web/generated/M16-GAP-01739-operator-paint.hide_show_lasso_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01739", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01739", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01740", + "gapId": "operator:paint.hide_show_line_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01740-operator-paint.hide_show_line_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01740.py -- tests/files/web/generated/M16-GAP-01740-operator-paint.hide_show_line_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01740", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01740", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01741", + "gapId": "operator:paint.hide_show_masked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01741-operator-paint.hide_show_masked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01741.py -- tests/files/web/generated/M16-GAP-01741-operator-paint.hide_show_masked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01741", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01741", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01742", + "gapId": "operator:paint.hide_show_polyline_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01742-operator-paint.hide_show_polyline_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01742.py -- tests/files/web/generated/M16-GAP-01742-operator-paint.hide_show_polyline_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01742", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01742", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01743", + "gapId": "operator:paint.image_from_view", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01743-operator-paint.image_from_view.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01743.py -- tests/files/web/generated/M16-GAP-01743-operator-paint.image_from_view.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01743", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01743", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01744", + "gapId": "operator:paint.image_paint", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01744-operator-paint.image_paint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01744.py -- tests/files/web/generated/M16-GAP-01744-operator-paint.image_paint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01744", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01744", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01745", + "gapId": "operator:paint.mask_box_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01745-operator-paint.mask_box_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01745.py -- tests/files/web/generated/M16-GAP-01745-operator-paint.mask_box_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01745", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01745", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01746", + "gapId": "operator:paint.mask_flood_fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01746-operator-paint.mask_flood_fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01746.py -- tests/files/web/generated/M16-GAP-01746-operator-paint.mask_flood_fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01746", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01746", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01747", + "gapId": "operator:paint.mask_lasso_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01747-operator-paint.mask_lasso_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01747.py -- tests/files/web/generated/M16-GAP-01747-operator-paint.mask_lasso_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01747", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01747", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01748", + "gapId": "operator:paint.mask_line_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01748-operator-paint.mask_line_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01748.py -- tests/files/web/generated/M16-GAP-01748-operator-paint.mask_line_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01748", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01748", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01749", + "gapId": "operator:paint.mask_polyline_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01749-operator-paint.mask_polyline_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01749.py -- tests/files/web/generated/M16-GAP-01749-operator-paint.mask_polyline_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01749", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01749", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01750", + "gapId": "operator:paint.project_image", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01750-operator-paint.project_image.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01750.py -- tests/files/web/generated/M16-GAP-01750-operator-paint.project_image.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01750", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01750", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01751", + "gapId": "operator:paint.sample_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01751-operator-paint.sample_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01751.py -- tests/files/web/generated/M16-GAP-01751-operator-paint.sample_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01751", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01751", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01752", + "gapId": "operator:paint.texture_paint_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01752-operator-paint.texture_paint_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01752.py -- tests/files/web/generated/M16-GAP-01752-operator-paint.texture_paint_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01752", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01752", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01753", + "gapId": "operator:paint.vert_select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01753-operator-paint.vert_select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01753.py -- tests/files/web/generated/M16-GAP-01753-operator-paint.vert_select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01753", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01753", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01754", + "gapId": "operator:paint.vert_select_hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01754-operator-paint.vert_select_hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01754.py -- tests/files/web/generated/M16-GAP-01754-operator-paint.vert_select_hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01754", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01754", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01755", + "gapId": "operator:paint.vert_select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01755-operator-paint.vert_select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01755.py -- tests/files/web/generated/M16-GAP-01755-operator-paint.vert_select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01755", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01755", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01756", + "gapId": "operator:paint.vert_select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01756-operator-paint.vert_select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01756.py -- tests/files/web/generated/M16-GAP-01756-operator-paint.vert_select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01756", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01756", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01757", + "gapId": "operator:paint.vert_select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01757-operator-paint.vert_select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01757.py -- tests/files/web/generated/M16-GAP-01757-operator-paint.vert_select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01757", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01757", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01758", + "gapId": "operator:paint.vert_select_loop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01758-operator-paint.vert_select_loop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01758.py -- tests/files/web/generated/M16-GAP-01758-operator-paint.vert_select_loop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01758", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01758", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01759", + "gapId": "operator:paint.vert_select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01759-operator-paint.vert_select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01759.py -- tests/files/web/generated/M16-GAP-01759-operator-paint.vert_select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01759", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01759", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01760", + "gapId": "operator:paint.vert_select_ungrouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01760-operator-paint.vert_select_ungrouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01760.py -- tests/files/web/generated/M16-GAP-01760-operator-paint.vert_select_ungrouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01760", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01760", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01761", + "gapId": "operator:paint.vertex_color_brightness_contrast", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01761-operator-paint.vertex_color_brightness_contrast.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01761.py -- tests/files/web/generated/M16-GAP-01761-operator-paint.vertex_color_brightness_contrast.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01761", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01761", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01762", + "gapId": "operator:paint.vertex_color_dirt", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01762-operator-paint.vertex_color_dirt.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01762.py -- tests/files/web/generated/M16-GAP-01762-operator-paint.vertex_color_dirt.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01762", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01762", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01763", + "gapId": "operator:paint.vertex_color_from_weight", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01763-operator-paint.vertex_color_from_weight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01763.py -- tests/files/web/generated/M16-GAP-01763-operator-paint.vertex_color_from_weight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01763", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01763", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01764", + "gapId": "operator:paint.vertex_color_hsv", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01764-operator-paint.vertex_color_hsv.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01764.py -- tests/files/web/generated/M16-GAP-01764-operator-paint.vertex_color_hsv.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01764", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01764", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01765", + "gapId": "operator:paint.vertex_color_invert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01765-operator-paint.vertex_color_invert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01765.py -- tests/files/web/generated/M16-GAP-01765-operator-paint.vertex_color_invert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01765", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01765", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01766", + "gapId": "operator:paint.vertex_color_levels", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01766-operator-paint.vertex_color_levels.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01766.py -- tests/files/web/generated/M16-GAP-01766-operator-paint.vertex_color_levels.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01766", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01766", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01767", + "gapId": "operator:paint.vertex_color_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01767-operator-paint.vertex_color_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01767.py -- tests/files/web/generated/M16-GAP-01767-operator-paint.vertex_color_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01767", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01767", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01768", + "gapId": "operator:paint.vertex_color_smooth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01768-operator-paint.vertex_color_smooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01768.py -- tests/files/web/generated/M16-GAP-01768-operator-paint.vertex_color_smooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01768", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01768", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01769", + "gapId": "operator:paint.vertex_paint", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01769-operator-paint.vertex_paint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01769.py -- tests/files/web/generated/M16-GAP-01769-operator-paint.vertex_paint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01769", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01769", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01770", + "gapId": "operator:paint.vertex_paint_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01770-operator-paint.vertex_paint_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01770.py -- tests/files/web/generated/M16-GAP-01770-operator-paint.vertex_paint_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01770", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01770", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01771", + "gapId": "operator:paint.visibility_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01771-operator-paint.visibility_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01771.py -- tests/files/web/generated/M16-GAP-01771-operator-paint.visibility_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01771", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01771", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01772", + "gapId": "operator:paint.visibility_invert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01772-operator-paint.visibility_invert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01772.py -- tests/files/web/generated/M16-GAP-01772-operator-paint.visibility_invert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01772", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01772", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01773", + "gapId": "operator:paint.weight_from_bones", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01773-operator-paint.weight_from_bones.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01773.py -- tests/files/web/generated/M16-GAP-01773-operator-paint.weight_from_bones.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01773", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01773", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01774", + "gapId": "operator:paint.weight_gradient", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01774-operator-paint.weight_gradient.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01774.py -- tests/files/web/generated/M16-GAP-01774-operator-paint.weight_gradient.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01774", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01774", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01775", + "gapId": "operator:paint.weight_paint", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01775-operator-paint.weight_paint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01775.py -- tests/files/web/generated/M16-GAP-01775-operator-paint.weight_paint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01775", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01775", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01776", + "gapId": "operator:paint.weight_paint_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01776-operator-paint.weight_paint_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01776.py -- tests/files/web/generated/M16-GAP-01776-operator-paint.weight_paint_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01776", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01776", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01777", + "gapId": "operator:paint.weight_sample", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01777-operator-paint.weight_sample.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01777.py -- tests/files/web/generated/M16-GAP-01777-operator-paint.weight_sample.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01777", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01777", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01778", + "gapId": "operator:paint.weight_sample_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01778-operator-paint.weight_sample_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01778.py -- tests/files/web/generated/M16-GAP-01778-operator-paint.weight_sample_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01778", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01778", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01779", + "gapId": "operator:paint.weight_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01779-operator-paint.weight_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01779.py -- tests/files/web/generated/M16-GAP-01779-operator-paint.weight_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01779", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01779", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01780", + "gapId": "operator:paintcurve.add_point", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01780-operator-paintcurve.add_point.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01780.py -- tests/files/web/generated/M16-GAP-01780-operator-paintcurve.add_point.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01780", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01780", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01781", + "gapId": "operator:paintcurve.add_point_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01781-operator-paintcurve.add_point_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01781.py -- tests/files/web/generated/M16-GAP-01781-operator-paintcurve.add_point_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01781", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01781", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01782", + "gapId": "operator:paintcurve.cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01782-operator-paintcurve.cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01782.py -- tests/files/web/generated/M16-GAP-01782-operator-paintcurve.cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01782", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01782", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01783", + "gapId": "operator:paintcurve.delete_point", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01783-operator-paintcurve.delete_point.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01783.py -- tests/files/web/generated/M16-GAP-01783-operator-paintcurve.delete_point.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01783", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01783", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01784", + "gapId": "operator:paintcurve.draw", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01784-operator-paintcurve.draw.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01784.py -- tests/files/web/generated/M16-GAP-01784-operator-paintcurve.draw.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01784", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01784", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01785", + "gapId": "operator:paintcurve.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01785-operator-paintcurve.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01785.py -- tests/files/web/generated/M16-GAP-01785-operator-paintcurve.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01785", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01785", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01786", + "gapId": "operator:paintcurve.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01786-operator-paintcurve.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01786.py -- tests/files/web/generated/M16-GAP-01786-operator-paintcurve.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01786", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01786", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01787", + "gapId": "operator:paintcurve.slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01787-operator-paintcurve.slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01787.py -- tests/files/web/generated/M16-GAP-01787-operator-paintcurve.slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01787", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01787", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01788", + "gapId": "operator:palette.color_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01788-operator-palette.color_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01788.py -- tests/files/web/generated/M16-GAP-01788-operator-palette.color_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01788", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01788", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01789", + "gapId": "operator:palette.color_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01789-operator-palette.color_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01789.py -- tests/files/web/generated/M16-GAP-01789-operator-palette.color_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01789", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01789", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01790", + "gapId": "operator:palette.color_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01790-operator-palette.color_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01790.py -- tests/files/web/generated/M16-GAP-01790-operator-palette.color_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01790", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01790", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01791", + "gapId": "operator:palette.extract_from_image", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01791-operator-palette.extract_from_image.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01791.py -- tests/files/web/generated/M16-GAP-01791-operator-palette.extract_from_image.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01791", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01791", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01792", + "gapId": "operator:palette.join", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01792-operator-palette.join.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01792.py -- tests/files/web/generated/M16-GAP-01792-operator-palette.join.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01792", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01792", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01793", + "gapId": "operator:palette.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01793-operator-palette.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01793.py -- tests/files/web/generated/M16-GAP-01793-operator-palette.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01793", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01793", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01794", + "gapId": "operator:palette.sort", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01794-operator-palette.sort.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01794.py -- tests/files/web/generated/M16-GAP-01794-operator-palette.sort.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01794", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01794", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01795", + "gapId": "operator:particle.brush_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01795-operator-particle.brush_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01795.py -- tests/files/web/generated/M16-GAP-01795-operator-particle.brush_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01795", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01795", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01796", + "gapId": "operator:particle.connect_hair", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01796-operator-particle.connect_hair.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01796.py -- tests/files/web/generated/M16-GAP-01796-operator-particle.connect_hair.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01796", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01796", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01797", + "gapId": "operator:particle.copy_particle_systems", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01797-operator-particle.copy_particle_systems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01797.py -- tests/files/web/generated/M16-GAP-01797-operator-particle.copy_particle_systems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01797", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01797", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01798", + "gapId": "operator:particle.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01798-operator-particle.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01798.py -- tests/files/web/generated/M16-GAP-01798-operator-particle.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01798", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01798", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01799", + "gapId": "operator:particle.disconnect_hair", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01799-operator-particle.disconnect_hair.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01799.py -- tests/files/web/generated/M16-GAP-01799-operator-particle.disconnect_hair.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01799", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01799", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01800", + "gapId": "operator:particle.duplicate_particle_system", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01800-operator-particle.duplicate_particle_system.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01800.py -- tests/files/web/generated/M16-GAP-01800-operator-particle.duplicate_particle_system.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01800", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01800", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01801", + "gapId": "operator:particle.dupliob_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01801-operator-particle.dupliob_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01801.py -- tests/files/web/generated/M16-GAP-01801-operator-particle.dupliob_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01801", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01801", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01802", + "gapId": "operator:particle.dupliob_move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01802-operator-particle.dupliob_move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01802.py -- tests/files/web/generated/M16-GAP-01802-operator-particle.dupliob_move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01802", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01802", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01803", + "gapId": "operator:particle.dupliob_move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01803-operator-particle.dupliob_move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01803.py -- tests/files/web/generated/M16-GAP-01803-operator-particle.dupliob_move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01803", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01803", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01804", + "gapId": "operator:particle.dupliob_refresh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01804-operator-particle.dupliob_refresh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01804.py -- tests/files/web/generated/M16-GAP-01804-operator-particle.dupliob_refresh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01804", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01804", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01805", + "gapId": "operator:particle.dupliob_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01805-operator-particle.dupliob_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01805.py -- tests/files/web/generated/M16-GAP-01805-operator-particle.dupliob_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01805", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01805", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01806", + "gapId": "operator:particle.edited_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01806-operator-particle.edited_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01806.py -- tests/files/web/generated/M16-GAP-01806-operator-particle.edited_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01806", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01806", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01807", + "gapId": "operator:particle.hair_dynamics_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01807-operator-particle.hair_dynamics_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01807.py -- tests/files/web/generated/M16-GAP-01807-operator-particle.hair_dynamics_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01807", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01807", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01808", + "gapId": "operator:particle.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01808-operator-particle.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01808.py -- tests/files/web/generated/M16-GAP-01808-operator-particle.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01808", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01808", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01809", + "gapId": "operator:particle.mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01809-operator-particle.mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01809.py -- tests/files/web/generated/M16-GAP-01809-operator-particle.mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01809", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01809", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01810", + "gapId": "operator:particle.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01810-operator-particle.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01810.py -- tests/files/web/generated/M16-GAP-01810-operator-particle.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01810", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01810", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01811", + "gapId": "operator:particle.new_target", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01811-operator-particle.new_target.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01811.py -- tests/files/web/generated/M16-GAP-01811-operator-particle.new_target.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01811", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01811", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01812", + "gapId": "operator:particle.particle_edit_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01812-operator-particle.particle_edit_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01812.py -- tests/files/web/generated/M16-GAP-01812-operator-particle.particle_edit_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01812", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01812", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01813", + "gapId": "operator:particle.particle_system_remove_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01813-operator-particle.particle_system_remove_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01813.py -- tests/files/web/generated/M16-GAP-01813-operator-particle.particle_system_remove_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01813", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01813", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01814", + "gapId": "operator:particle.rekey", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01814-operator-particle.rekey.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01814.py -- tests/files/web/generated/M16-GAP-01814-operator-particle.rekey.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01814", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01814", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01815", + "gapId": "operator:particle.remove_doubles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01815-operator-particle.remove_doubles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01815.py -- tests/files/web/generated/M16-GAP-01815-operator-particle.remove_doubles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01815", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01815", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01816", + "gapId": "operator:particle.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01816-operator-particle.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01816.py -- tests/files/web/generated/M16-GAP-01816-operator-particle.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01816", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01816", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01817", + "gapId": "operator:particle.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01817-operator-particle.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01817.py -- tests/files/web/generated/M16-GAP-01817-operator-particle.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01817", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01817", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01818", + "gapId": "operator:particle.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01818-operator-particle.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01818.py -- tests/files/web/generated/M16-GAP-01818-operator-particle.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01818", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01818", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01819", + "gapId": "operator:particle.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01819-operator-particle.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01819.py -- tests/files/web/generated/M16-GAP-01819-operator-particle.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01819", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01819", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01820", + "gapId": "operator:particle.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01820-operator-particle.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01820.py -- tests/files/web/generated/M16-GAP-01820-operator-particle.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01820", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01820", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01821", + "gapId": "operator:particle.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01821-operator-particle.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01821.py -- tests/files/web/generated/M16-GAP-01821-operator-particle.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01821", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01821", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01822", + "gapId": "operator:particle.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01822-operator-particle.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01822.py -- tests/files/web/generated/M16-GAP-01822-operator-particle.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01822", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01822", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01823", + "gapId": "operator:particle.select_roots", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01823-operator-particle.select_roots.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01823.py -- tests/files/web/generated/M16-GAP-01823-operator-particle.select_roots.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01823", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01823", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01824", + "gapId": "operator:particle.select_tips", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01824-operator-particle.select_tips.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01824.py -- tests/files/web/generated/M16-GAP-01824-operator-particle.select_tips.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01824", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01824", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01825", + "gapId": "operator:particle.shape_cut", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01825-operator-particle.shape_cut.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01825.py -- tests/files/web/generated/M16-GAP-01825-operator-particle.shape_cut.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01825", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01825", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01826", + "gapId": "operator:particle.subdivide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01826-operator-particle.subdivide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01826.py -- tests/files/web/generated/M16-GAP-01826-operator-particle.subdivide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01826", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01826", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01827", + "gapId": "operator:particle.target_move_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01827-operator-particle.target_move_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01827.py -- tests/files/web/generated/M16-GAP-01827-operator-particle.target_move_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01827", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01827", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01828", + "gapId": "operator:particle.target_move_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01828-operator-particle.target_move_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01828.py -- tests/files/web/generated/M16-GAP-01828-operator-particle.target_move_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01828", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01828", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01829", + "gapId": "operator:particle.target_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01829-operator-particle.target_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01829.py -- tests/files/web/generated/M16-GAP-01829-operator-particle.target_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01829", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01829", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01830", + "gapId": "operator:particle.unify_length", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01830-operator-particle.unify_length.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01830.py -- tests/files/web/generated/M16-GAP-01830-operator-particle.unify_length.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01830", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01830", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01831", + "gapId": "operator:particle.weight_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01831-operator-particle.weight_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01831.py -- tests/files/web/generated/M16-GAP-01831-operator-particle.weight_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01831", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01831", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01832", + "gapId": "operator:pointcloud.attribute_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01832-operator-pointcloud.attribute_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01832.py -- tests/files/web/generated/M16-GAP-01832-operator-pointcloud.attribute_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01832", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01832", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01833", + "gapId": "operator:pointcloud.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01833-operator-pointcloud.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01833.py -- tests/files/web/generated/M16-GAP-01833-operator-pointcloud.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01833", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01833", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01834", + "gapId": "operator:pointcloud.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01834-operator-pointcloud.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01834.py -- tests/files/web/generated/M16-GAP-01834-operator-pointcloud.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01834", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01834", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01835", + "gapId": "operator:pointcloud.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01835-operator-pointcloud.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01835.py -- tests/files/web/generated/M16-GAP-01835-operator-pointcloud.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01835", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01835", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01836", + "gapId": "operator:pointcloud.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01836-operator-pointcloud.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01836.py -- tests/files/web/generated/M16-GAP-01836-operator-pointcloud.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01836", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01836", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01837", + "gapId": "operator:pointcloud.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01837-operator-pointcloud.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01837.py -- tests/files/web/generated/M16-GAP-01837-operator-pointcloud.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01837", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01837", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01838", + "gapId": "operator:pointcloud.separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01838-operator-pointcloud.separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01838.py -- tests/files/web/generated/M16-GAP-01838-operator-pointcloud.separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01838", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01838", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01839", + "gapId": "operator:pose.armature_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01839-operator-pose.armature_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01839.py -- tests/files/web/generated/M16-GAP-01839-operator-pose.armature_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01839", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01839", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01840", + "gapId": "operator:pose.autoside_names", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01840-operator-pose.autoside_names.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01840.py -- tests/files/web/generated/M16-GAP-01840-operator-pose.autoside_names.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01840", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01840", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01841", + "gapId": "operator:pose.blend_to_neighbor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01841-operator-pose.blend_to_neighbor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01841.py -- tests/files/web/generated/M16-GAP-01841-operator-pose.blend_to_neighbor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01841", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01841", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01842", + "gapId": "operator:pose.blend_with_rest", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01842-operator-pose.blend_with_rest.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01842.py -- tests/files/web/generated/M16-GAP-01842-operator-pose.blend_with_rest.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01842", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01842", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01843", + "gapId": "operator:pose.breakdown", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01843-operator-pose.breakdown.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01843.py -- tests/files/web/generated/M16-GAP-01843-operator-pose.breakdown.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01843", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01843", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01844", + "gapId": "operator:pose.constraint_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01844-operator-pose.constraint_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01844.py -- tests/files/web/generated/M16-GAP-01844-operator-pose.constraint_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01844", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01844", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01845", + "gapId": "operator:pose.constraint_add_with_targets", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01845-operator-pose.constraint_add_with_targets.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01845.py -- tests/files/web/generated/M16-GAP-01845-operator-pose.constraint_add_with_targets.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01845", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01845", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01846", + "gapId": "operator:pose.constraints_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01846-operator-pose.constraints_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01846.py -- tests/files/web/generated/M16-GAP-01846-operator-pose.constraints_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01846", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01846", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01847", + "gapId": "operator:pose.constraints_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01847-operator-pose.constraints_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01847.py -- tests/files/web/generated/M16-GAP-01847-operator-pose.constraints_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01847", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01847", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01848", + "gapId": "operator:pose.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01848-operator-pose.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01848.py -- tests/files/web/generated/M16-GAP-01848-operator-pose.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01848", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01848", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01849", + "gapId": "operator:pose.flip_names", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01849-operator-pose.flip_names.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01849.py -- tests/files/web/generated/M16-GAP-01849-operator-pose.flip_names.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01849", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01849", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01850", + "gapId": "operator:pose.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01850-operator-pose.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01850.py -- tests/files/web/generated/M16-GAP-01850-operator-pose.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01850", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01850", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01851", + "gapId": "operator:pose.ik_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01851-operator-pose.ik_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01851.py -- tests/files/web/generated/M16-GAP-01851-operator-pose.ik_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01851", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01851", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01852", + "gapId": "operator:pose.ik_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01852-operator-pose.ik_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01852.py -- tests/files/web/generated/M16-GAP-01852-operator-pose.ik_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01852", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01852", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01853", + "gapId": "operator:pose.loc_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01853-operator-pose.loc_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01853.py -- tests/files/web/generated/M16-GAP-01853-operator-pose.loc_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01853", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01853", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01854", + "gapId": "operator:pose.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01854-operator-pose.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01854.py -- tests/files/web/generated/M16-GAP-01854-operator-pose.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01854", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01854", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01855", + "gapId": "operator:pose.paths_calculate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01855-operator-pose.paths_calculate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01855.py -- tests/files/web/generated/M16-GAP-01855-operator-pose.paths_calculate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01855", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01855", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01856", + "gapId": "operator:pose.paths_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01856-operator-pose.paths_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01856.py -- tests/files/web/generated/M16-GAP-01856-operator-pose.paths_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01856", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01856", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01857", + "gapId": "operator:pose.paths_range_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01857-operator-pose.paths_range_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01857.py -- tests/files/web/generated/M16-GAP-01857-operator-pose.paths_range_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01857", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01857", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01858", + "gapId": "operator:pose.paths_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01858-operator-pose.paths_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01858.py -- tests/files/web/generated/M16-GAP-01858-operator-pose.paths_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01858", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01858", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01859", + "gapId": "operator:pose.propagate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01859-operator-pose.propagate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01859.py -- tests/files/web/generated/M16-GAP-01859-operator-pose.propagate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01859", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01859", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01860", + "gapId": "operator:pose.push", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01860-operator-pose.push.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01860.py -- tests/files/web/generated/M16-GAP-01860-operator-pose.push.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01860", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01860", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01861", + "gapId": "operator:pose.quaternions_flip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01861-operator-pose.quaternions_flip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01861.py -- tests/files/web/generated/M16-GAP-01861-operator-pose.quaternions_flip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01861", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01861", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01862", + "gapId": "operator:pose.relax", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01862-operator-pose.relax.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01862.py -- tests/files/web/generated/M16-GAP-01862-operator-pose.relax.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01862", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01862", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01863", + "gapId": "operator:pose.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01863-operator-pose.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01863.py -- tests/files/web/generated/M16-GAP-01863-operator-pose.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01863", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01863", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01864", + "gapId": "operator:pose.rot_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01864-operator-pose.rot_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01864.py -- tests/files/web/generated/M16-GAP-01864-operator-pose.rot_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01864", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01864", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01865", + "gapId": "operator:pose.rotation_mode_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01865-operator-pose.rotation_mode_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01865.py -- tests/files/web/generated/M16-GAP-01865-operator-pose.rotation_mode_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01865", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01865", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01866", + "gapId": "operator:pose.scale_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01866-operator-pose.scale_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01866.py -- tests/files/web/generated/M16-GAP-01866-operator-pose.scale_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01866", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01866", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01867", + "gapId": "operator:pose.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01867-operator-pose.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01867.py -- tests/files/web/generated/M16-GAP-01867-operator-pose.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01867", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01867", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01868", + "gapId": "operator:pose.select_constraint_target", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01868-operator-pose.select_constraint_target.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01868.py -- tests/files/web/generated/M16-GAP-01868-operator-pose.select_constraint_target.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01868", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01868", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01869", + "gapId": "operator:pose.select_grouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01869-operator-pose.select_grouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01869.py -- tests/files/web/generated/M16-GAP-01869-operator-pose.select_grouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01869", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01869", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01870", + "gapId": "operator:pose.select_hierarchy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01870-operator-pose.select_hierarchy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01870.py -- tests/files/web/generated/M16-GAP-01870-operator-pose.select_hierarchy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01870", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01870", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01871", + "gapId": "operator:pose.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01871-operator-pose.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01871.py -- tests/files/web/generated/M16-GAP-01871-operator-pose.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01871", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01871", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01872", + "gapId": "operator:pose.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01872-operator-pose.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01872.py -- tests/files/web/generated/M16-GAP-01872-operator-pose.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01872", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01872", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01873", + "gapId": "operator:pose.select_mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01873-operator-pose.select_mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01873.py -- tests/files/web/generated/M16-GAP-01873-operator-pose.select_mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01873", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01873", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01874", + "gapId": "operator:pose.select_parent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01874-operator-pose.select_parent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01874.py -- tests/files/web/generated/M16-GAP-01874-operator-pose.select_parent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01874", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01874", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01875", + "gapId": "operator:pose.selection_set_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01875-operator-pose.selection_set_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01875.py -- tests/files/web/generated/M16-GAP-01875-operator-pose.selection_set_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01875", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01875", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01876", + "gapId": "operator:pose.selection_set_add_and_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01876-operator-pose.selection_set_add_and_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01876.py -- tests/files/web/generated/M16-GAP-01876-operator-pose.selection_set_add_and_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01876", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01876", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01877", + "gapId": "operator:pose.selection_set_assign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01877-operator-pose.selection_set_assign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01877.py -- tests/files/web/generated/M16-GAP-01877-operator-pose.selection_set_assign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01877", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01877", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01878", + "gapId": "operator:pose.selection_set_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01878-operator-pose.selection_set_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01878.py -- tests/files/web/generated/M16-GAP-01878-operator-pose.selection_set_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01878", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01878", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01879", + "gapId": "operator:pose.selection_set_delete_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01879-operator-pose.selection_set_delete_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01879.py -- tests/files/web/generated/M16-GAP-01879-operator-pose.selection_set_delete_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01879", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01879", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01880", + "gapId": "operator:pose.selection_set_deselect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01880-operator-pose.selection_set_deselect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01880.py -- tests/files/web/generated/M16-GAP-01880-operator-pose.selection_set_deselect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01880", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01880", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01881", + "gapId": "operator:pose.selection_set_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01881-operator-pose.selection_set_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01881.py -- tests/files/web/generated/M16-GAP-01881-operator-pose.selection_set_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01881", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01881", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01882", + "gapId": "operator:pose.selection_set_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01882-operator-pose.selection_set_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01882.py -- tests/files/web/generated/M16-GAP-01882-operator-pose.selection_set_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01882", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01882", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01883", + "gapId": "operator:pose.selection_set_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01883-operator-pose.selection_set_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01883.py -- tests/files/web/generated/M16-GAP-01883-operator-pose.selection_set_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01883", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01883", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01884", + "gapId": "operator:pose.selection_set_remove_bones", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01884-operator-pose.selection_set_remove_bones.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01884.py -- tests/files/web/generated/M16-GAP-01884-operator-pose.selection_set_remove_bones.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01884", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01884", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01885", + "gapId": "operator:pose.selection_set_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01885-operator-pose.selection_set_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01885.py -- tests/files/web/generated/M16-GAP-01885-operator-pose.selection_set_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01885", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01885", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01886", + "gapId": "operator:pose.selection_set_unassign", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01886-operator-pose.selection_set_unassign.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01886.py -- tests/files/web/generated/M16-GAP-01886-operator-pose.selection_set_unassign.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01886", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01886", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01887", + "gapId": "operator:pose.transforms_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01887-operator-pose.transforms_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01887.py -- tests/files/web/generated/M16-GAP-01887-operator-pose.transforms_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01887", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01887", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01888", + "gapId": "operator:pose.user_transforms_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01888-operator-pose.user_transforms_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01888.py -- tests/files/web/generated/M16-GAP-01888-operator-pose.user_transforms_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01888", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01888", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01889", + "gapId": "operator:pose.visual_transform_apply", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01889-operator-pose.visual_transform_apply.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01889.py -- tests/files/web/generated/M16-GAP-01889-operator-pose.visual_transform_apply.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01889", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01889", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01890", + "gapId": "operator:poselib.apply_pose_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01890-operator-poselib.apply_pose_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01890.py -- tests/files/web/generated/M16-GAP-01890-operator-poselib.apply_pose_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01890", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01890", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01891", + "gapId": "operator:poselib.asset_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01891-operator-poselib.asset_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01891.py -- tests/files/web/generated/M16-GAP-01891-operator-poselib.asset_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01891", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01891", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01892", + "gapId": "operator:poselib.asset_modify", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01892-operator-poselib.asset_modify.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01892.py -- tests/files/web/generated/M16-GAP-01892-operator-poselib.asset_modify.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01892", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01892", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01893", + "gapId": "operator:poselib.blend_pose_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01893-operator-poselib.blend_pose_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01893.py -- tests/files/web/generated/M16-GAP-01893-operator-poselib.blend_pose_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01893", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01893", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01894", + "gapId": "operator:poselib.copy_as_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01894-operator-poselib.copy_as_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01894.py -- tests/files/web/generated/M16-GAP-01894-operator-poselib.copy_as_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01894", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01894", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01895", + "gapId": "operator:poselib.create_pose_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01895-operator-poselib.create_pose_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01895.py -- tests/files/web/generated/M16-GAP-01895-operator-poselib.create_pose_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01895", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01895", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01896", + "gapId": "operator:poselib.paste_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01896-operator-poselib.paste_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01896.py -- tests/files/web/generated/M16-GAP-01896-operator-poselib.paste_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01896", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01896", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01897", + "gapId": "operator:poselib.pose_asset_select_bones", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01897-operator-poselib.pose_asset_select_bones.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01897.py -- tests/files/web/generated/M16-GAP-01897-operator-poselib.pose_asset_select_bones.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01897", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01897", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01898", + "gapId": "operator:poselib.restore_previous_action", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01898-operator-poselib.restore_previous_action.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01898.py -- tests/files/web/generated/M16-GAP-01898-operator-poselib.restore_previous_action.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01898", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01898", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01899", + "gapId": "operator:preferences.addon_disable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01899-operator-preferences.addon_disable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01899.py -- tests/files/web/generated/M16-GAP-01899-operator-preferences.addon_disable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01899", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01899", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01900", + "gapId": "operator:preferences.addon_enable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01900-operator-preferences.addon_enable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01900.py -- tests/files/web/generated/M16-GAP-01900-operator-preferences.addon_enable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01900", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01900", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01901", + "gapId": "operator:preferences.addon_expand", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01901-operator-preferences.addon_expand.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01901.py -- tests/files/web/generated/M16-GAP-01901-operator-preferences.addon_expand.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01901", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01901", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01902", + "gapId": "operator:preferences.addon_install", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01902-operator-preferences.addon_install.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01902.py -- tests/files/web/generated/M16-GAP-01902-operator-preferences.addon_install.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01902", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01902", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01903", + "gapId": "operator:preferences.addon_refresh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01903-operator-preferences.addon_refresh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01903.py -- tests/files/web/generated/M16-GAP-01903-operator-preferences.addon_refresh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01903", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01903", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01904", + "gapId": "operator:preferences.addon_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01904-operator-preferences.addon_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01904.py -- tests/files/web/generated/M16-GAP-01904-operator-preferences.addon_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01904", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01904", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01905", + "gapId": "operator:preferences.addon_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01905-operator-preferences.addon_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01905.py -- tests/files/web/generated/M16-GAP-01905-operator-preferences.addon_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01905", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01905", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01906", + "gapId": "operator:preferences.app_template_install", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01906-operator-preferences.app_template_install.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01906.py -- tests/files/web/generated/M16-GAP-01906-operator-preferences.app_template_install.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01906", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01906", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01907", + "gapId": "operator:preferences.asset_library_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01907-operator-preferences.asset_library_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01907.py -- tests/files/web/generated/M16-GAP-01907-operator-preferences.asset_library_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01907", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01907", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01908", + "gapId": "operator:preferences.asset_library_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01908-operator-preferences.asset_library_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01908.py -- tests/files/web/generated/M16-GAP-01908-operator-preferences.asset_library_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01908", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01908", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01909", + "gapId": "operator:preferences.associate_blend", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01909-operator-preferences.associate_blend.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01909.py -- tests/files/web/generated/M16-GAP-01909-operator-preferences.associate_blend.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01909", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01909", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01910", + "gapId": "operator:preferences.autoexec_path_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01910-operator-preferences.autoexec_path_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01910.py -- tests/files/web/generated/M16-GAP-01910-operator-preferences.autoexec_path_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01910", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01910", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01911", + "gapId": "operator:preferences.autoexec_path_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01911-operator-preferences.autoexec_path_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01911.py -- tests/files/web/generated/M16-GAP-01911-operator-preferences.autoexec_path_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01911", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01911", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01912", + "gapId": "operator:preferences.clear_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01912-operator-preferences.clear_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01912.py -- tests/files/web/generated/M16-GAP-01912-operator-preferences.clear_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01912", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01912", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01913", + "gapId": "operator:preferences.copy_prev", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01913-operator-preferences.copy_prev.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01913.py -- tests/files/web/generated/M16-GAP-01913-operator-preferences.copy_prev.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01913", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01913", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01914", + "gapId": "operator:preferences.extension_repo_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01914-operator-preferences.extension_repo_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01914.py -- tests/files/web/generated/M16-GAP-01914-operator-preferences.extension_repo_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01914", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01914", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01915", + "gapId": "operator:preferences.extension_repo_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01915-operator-preferences.extension_repo_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01915.py -- tests/files/web/generated/M16-GAP-01915-operator-preferences.extension_repo_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01915", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01915", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01916", + "gapId": "operator:preferences.extension_url_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01916-operator-preferences.extension_url_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01916.py -- tests/files/web/generated/M16-GAP-01916-operator-preferences.extension_url_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01916", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01916", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01917", + "gapId": "operator:preferences.keyconfig_activate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01917-operator-preferences.keyconfig_activate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01917.py -- tests/files/web/generated/M16-GAP-01917-operator-preferences.keyconfig_activate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01917", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01917", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01918", + "gapId": "operator:preferences.keyconfig_export", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01918-operator-preferences.keyconfig_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01918.py -- tests/files/web/generated/M16-GAP-01918-operator-preferences.keyconfig_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01918", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01918", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01919", + "gapId": "operator:preferences.keyconfig_import", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01919-operator-preferences.keyconfig_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01919.py -- tests/files/web/generated/M16-GAP-01919-operator-preferences.keyconfig_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01919", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01919", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01920", + "gapId": "operator:preferences.keyconfig_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01920-operator-preferences.keyconfig_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01920.py -- tests/files/web/generated/M16-GAP-01920-operator-preferences.keyconfig_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01920", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01920", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01921", + "gapId": "operator:preferences.keyconfig_test", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01921-operator-preferences.keyconfig_test.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01921.py -- tests/files/web/generated/M16-GAP-01921-operator-preferences.keyconfig_test.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01921", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01921", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01922", + "gapId": "operator:preferences.keyitem_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01922-operator-preferences.keyitem_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01922.py -- tests/files/web/generated/M16-GAP-01922-operator-preferences.keyitem_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01922", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01922", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01923", + "gapId": "operator:preferences.keyitem_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01923-operator-preferences.keyitem_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01923.py -- tests/files/web/generated/M16-GAP-01923-operator-preferences.keyitem_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01923", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01923", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01924", + "gapId": "operator:preferences.keyitem_restore", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01924-operator-preferences.keyitem_restore.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01924.py -- tests/files/web/generated/M16-GAP-01924-operator-preferences.keyitem_restore.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01924", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01924", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01925", + "gapId": "operator:preferences.keymap_restore", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01925-operator-preferences.keymap_restore.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01925.py -- tests/files/web/generated/M16-GAP-01925-operator-preferences.keymap_restore.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01925", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01925", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01926", + "gapId": "operator:preferences.reset_default_theme", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01926-operator-preferences.reset_default_theme.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01926.py -- tests/files/web/generated/M16-GAP-01926-operator-preferences.reset_default_theme.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01926", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01926", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01927", + "gapId": "operator:preferences.script_directory_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01927-operator-preferences.script_directory_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01927.py -- tests/files/web/generated/M16-GAP-01927-operator-preferences.script_directory_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01927", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01927", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01928", + "gapId": "operator:preferences.script_directory_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01928-operator-preferences.script_directory_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01928.py -- tests/files/web/generated/M16-GAP-01928-operator-preferences.script_directory_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01928", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01928", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01929", + "gapId": "operator:preferences.start_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01929-operator-preferences.start_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01929.py -- tests/files/web/generated/M16-GAP-01929-operator-preferences.start_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01929", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01929", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01930", + "gapId": "operator:preferences.studiolight_copy_settings", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01930-operator-preferences.studiolight_copy_settings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01930.py -- tests/files/web/generated/M16-GAP-01930-operator-preferences.studiolight_copy_settings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01930", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01930", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01931", + "gapId": "operator:preferences.studiolight_install", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01931-operator-preferences.studiolight_install.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01931.py -- tests/files/web/generated/M16-GAP-01931-operator-preferences.studiolight_install.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01931", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01931", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01932", + "gapId": "operator:preferences.studiolight_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01932-operator-preferences.studiolight_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01932.py -- tests/files/web/generated/M16-GAP-01932-operator-preferences.studiolight_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01932", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01932", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01933", + "gapId": "operator:preferences.studiolight_uninstall", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01933-operator-preferences.studiolight_uninstall.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01933.py -- tests/files/web/generated/M16-GAP-01933-operator-preferences.studiolight_uninstall.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01933", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01933", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01934", + "gapId": "operator:preferences.theme_install", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01934-operator-preferences.theme_install.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01934.py -- tests/files/web/generated/M16-GAP-01934-operator-preferences.theme_install.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01934", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01934", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01935", + "gapId": "operator:preferences.unassociate_blend", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01935-operator-preferences.unassociate_blend.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01935.py -- tests/files/web/generated/M16-GAP-01935-operator-preferences.unassociate_blend.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01935", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01935", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01936", + "gapId": "operator:ptcache.add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01936-operator-ptcache.add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01936.py -- tests/files/web/generated/M16-GAP-01936-operator-ptcache.add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01936", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01936", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01937", + "gapId": "operator:ptcache.bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01937-operator-ptcache.bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01937.py -- tests/files/web/generated/M16-GAP-01937-operator-ptcache.bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01937", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01937", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01938", + "gapId": "operator:ptcache.bake_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01938-operator-ptcache.bake_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01938.py -- tests/files/web/generated/M16-GAP-01938-operator-ptcache.bake_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01938", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01938", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01939", + "gapId": "operator:ptcache.bake_from_cache", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01939-operator-ptcache.bake_from_cache.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01939.py -- tests/files/web/generated/M16-GAP-01939-operator-ptcache.bake_from_cache.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01939", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01939", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01940", + "gapId": "operator:ptcache.free_bake", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01940-operator-ptcache.free_bake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01940.py -- tests/files/web/generated/M16-GAP-01940-operator-ptcache.free_bake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01940", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01940", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01941", + "gapId": "operator:ptcache.free_bake_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01941-operator-ptcache.free_bake_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01941.py -- tests/files/web/generated/M16-GAP-01941-operator-ptcache.free_bake_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01941", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01941", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01942", + "gapId": "operator:ptcache.remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01942-operator-ptcache.remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01942.py -- tests/files/web/generated/M16-GAP-01942-operator-ptcache.remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01942", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01942", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01943", + "gapId": "operator:render.clear_texture_cache", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01943-operator-render.clear_texture_cache.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01943.py -- tests/files/web/generated/M16-GAP-01943-operator-render.clear_texture_cache.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01943", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01943", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01944", + "gapId": "operator:render.color_management_white_balance_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01944-operator-render.color_management_white_balance_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01944.py -- tests/files/web/generated/M16-GAP-01944-operator-render.color_management_white_balance_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01944", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01944", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01945", + "gapId": "operator:render.cycles_integrator_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01945-operator-render.cycles_integrator_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01945.py -- tests/files/web/generated/M16-GAP-01945-operator-render.cycles_integrator_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01945", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01945", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01946", + "gapId": "operator:render.cycles_performance_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01946-operator-render.cycles_performance_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01946.py -- tests/files/web/generated/M16-GAP-01946-operator-render.cycles_performance_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01946", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01946", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01947", + "gapId": "operator:render.cycles_sampling_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01947-operator-render.cycles_sampling_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01947.py -- tests/files/web/generated/M16-GAP-01947-operator-render.cycles_sampling_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01947", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01947", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01948", + "gapId": "operator:render.cycles_viewport_sampling_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01948-operator-render.cycles_viewport_sampling_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01948.py -- tests/files/web/generated/M16-GAP-01948-operator-render.cycles_viewport_sampling_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01948", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01948", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01949", + "gapId": "operator:render.eevee_raytracing_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01949-operator-render.eevee_raytracing_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01949.py -- tests/files/web/generated/M16-GAP-01949-operator-render.eevee_raytracing_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01949", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01949", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01950", + "gapId": "operator:render.generate_texture_cache", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01950-operator-render.generate_texture_cache.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01950.py -- tests/files/web/generated/M16-GAP-01950-operator-render.generate_texture_cache.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01950", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01950", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01951", + "gapId": "operator:render.opengl", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01951-operator-render.opengl.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01951.py -- tests/files/web/generated/M16-GAP-01951-operator-render.opengl.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01951", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01951", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01952", + "gapId": "operator:render.play_rendered_anim", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01952-operator-render.play_rendered_anim.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01952.py -- tests/files/web/generated/M16-GAP-01952-operator-render.play_rendered_anim.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01952", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01952", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01953", + "gapId": "operator:render.preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01953-operator-render.preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01953.py -- tests/files/web/generated/M16-GAP-01953-operator-render.preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01953", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01953", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01954", + "gapId": "operator:render.render", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01954-operator-render.render.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01954.py -- tests/files/web/generated/M16-GAP-01954-operator-render.render.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01954", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01954", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01955", + "gapId": "operator:render.shutter_curve_preset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01955-operator-render.shutter_curve_preset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01955.py -- tests/files/web/generated/M16-GAP-01955-operator-render.shutter_curve_preset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01955", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01955", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01956", + "gapId": "operator:render.swap_dimensions", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01956-operator-render.swap_dimensions.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01956.py -- tests/files/web/generated/M16-GAP-01956-operator-render.swap_dimensions.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01956", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01956", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01957", + "gapId": "operator:render.view_cancel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01957-operator-render.view_cancel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01957.py -- tests/files/web/generated/M16-GAP-01957-operator-render.view_cancel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01957", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01957", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01958", + "gapId": "operator:render.view_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01958-operator-render.view_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01958.py -- tests/files/web/generated/M16-GAP-01958-operator-render.view_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01958", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01958", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01959", + "gapId": "operator:rigidbody.bake_to_keyframes", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01959-operator-rigidbody.bake_to_keyframes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01959.py -- tests/files/web/generated/M16-GAP-01959-operator-rigidbody.bake_to_keyframes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01959", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01959", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01960", + "gapId": "operator:rigidbody.connect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01960-operator-rigidbody.connect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01960.py -- tests/files/web/generated/M16-GAP-01960-operator-rigidbody.connect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01960", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01960", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01961", + "gapId": "operator:rigidbody.constraint_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01961-operator-rigidbody.constraint_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01961.py -- tests/files/web/generated/M16-GAP-01961-operator-rigidbody.constraint_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01961", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01961", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01962", + "gapId": "operator:rigidbody.constraint_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01962-operator-rigidbody.constraint_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01962.py -- tests/files/web/generated/M16-GAP-01962-operator-rigidbody.constraint_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01962", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01962", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01963", + "gapId": "operator:rigidbody.mass_calculate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01963-operator-rigidbody.mass_calculate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01963.py -- tests/files/web/generated/M16-GAP-01963-operator-rigidbody.mass_calculate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01963", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01963", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01964", + "gapId": "operator:rigidbody.object_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01964-operator-rigidbody.object_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01964.py -- tests/files/web/generated/M16-GAP-01964-operator-rigidbody.object_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01964", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01964", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01965", + "gapId": "operator:rigidbody.object_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01965-operator-rigidbody.object_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01965.py -- tests/files/web/generated/M16-GAP-01965-operator-rigidbody.object_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01965", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01965", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01966", + "gapId": "operator:rigidbody.object_settings_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01966-operator-rigidbody.object_settings_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01966.py -- tests/files/web/generated/M16-GAP-01966-operator-rigidbody.object_settings_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01966", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01966", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01967", + "gapId": "operator:rigidbody.objects_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01967-operator-rigidbody.objects_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01967.py -- tests/files/web/generated/M16-GAP-01967-operator-rigidbody.objects_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01967", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01967", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01968", + "gapId": "operator:rigidbody.objects_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01968-operator-rigidbody.objects_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01968.py -- tests/files/web/generated/M16-GAP-01968-operator-rigidbody.objects_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01968", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01968", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01969", + "gapId": "operator:rigidbody.shape_change", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01969-operator-rigidbody.shape_change.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01969.py -- tests/files/web/generated/M16-GAP-01969-operator-rigidbody.shape_change.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01969", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01969", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01970", + "gapId": "operator:rigidbody.world_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01970-operator-rigidbody.world_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01970.py -- tests/files/web/generated/M16-GAP-01970-operator-rigidbody.world_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01970", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01970", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01971", + "gapId": "operator:rigidbody.world_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01971-operator-rigidbody.world_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01971.py -- tests/files/web/generated/M16-GAP-01971-operator-rigidbody.world_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01971", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01971", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01972", + "gapId": "operator:scene.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01972-operator-scene.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01972.py -- tests/files/web/generated/M16-GAP-01972-operator-scene.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01972", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01972", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01973", + "gapId": "operator:scene.drop_scene_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01973-operator-scene.drop_scene_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01973.py -- tests/files/web/generated/M16-GAP-01973-operator-scene.drop_scene_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01973", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01973", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01974", + "gapId": "operator:scene.freestyle_add_edge_marks_to_keying_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01974-operator-scene.freestyle_add_edge_marks_to_keying_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01974.py -- tests/files/web/generated/M16-GAP-01974-operator-scene.freestyle_add_edge_marks_to_keying_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01974", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01974", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01975", + "gapId": "operator:scene.freestyle_add_face_marks_to_keying_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01975-operator-scene.freestyle_add_face_marks_to_keying_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01975.py -- tests/files/web/generated/M16-GAP-01975-operator-scene.freestyle_add_face_marks_to_keying_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01975", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01975", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01976", + "gapId": "operator:scene.freestyle_alpha_modifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01976-operator-scene.freestyle_alpha_modifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01976.py -- tests/files/web/generated/M16-GAP-01976-operator-scene.freestyle_alpha_modifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01976", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01976", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01977", + "gapId": "operator:scene.freestyle_color_modifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01977-operator-scene.freestyle_color_modifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01977.py -- tests/files/web/generated/M16-GAP-01977-operator-scene.freestyle_color_modifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01977", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01977", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01978", + "gapId": "operator:scene.freestyle_fill_range_by_selection", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01978-operator-scene.freestyle_fill_range_by_selection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01978.py -- tests/files/web/generated/M16-GAP-01978-operator-scene.freestyle_fill_range_by_selection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01978", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01978", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01979", + "gapId": "operator:scene.freestyle_geometry_modifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01979-operator-scene.freestyle_geometry_modifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01979.py -- tests/files/web/generated/M16-GAP-01979-operator-scene.freestyle_geometry_modifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01979", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01979", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01980", + "gapId": "operator:scene.freestyle_lineset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01980-operator-scene.freestyle_lineset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01980.py -- tests/files/web/generated/M16-GAP-01980-operator-scene.freestyle_lineset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01980", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01980", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01981", + "gapId": "operator:scene.freestyle_lineset_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01981-operator-scene.freestyle_lineset_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01981.py -- tests/files/web/generated/M16-GAP-01981-operator-scene.freestyle_lineset_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01981", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01981", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01982", + "gapId": "operator:scene.freestyle_lineset_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01982-operator-scene.freestyle_lineset_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01982.py -- tests/files/web/generated/M16-GAP-01982-operator-scene.freestyle_lineset_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01982", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01982", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01983", + "gapId": "operator:scene.freestyle_lineset_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01983-operator-scene.freestyle_lineset_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01983.py -- tests/files/web/generated/M16-GAP-01983-operator-scene.freestyle_lineset_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01983", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01983", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01984", + "gapId": "operator:scene.freestyle_lineset_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01984-operator-scene.freestyle_lineset_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01984.py -- tests/files/web/generated/M16-GAP-01984-operator-scene.freestyle_lineset_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01984", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01984", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01985", + "gapId": "operator:scene.freestyle_linestyle_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01985-operator-scene.freestyle_linestyle_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01985.py -- tests/files/web/generated/M16-GAP-01985-operator-scene.freestyle_linestyle_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01985", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01985", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01986", + "gapId": "operator:scene.freestyle_modifier_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01986-operator-scene.freestyle_modifier_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01986.py -- tests/files/web/generated/M16-GAP-01986-operator-scene.freestyle_modifier_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01986", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01986", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01987", + "gapId": "operator:scene.freestyle_modifier_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01987-operator-scene.freestyle_modifier_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01987.py -- tests/files/web/generated/M16-GAP-01987-operator-scene.freestyle_modifier_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01987", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01987", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01988", + "gapId": "operator:scene.freestyle_modifier_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01988-operator-scene.freestyle_modifier_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01988.py -- tests/files/web/generated/M16-GAP-01988-operator-scene.freestyle_modifier_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01988", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01988", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01989", + "gapId": "operator:scene.freestyle_module_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01989-operator-scene.freestyle_module_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01989.py -- tests/files/web/generated/M16-GAP-01989-operator-scene.freestyle_module_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01989", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01989", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01990", + "gapId": "operator:scene.freestyle_module_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01990-operator-scene.freestyle_module_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01990.py -- tests/files/web/generated/M16-GAP-01990-operator-scene.freestyle_module_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01990", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01990", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01991", + "gapId": "operator:scene.freestyle_module_open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01991-operator-scene.freestyle_module_open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01991.py -- tests/files/web/generated/M16-GAP-01991-operator-scene.freestyle_module_open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01991", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01991", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01992", + "gapId": "operator:scene.freestyle_module_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01992-operator-scene.freestyle_module_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01992.py -- tests/files/web/generated/M16-GAP-01992-operator-scene.freestyle_module_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01992", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01992", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01993", + "gapId": "operator:scene.freestyle_stroke_material_create", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01993-operator-scene.freestyle_stroke_material_create.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01993.py -- tests/files/web/generated/M16-GAP-01993-operator-scene.freestyle_stroke_material_create.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01993", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01993", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01994", + "gapId": "operator:scene.freestyle_thickness_modifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01994-operator-scene.freestyle_thickness_modifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01994.py -- tests/files/web/generated/M16-GAP-01994-operator-scene.freestyle_thickness_modifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01994", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01994", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01995", + "gapId": "operator:scene.gltf2_action_filter_refresh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01995-operator-scene.gltf2_action_filter_refresh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01995.py -- tests/files/web/generated/M16-GAP-01995-operator-scene.gltf2_action_filter_refresh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01995", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01995", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01996", + "gapId": "operator:scene.gpencil_brush_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01996-operator-scene.gpencil_brush_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01996.py -- tests/files/web/generated/M16-GAP-01996-operator-scene.gpencil_brush_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01996", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01996", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01997", + "gapId": "operator:scene.gpencil_material_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01997-operator-scene.gpencil_material_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01997.py -- tests/files/web/generated/M16-GAP-01997-operator-scene.gpencil_material_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01997", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01997", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01998", + "gapId": "operator:scene.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01998-operator-scene.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01998.py -- tests/files/web/generated/M16-GAP-01998-operator-scene.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01998", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01998", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-01999", + "gapId": "operator:scene.new_sequencer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-01999-operator-scene.new_sequencer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-01999.py -- tests/files/web/generated/M16-GAP-01999-operator-scene.new_sequencer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-01999", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-01999", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02000", + "gapId": "operator:scene.new_sequencer_scene", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02000-operator-scene.new_sequencer_scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02000.py -- tests/files/web/generated/M16-GAP-02000-operator-scene.new_sequencer_scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02000", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02000", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02001", + "gapId": "operator:scene.render_view_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02001-operator-scene.render_view_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02001.py -- tests/files/web/generated/M16-GAP-02001-operator-scene.render_view_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02001", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02002", + "gapId": "operator:scene.render_view_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02002-operator-scene.render_view_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02002.py -- tests/files/web/generated/M16-GAP-02002-operator-scene.render_view_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02002", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02003", + "gapId": "operator:scene.view_layer_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02003-operator-scene.view_layer_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02003.py -- tests/files/web/generated/M16-GAP-02003-operator-scene.view_layer_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02003", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02004", + "gapId": "operator:scene.view_layer_add_aov", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02004-operator-scene.view_layer_add_aov.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02004.py -- tests/files/web/generated/M16-GAP-02004-operator-scene.view_layer_add_aov.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02004", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02005", + "gapId": "operator:scene.view_layer_add_lightgroup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02005-operator-scene.view_layer_add_lightgroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02005.py -- tests/files/web/generated/M16-GAP-02005-operator-scene.view_layer_add_lightgroup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02005", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02006", + "gapId": "operator:scene.view_layer_add_used_lightgroups", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02006-operator-scene.view_layer_add_used_lightgroups.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02006.py -- tests/files/web/generated/M16-GAP-02006-operator-scene.view_layer_add_used_lightgroups.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02006", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02007", + "gapId": "operator:scene.view_layer_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02007-operator-scene.view_layer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02007.py -- tests/files/web/generated/M16-GAP-02007-operator-scene.view_layer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02007", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02008", + "gapId": "operator:scene.view_layer_remove_aov", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02008-operator-scene.view_layer_remove_aov.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02008.py -- tests/files/web/generated/M16-GAP-02008-operator-scene.view_layer_remove_aov.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02008", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02009", + "gapId": "operator:scene.view_layer_remove_lightgroup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02009-operator-scene.view_layer_remove_lightgroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02009.py -- tests/files/web/generated/M16-GAP-02009-operator-scene.view_layer_remove_lightgroup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02009", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02010", + "gapId": "operator:scene.view_layer_remove_unused_lightgroups", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02010-operator-scene.view_layer_remove_unused_lightgroups.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02010.py -- tests/files/web/generated/M16-GAP-02010-operator-scene.view_layer_remove_unused_lightgroups.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02010", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02011", + "gapId": "operator:screen.actionzone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02011-operator-screen.actionzone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02011.py -- tests/files/web/generated/M16-GAP-02011-operator-screen.actionzone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02011", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02012", + "gapId": "operator:screen.animation_cancel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02012-operator-screen.animation_cancel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02012.py -- tests/files/web/generated/M16-GAP-02012-operator-screen.animation_cancel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02012", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02013", + "gapId": "operator:screen.animation_pause", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02013-operator-screen.animation_pause.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02013.py -- tests/files/web/generated/M16-GAP-02013-operator-screen.animation_pause.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02013", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02014", + "gapId": "operator:screen.animation_play", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02014-operator-screen.animation_play.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02014.py -- tests/files/web/generated/M16-GAP-02014-operator-screen.animation_play.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02014", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02015", + "gapId": "operator:screen.animation_step", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02015-operator-screen.animation_step.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02015.py -- tests/files/web/generated/M16-GAP-02015-operator-screen.animation_step.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02015", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02016", + "gapId": "operator:screen.area_close", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02016-operator-screen.area_close.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02016.py -- tests/files/web/generated/M16-GAP-02016-operator-screen.area_close.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02016", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02017", + "gapId": "operator:screen.area_dupli", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02017-operator-screen.area_dupli.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02017.py -- tests/files/web/generated/M16-GAP-02017-operator-screen.area_dupli.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02017", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02018", + "gapId": "operator:screen.area_join", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02018-operator-screen.area_join.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02018.py -- tests/files/web/generated/M16-GAP-02018-operator-screen.area_join.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02018", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02019", + "gapId": "operator:screen.area_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02019-operator-screen.area_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02019.py -- tests/files/web/generated/M16-GAP-02019-operator-screen.area_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02019", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02020", + "gapId": "operator:screen.area_options", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02020-operator-screen.area_options.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02020.py -- tests/files/web/generated/M16-GAP-02020-operator-screen.area_options.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02020", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02021", + "gapId": "operator:screen.area_split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02021-operator-screen.area_split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02021.py -- tests/files/web/generated/M16-GAP-02021-operator-screen.area_split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02021", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02022", + "gapId": "operator:screen.area_swap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02022-operator-screen.area_swap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02022.py -- tests/files/web/generated/M16-GAP-02022-operator-screen.area_swap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02022", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02023", + "gapId": "operator:screen.back_to_previous", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02023-operator-screen.back_to_previous.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02023.py -- tests/files/web/generated/M16-GAP-02023-operator-screen.back_to_previous.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02023", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02024", + "gapId": "operator:screen.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02024-operator-screen.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02024.py -- tests/files/web/generated/M16-GAP-02024-operator-screen.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02024", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02025", + "gapId": "operator:screen.drivers_editor_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02025-operator-screen.drivers_editor_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02025.py -- tests/files/web/generated/M16-GAP-02025-operator-screen.drivers_editor_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02025", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02026", + "gapId": "operator:screen.edge_merge", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02026-operator-screen.edge_merge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02026.py -- tests/files/web/generated/M16-GAP-02026-operator-screen.edge_merge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02026", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02027", + "gapId": "operator:screen.frame_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02027-operator-screen.frame_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02027.py -- tests/files/web/generated/M16-GAP-02027-operator-screen.frame_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02027", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02028", + "gapId": "operator:screen.frame_offset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02028-operator-screen.frame_offset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02028.py -- tests/files/web/generated/M16-GAP-02028-operator-screen.frame_offset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02028", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02029", + "gapId": "operator:screen.header_toggle_menus", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02029-operator-screen.header_toggle_menus.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02029.py -- tests/files/web/generated/M16-GAP-02029-operator-screen.header_toggle_menus.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02029", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02030", + "gapId": "operator:screen.info_log_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02030-operator-screen.info_log_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02030.py -- tests/files/web/generated/M16-GAP-02030-operator-screen.info_log_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02030", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02031", + "gapId": "operator:screen.keyframe_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02031-operator-screen.keyframe_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02031.py -- tests/files/web/generated/M16-GAP-02031-operator-screen.keyframe_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02031", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02032", + "gapId": "operator:screen.marker_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02032-operator-screen.marker_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02032.py -- tests/files/web/generated/M16-GAP-02032-operator-screen.marker_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02032", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02033", + "gapId": "operator:screen.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02033-operator-screen.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02033.py -- tests/files/web/generated/M16-GAP-02033-operator-screen.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02033", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02034", + "gapId": "operator:screen.quadview_size", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02034-operator-screen.quadview_size.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02034.py -- tests/files/web/generated/M16-GAP-02034-operator-screen.quadview_size.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02034", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02035", + "gapId": "operator:screen.redo_last", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02035-operator-screen.redo_last.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02035.py -- tests/files/web/generated/M16-GAP-02035-operator-screen.redo_last.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02035", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02036", + "gapId": "operator:screen.region_blend", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02036-operator-screen.region_blend.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02036.py -- tests/files/web/generated/M16-GAP-02036-operator-screen.region_blend.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02036", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02037", + "gapId": "operator:screen.region_context_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02037-operator-screen.region_context_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02037.py -- tests/files/web/generated/M16-GAP-02037-operator-screen.region_context_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02037", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02038", + "gapId": "operator:screen.region_flip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02038-operator-screen.region_flip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02038.py -- tests/files/web/generated/M16-GAP-02038-operator-screen.region_flip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02038", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02039", + "gapId": "operator:screen.region_quadview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02039-operator-screen.region_quadview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02039.py -- tests/files/web/generated/M16-GAP-02039-operator-screen.region_quadview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02039", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02040", + "gapId": "operator:screen.region_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02040-operator-screen.region_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02040.py -- tests/files/web/generated/M16-GAP-02040-operator-screen.region_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02040", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02041", + "gapId": "operator:screen.region_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02041-operator-screen.region_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02041.py -- tests/files/web/generated/M16-GAP-02041-operator-screen.region_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02041", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02042", + "gapId": "operator:screen.repeat_history", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02042-operator-screen.repeat_history.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02042.py -- tests/files/web/generated/M16-GAP-02042-operator-screen.repeat_history.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02042", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02043", + "gapId": "operator:screen.repeat_last", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02043-operator-screen.repeat_last.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02043.py -- tests/files/web/generated/M16-GAP-02043-operator-screen.repeat_last.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02043", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02044", + "gapId": "operator:screen.screen_full_area", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02044-operator-screen.screen_full_area.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02044.py -- tests/files/web/generated/M16-GAP-02044-operator-screen.screen_full_area.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02044", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02045", + "gapId": "operator:screen.screen_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02045-operator-screen.screen_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02045.py -- tests/files/web/generated/M16-GAP-02045-operator-screen.screen_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02045", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02046", + "gapId": "operator:screen.screenshot", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02046-operator-screen.screenshot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02046.py -- tests/files/web/generated/M16-GAP-02046-operator-screen.screenshot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02046", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02047", + "gapId": "operator:screen.screenshot_area", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02047-operator-screen.screenshot_area.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02047.py -- tests/files/web/generated/M16-GAP-02047-operator-screen.screenshot_area.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02047", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02048", + "gapId": "operator:screen.space_context_cycle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02048-operator-screen.space_context_cycle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02048.py -- tests/files/web/generated/M16-GAP-02048-operator-screen.space_context_cycle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02048", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02049", + "gapId": "operator:screen.space_type_set_or_cycle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02049-operator-screen.space_type_set_or_cycle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02049.py -- tests/files/web/generated/M16-GAP-02049-operator-screen.space_type_set_or_cycle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02049", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02050", + "gapId": "operator:screen.spacedata_cleanup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02050-operator-screen.spacedata_cleanup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02050.py -- tests/files/web/generated/M16-GAP-02050-operator-screen.spacedata_cleanup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02050", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02051", + "gapId": "operator:screen.time_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02051-operator-screen.time_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02051.py -- tests/files/web/generated/M16-GAP-02051-operator-screen.time_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02051", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02052", + "gapId": "operator:screen.userpref_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02052-operator-screen.userpref_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02052.py -- tests/files/web/generated/M16-GAP-02052-operator-screen.userpref_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02052", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02053", + "gapId": "operator:screen.workspace_cycle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02053-operator-screen.workspace_cycle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02053.py -- tests/files/web/generated/M16-GAP-02053-operator-screen.workspace_cycle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02053", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02054", + "gapId": "operator:script.execute_preset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02054-operator-script.execute_preset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02054.py -- tests/files/web/generated/M16-GAP-02054-operator-script.execute_preset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02054", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02055", + "gapId": "operator:script.python_file_run", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02055-operator-script.python_file_run.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02055.py -- tests/files/web/generated/M16-GAP-02055-operator-script.python_file_run.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02055", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02056", + "gapId": "operator:script.reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02056-operator-script.reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02056.py -- tests/files/web/generated/M16-GAP-02056-operator-script.reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02056", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02057", + "gapId": "operator:sculpt.brush_stroke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02057-operator-sculpt.brush_stroke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02057.py -- tests/files/web/generated/M16-GAP-02057-operator-sculpt.brush_stroke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02057", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02058", + "gapId": "operator:sculpt.cloth_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02058-operator-sculpt.cloth_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02058.py -- tests/files/web/generated/M16-GAP-02058-operator-sculpt.cloth_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02058", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02059", + "gapId": "operator:sculpt.color_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02059-operator-sculpt.color_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02059.py -- tests/files/web/generated/M16-GAP-02059-operator-sculpt.color_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02059", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02060", + "gapId": "operator:sculpt.detail_flood_fill", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02060-operator-sculpt.detail_flood_fill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02060.py -- tests/files/web/generated/M16-GAP-02060-operator-sculpt.detail_flood_fill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02060", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02061", + "gapId": "operator:sculpt.dynamic_topology_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02061-operator-sculpt.dynamic_topology_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02061.py -- tests/files/web/generated/M16-GAP-02061-operator-sculpt.dynamic_topology_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02061", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02062", + "gapId": "operator:sculpt.dyntopo_detail_size_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02062-operator-sculpt.dyntopo_detail_size_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02062.py -- tests/files/web/generated/M16-GAP-02062-operator-sculpt.dyntopo_detail_size_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02062", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02063", + "gapId": "operator:sculpt.expand", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02063-operator-sculpt.expand.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02063.py -- tests/files/web/generated/M16-GAP-02063-operator-sculpt.expand.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02063", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02064", + "gapId": "operator:sculpt.face_set_box_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02064-operator-sculpt.face_set_box_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02064.py -- tests/files/web/generated/M16-GAP-02064-operator-sculpt.face_set_box_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02064", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02065", + "gapId": "operator:sculpt.face_set_change_visibility", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02065-operator-sculpt.face_set_change_visibility.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02065.py -- tests/files/web/generated/M16-GAP-02065-operator-sculpt.face_set_change_visibility.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02065", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02066", + "gapId": "operator:sculpt.face_set_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02066-operator-sculpt.face_set_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02066.py -- tests/files/web/generated/M16-GAP-02066-operator-sculpt.face_set_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02066", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02067", + "gapId": "operator:sculpt.face_set_extract", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02067-operator-sculpt.face_set_extract.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02067.py -- tests/files/web/generated/M16-GAP-02067-operator-sculpt.face_set_extract.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02067", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02068", + "gapId": "operator:sculpt.face_set_lasso_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02068-operator-sculpt.face_set_lasso_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02068.py -- tests/files/web/generated/M16-GAP-02068-operator-sculpt.face_set_lasso_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02068", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02069", + "gapId": "operator:sculpt.face_set_line_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02069-operator-sculpt.face_set_line_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02069.py -- tests/files/web/generated/M16-GAP-02069-operator-sculpt.face_set_line_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02069", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02070", + "gapId": "operator:sculpt.face_set_polyline_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02070-operator-sculpt.face_set_polyline_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02070.py -- tests/files/web/generated/M16-GAP-02070-operator-sculpt.face_set_polyline_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02070", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02071", + "gapId": "operator:sculpt.face_sets_create", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02071-operator-sculpt.face_sets_create.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02071.py -- tests/files/web/generated/M16-GAP-02071-operator-sculpt.face_sets_create.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02071", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02072", + "gapId": "operator:sculpt.face_sets_init", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02072-operator-sculpt.face_sets_init.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02072.py -- tests/files/web/generated/M16-GAP-02072-operator-sculpt.face_sets_init.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02072", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02073", + "gapId": "operator:sculpt.face_sets_randomize_colors", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02073-operator-sculpt.face_sets_randomize_colors.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02073.py -- tests/files/web/generated/M16-GAP-02073-operator-sculpt.face_sets_randomize_colors.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02073", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02074", + "gapId": "operator:sculpt.mask_by_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02074-operator-sculpt.mask_by_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02074.py -- tests/files/web/generated/M16-GAP-02074-operator-sculpt.mask_by_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02074", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02075", + "gapId": "operator:sculpt.mask_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02075-operator-sculpt.mask_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02075.py -- tests/files/web/generated/M16-GAP-02075-operator-sculpt.mask_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02075", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02076", + "gapId": "operator:sculpt.mask_from_boundary", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02076-operator-sculpt.mask_from_boundary.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02076.py -- tests/files/web/generated/M16-GAP-02076-operator-sculpt.mask_from_boundary.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02076", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02077", + "gapId": "operator:sculpt.mask_from_cavity", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02077-operator-sculpt.mask_from_cavity.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02077.py -- tests/files/web/generated/M16-GAP-02077-operator-sculpt.mask_from_cavity.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02077", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02078", + "gapId": "operator:sculpt.mask_init", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02078-operator-sculpt.mask_init.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02078.py -- tests/files/web/generated/M16-GAP-02078-operator-sculpt.mask_init.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02078", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02079", + "gapId": "operator:sculpt.mesh_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02079-operator-sculpt.mesh_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02079.py -- tests/files/web/generated/M16-GAP-02079-operator-sculpt.mesh_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02079", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02080", + "gapId": "operator:sculpt.optimize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02080-operator-sculpt.optimize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02080.py -- tests/files/web/generated/M16-GAP-02080-operator-sculpt.optimize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02080", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02081", + "gapId": "operator:sculpt.paint_mask_extract", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02081-operator-sculpt.paint_mask_extract.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02081.py -- tests/files/web/generated/M16-GAP-02081-operator-sculpt.paint_mask_extract.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02081", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02082", + "gapId": "operator:sculpt.paint_mask_slice", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02082-operator-sculpt.paint_mask_slice.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02082.py -- tests/files/web/generated/M16-GAP-02082-operator-sculpt.paint_mask_slice.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02082", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02083", + "gapId": "operator:sculpt.project_line_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02083-operator-sculpt.project_line_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02083.py -- tests/files/web/generated/M16-GAP-02083-operator-sculpt.project_line_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02083", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02084", + "gapId": "operator:sculpt.sample_detail_size", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02084-operator-sculpt.sample_detail_size.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02084.py -- tests/files/web/generated/M16-GAP-02084-operator-sculpt.sample_detail_size.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02084", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02085", + "gapId": "operator:sculpt.sculptmode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02085-operator-sculpt.sculptmode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02085.py -- tests/files/web/generated/M16-GAP-02085-operator-sculpt.sculptmode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02085", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02086", + "gapId": "operator:sculpt.set_persistent_base", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02086-operator-sculpt.set_persistent_base.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02086.py -- tests/files/web/generated/M16-GAP-02086-operator-sculpt.set_persistent_base.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02086", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02087", + "gapId": "operator:sculpt.set_pivot_position", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02087-operator-sculpt.set_pivot_position.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02087.py -- tests/files/web/generated/M16-GAP-02087-operator-sculpt.set_pivot_position.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02087", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02088", + "gapId": "operator:sculpt.symmetrize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02088-operator-sculpt.symmetrize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02088.py -- tests/files/web/generated/M16-GAP-02088-operator-sculpt.symmetrize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02088", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02089", + "gapId": "operator:sculpt.trim_box_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02089-operator-sculpt.trim_box_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02089.py -- tests/files/web/generated/M16-GAP-02089-operator-sculpt.trim_box_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02089", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02090", + "gapId": "operator:sculpt.trim_lasso_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02090-operator-sculpt.trim_lasso_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02090.py -- tests/files/web/generated/M16-GAP-02090-operator-sculpt.trim_lasso_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02090", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02091", + "gapId": "operator:sculpt.trim_line_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02091-operator-sculpt.trim_line_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02091.py -- tests/files/web/generated/M16-GAP-02091-operator-sculpt.trim_line_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02091", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02092", + "gapId": "operator:sculpt.trim_polyline_gesture", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02092-operator-sculpt.trim_polyline_gesture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02092.py -- tests/files/web/generated/M16-GAP-02092-operator-sculpt.trim_polyline_gesture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02092", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02093", + "gapId": "operator:sculpt.uv_sculpt_grab", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02093-operator-sculpt.uv_sculpt_grab.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02093.py -- tests/files/web/generated/M16-GAP-02093-operator-sculpt.uv_sculpt_grab.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02093", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02094", + "gapId": "operator:sculpt.uv_sculpt_pinch", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02094-operator-sculpt.uv_sculpt_pinch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02094.py -- tests/files/web/generated/M16-GAP-02094-operator-sculpt.uv_sculpt_pinch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02094", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02095", + "gapId": "operator:sculpt.uv_sculpt_relax", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02095-operator-sculpt.uv_sculpt_relax.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02095.py -- tests/files/web/generated/M16-GAP-02095-operator-sculpt.uv_sculpt_relax.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02095", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02096", + "gapId": "operator:sculpt_curves.brush_stroke", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02096-operator-sculpt_curves.brush_stroke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02096.py -- tests/files/web/generated/M16-GAP-02096-operator-sculpt_curves.brush_stroke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02096", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02097", + "gapId": "operator:sculpt_curves.min_distance_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02097-operator-sculpt_curves.min_distance_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02097.py -- tests/files/web/generated/M16-GAP-02097-operator-sculpt_curves.min_distance_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02097", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02098", + "gapId": "operator:sculpt_curves.select_grow", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02098-operator-sculpt_curves.select_grow.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02098.py -- tests/files/web/generated/M16-GAP-02098-operator-sculpt_curves.select_grow.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02098", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02099", + "gapId": "operator:sculpt_curves.select_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02099-operator-sculpt_curves.select_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02099.py -- tests/files/web/generated/M16-GAP-02099-operator-sculpt_curves.select_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02099", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02100", + "gapId": "operator:sequencer.add_scene_strip_from_scene_asset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02100-operator-sequencer.add_scene_strip_from_scene_asset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02100.py -- tests/files/web/generated/M16-GAP-02100-operator-sequencer.add_scene_strip_from_scene_asset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02100", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02101", + "gapId": "operator:sequencer.box_blade", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02101-operator-sequencer.box_blade.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02101.py -- tests/files/web/generated/M16-GAP-02101-operator-sequencer.box_blade.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02101", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02102", + "gapId": "operator:sequencer.change_effect_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02102-operator-sequencer.change_effect_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02102.py -- tests/files/web/generated/M16-GAP-02102-operator-sequencer.change_effect_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02102", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02103", + "gapId": "operator:sequencer.change_path", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02103-operator-sequencer.change_path.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02103.py -- tests/files/web/generated/M16-GAP-02103-operator-sequencer.change_path.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02103", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02104", + "gapId": "operator:sequencer.change_scene", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02104-operator-sequencer.change_scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02104.py -- tests/files/web/generated/M16-GAP-02104-operator-sequencer.change_scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02104", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02105", + "gapId": "operator:sequencer.connect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02105-operator-sequencer.connect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02105.py -- tests/files/web/generated/M16-GAP-02105-operator-sequencer.connect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02105", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02106", + "gapId": "operator:sequencer.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02106-operator-sequencer.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02106.py -- tests/files/web/generated/M16-GAP-02106-operator-sequencer.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02106", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02107", + "gapId": "operator:sequencer.crossfade_sounds", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02107-operator-sequencer.crossfade_sounds.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02107.py -- tests/files/web/generated/M16-GAP-02107-operator-sequencer.crossfade_sounds.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02107", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02108", + "gapId": "operator:sequencer.cursor_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02108-operator-sequencer.cursor_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02108.py -- tests/files/web/generated/M16-GAP-02108-operator-sequencer.cursor_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02108", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02109", + "gapId": "operator:sequencer.deinterlace_selected_movies", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02109-operator-sequencer.deinterlace_selected_movies.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02109.py -- tests/files/web/generated/M16-GAP-02109-operator-sequencer.deinterlace_selected_movies.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02109", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02110", + "gapId": "operator:sequencer.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02110-operator-sequencer.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02110.py -- tests/files/web/generated/M16-GAP-02110-operator-sequencer.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02110", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02111", + "gapId": "operator:sequencer.disconnect", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02111-operator-sequencer.disconnect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02111.py -- tests/files/web/generated/M16-GAP-02111-operator-sequencer.disconnect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02111", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02112", + "gapId": "operator:sequencer.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02112-operator-sequencer.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02112.py -- tests/files/web/generated/M16-GAP-02112-operator-sequencer.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02112", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02113", + "gapId": "operator:sequencer.duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02113-operator-sequencer.duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02113.py -- tests/files/web/generated/M16-GAP-02113-operator-sequencer.duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02113", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02114", + "gapId": "operator:sequencer.duplicate_move_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02114-operator-sequencer.duplicate_move_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02114.py -- tests/files/web/generated/M16-GAP-02114-operator-sequencer.duplicate_move_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02114", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02115", + "gapId": "operator:sequencer.effect_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02115-operator-sequencer.effect_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02115.py -- tests/files/web/generated/M16-GAP-02115-operator-sequencer.effect_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02115", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02116", + "gapId": "operator:sequencer.enable_proxies", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02116-operator-sequencer.enable_proxies.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02116.py -- tests/files/web/generated/M16-GAP-02116-operator-sequencer.enable_proxies.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02116", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02117", + "gapId": "operator:sequencer.export_subtitles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02117-operator-sequencer.export_subtitles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02117.py -- tests/files/web/generated/M16-GAP-02117-operator-sequencer.export_subtitles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02117", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02118", + "gapId": "operator:sequencer.fades_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02118-operator-sequencer.fades_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02118.py -- tests/files/web/generated/M16-GAP-02118-operator-sequencer.fades_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02118", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02119", + "gapId": "operator:sequencer.fades_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02119-operator-sequencer.fades_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02119.py -- tests/files/web/generated/M16-GAP-02119-operator-sequencer.fades_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02119", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02120", + "gapId": "operator:sequencer.gap_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02120-operator-sequencer.gap_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02120.py -- tests/files/web/generated/M16-GAP-02120-operator-sequencer.gap_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02120", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02121", + "gapId": "operator:sequencer.gap_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02121-operator-sequencer.gap_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02121.py -- tests/files/web/generated/M16-GAP-02121-operator-sequencer.gap_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02121", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02122", + "gapId": "operator:sequencer.image_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02122-operator-sequencer.image_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02122.py -- tests/files/web/generated/M16-GAP-02122-operator-sequencer.image_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02122", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02123", + "gapId": "operator:sequencer.images_separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02123-operator-sequencer.images_separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02123.py -- tests/files/web/generated/M16-GAP-02123-operator-sequencer.images_separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02123", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02124", + "gapId": "operator:sequencer.lock", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02124-operator-sequencer.lock.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02124.py -- tests/files/web/generated/M16-GAP-02124-operator-sequencer.lock.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02124", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02125", + "gapId": "operator:sequencer.mask_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02125-operator-sequencer.mask_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02125.py -- tests/files/web/generated/M16-GAP-02125-operator-sequencer.mask_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02125", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02126", + "gapId": "operator:sequencer.meta_make", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02126-operator-sequencer.meta_make.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02126.py -- tests/files/web/generated/M16-GAP-02126-operator-sequencer.meta_make.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02126", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02127", + "gapId": "operator:sequencer.meta_separate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02127-operator-sequencer.meta_separate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02127.py -- tests/files/web/generated/M16-GAP-02127-operator-sequencer.meta_separate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02127", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02128", + "gapId": "operator:sequencer.meta_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02128-operator-sequencer.meta_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02128.py -- tests/files/web/generated/M16-GAP-02128-operator-sequencer.meta_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02128", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02129", + "gapId": "operator:sequencer.movie_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02129-operator-sequencer.movie_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02129.py -- tests/files/web/generated/M16-GAP-02129-operator-sequencer.movie_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02129", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02130", + "gapId": "operator:sequencer.movieclip_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02130-operator-sequencer.movieclip_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02130.py -- tests/files/web/generated/M16-GAP-02130-operator-sequencer.movieclip_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02130", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02131", + "gapId": "operator:sequencer.mute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02131-operator-sequencer.mute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02131.py -- tests/files/web/generated/M16-GAP-02131-operator-sequencer.mute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02131", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02132", + "gapId": "operator:sequencer.offset_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02132-operator-sequencer.offset_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02132.py -- tests/files/web/generated/M16-GAP-02132-operator-sequencer.offset_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02132", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02133", + "gapId": "operator:sequencer.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02133-operator-sequencer.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02133.py -- tests/files/web/generated/M16-GAP-02133-operator-sequencer.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02133", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02134", + "gapId": "operator:sequencer.preview_duplicate_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02134-operator-sequencer.preview_duplicate_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02134.py -- tests/files/web/generated/M16-GAP-02134-operator-sequencer.preview_duplicate_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02134", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02135", + "gapId": "operator:sequencer.preview_duplicate_move_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02135-operator-sequencer.preview_duplicate_move_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02135.py -- tests/files/web/generated/M16-GAP-02135-operator-sequencer.preview_duplicate_move_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02135", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02136", + "gapId": "operator:sequencer.reassign_inputs", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02136-operator-sequencer.reassign_inputs.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02136.py -- tests/files/web/generated/M16-GAP-02136-operator-sequencer.reassign_inputs.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02136", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02137", + "gapId": "operator:sequencer.rebuild_proxy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02137-operator-sequencer.rebuild_proxy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02137.py -- tests/files/web/generated/M16-GAP-02137-operator-sequencer.rebuild_proxy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02137", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02138", + "gapId": "operator:sequencer.refresh_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02138-operator-sequencer.refresh_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02138.py -- tests/files/web/generated/M16-GAP-02138-operator-sequencer.refresh_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02138", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02139", + "gapId": "operator:sequencer.reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02139-operator-sequencer.reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02139.py -- tests/files/web/generated/M16-GAP-02139-operator-sequencer.reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02139", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02140", + "gapId": "operator:sequencer.rename_channel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02140-operator-sequencer.rename_channel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02140.py -- tests/files/web/generated/M16-GAP-02140-operator-sequencer.rename_channel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02140", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02141", + "gapId": "operator:sequencer.rendersize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02141-operator-sequencer.rendersize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02141.py -- tests/files/web/generated/M16-GAP-02141-operator-sequencer.rendersize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02141", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02142", + "gapId": "operator:sequencer.retiming_add_freeze_frame_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02142-operator-sequencer.retiming_add_freeze_frame_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02142.py -- tests/files/web/generated/M16-GAP-02142-operator-sequencer.retiming_add_freeze_frame_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02142", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02143", + "gapId": "operator:sequencer.retiming_add_transition_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02143-operator-sequencer.retiming_add_transition_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02143.py -- tests/files/web/generated/M16-GAP-02143-operator-sequencer.retiming_add_transition_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02143", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02144", + "gapId": "operator:sequencer.retiming_freeze_frame_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02144-operator-sequencer.retiming_freeze_frame_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02144.py -- tests/files/web/generated/M16-GAP-02144-operator-sequencer.retiming_freeze_frame_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02144", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02145", + "gapId": "operator:sequencer.retiming_key_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02145-operator-sequencer.retiming_key_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02145.py -- tests/files/web/generated/M16-GAP-02145-operator-sequencer.retiming_key_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02145", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02146", + "gapId": "operator:sequencer.retiming_key_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02146-operator-sequencer.retiming_key_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02146.py -- tests/files/web/generated/M16-GAP-02146-operator-sequencer.retiming_key_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02146", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02147", + "gapId": "operator:sequencer.retiming_reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02147-operator-sequencer.retiming_reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02147.py -- tests/files/web/generated/M16-GAP-02147-operator-sequencer.retiming_reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02147", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02148", + "gapId": "operator:sequencer.retiming_segment_speed_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02148-operator-sequencer.retiming_segment_speed_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02148.py -- tests/files/web/generated/M16-GAP-02148-operator-sequencer.retiming_segment_speed_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02148", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02149", + "gapId": "operator:sequencer.retiming_show", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02149-operator-sequencer.retiming_show.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02149.py -- tests/files/web/generated/M16-GAP-02149-operator-sequencer.retiming_show.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02149", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02150", + "gapId": "operator:sequencer.retiming_transition_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02150-operator-sequencer.retiming_transition_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02150.py -- tests/files/web/generated/M16-GAP-02150-operator-sequencer.retiming_transition_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02150", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02151", + "gapId": "operator:sequencer.sample", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02151-operator-sequencer.sample.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02151.py -- tests/files/web/generated/M16-GAP-02151-operator-sequencer.sample.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02151", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02152", + "gapId": "operator:sequencer.scene_frame_range_update", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02152-operator-sequencer.scene_frame_range_update.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02152.py -- tests/files/web/generated/M16-GAP-02152-operator-sequencer.scene_frame_range_update.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02152", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02153", + "gapId": "operator:sequencer.scene_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02153-operator-sequencer.scene_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02153.py -- tests/files/web/generated/M16-GAP-02153-operator-sequencer.scene_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02153", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02154", + "gapId": "operator:sequencer.scene_strip_add_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02154-operator-sequencer.scene_strip_add_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02154.py -- tests/files/web/generated/M16-GAP-02154-operator-sequencer.scene_strip_add_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02154", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02155", + "gapId": "operator:sequencer.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02155-operator-sequencer.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02155.py -- tests/files/web/generated/M16-GAP-02155-operator-sequencer.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02155", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02156", + "gapId": "operator:sequencer.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02156-operator-sequencer.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02156.py -- tests/files/web/generated/M16-GAP-02156-operator-sequencer.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02156", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02157", + "gapId": "operator:sequencer.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02157-operator-sequencer.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02157.py -- tests/files/web/generated/M16-GAP-02157-operator-sequencer.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02157", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02158", + "gapId": "operator:sequencer.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02158-operator-sequencer.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02158.py -- tests/files/web/generated/M16-GAP-02158-operator-sequencer.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02158", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02159", + "gapId": "operator:sequencer.select_grouped", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02159-operator-sequencer.select_grouped.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02159.py -- tests/files/web/generated/M16-GAP-02159-operator-sequencer.select_grouped.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02159", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02160", + "gapId": "operator:sequencer.select_handle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02160-operator-sequencer.select_handle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02160.py -- tests/files/web/generated/M16-GAP-02160-operator-sequencer.select_handle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02160", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02161", + "gapId": "operator:sequencer.select_handles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02161-operator-sequencer.select_handles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02161.py -- tests/files/web/generated/M16-GAP-02161-operator-sequencer.select_handles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02161", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02162", + "gapId": "operator:sequencer.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02162-operator-sequencer.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02162.py -- tests/files/web/generated/M16-GAP-02162-operator-sequencer.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02162", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02163", + "gapId": "operator:sequencer.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02163-operator-sequencer.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02163.py -- tests/files/web/generated/M16-GAP-02163-operator-sequencer.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02163", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02164", + "gapId": "operator:sequencer.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02164-operator-sequencer.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02164.py -- tests/files/web/generated/M16-GAP-02164-operator-sequencer.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02164", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02165", + "gapId": "operator:sequencer.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02165-operator-sequencer.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02165.py -- tests/files/web/generated/M16-GAP-02165-operator-sequencer.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02165", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02166", + "gapId": "operator:sequencer.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02166-operator-sequencer.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02166.py -- tests/files/web/generated/M16-GAP-02166-operator-sequencer.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02166", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02167", + "gapId": "operator:sequencer.select_side", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02167-operator-sequencer.select_side.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02167.py -- tests/files/web/generated/M16-GAP-02167-operator-sequencer.select_side.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02167", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02168", + "gapId": "operator:sequencer.select_side_of_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02168-operator-sequencer.select_side_of_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02168.py -- tests/files/web/generated/M16-GAP-02168-operator-sequencer.select_side_of_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02168", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02169", + "gapId": "operator:sequencer.set_range_to_strips", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02169-operator-sequencer.set_range_to_strips.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02169.py -- tests/files/web/generated/M16-GAP-02169-operator-sequencer.set_range_to_strips.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02169", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02170", + "gapId": "operator:sequencer.slip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02170-operator-sequencer.slip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02170.py -- tests/files/web/generated/M16-GAP-02170-operator-sequencer.slip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02170", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02171", + "gapId": "operator:sequencer.snap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02171-operator-sequencer.snap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02171.py -- tests/files/web/generated/M16-GAP-02171-operator-sequencer.snap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02171", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02172", + "gapId": "operator:sequencer.sound_strip_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02172-operator-sequencer.sound_strip_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02172.py -- tests/files/web/generated/M16-GAP-02172-operator-sequencer.sound_strip_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02172", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02173", + "gapId": "operator:sequencer.split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02173-operator-sequencer.split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02173.py -- tests/files/web/generated/M16-GAP-02173-operator-sequencer.split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02173", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02174", + "gapId": "operator:sequencer.split_multicam", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02174-operator-sequencer.split_multicam.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02174.py -- tests/files/web/generated/M16-GAP-02174-operator-sequencer.split_multicam.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02174", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02175", + "gapId": "operator:sequencer.strip_color_tag_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02175-operator-sequencer.strip_color_tag_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02175.py -- tests/files/web/generated/M16-GAP-02175-operator-sequencer.strip_color_tag_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02175", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02176", + "gapId": "operator:sequencer.strip_jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02176-operator-sequencer.strip_jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02176.py -- tests/files/web/generated/M16-GAP-02176-operator-sequencer.strip_jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02176", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02177", + "gapId": "operator:sequencer.strip_modifier_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02177-operator-sequencer.strip_modifier_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02177.py -- tests/files/web/generated/M16-GAP-02177-operator-sequencer.strip_modifier_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02177", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02178", + "gapId": "operator:sequencer.strip_modifier_add_node_group", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02178-operator-sequencer.strip_modifier_add_node_group.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02178.py -- tests/files/web/generated/M16-GAP-02178-operator-sequencer.strip_modifier_add_node_group.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02178", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02179", + "gapId": "operator:sequencer.strip_modifier_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02179-operator-sequencer.strip_modifier_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02179.py -- tests/files/web/generated/M16-GAP-02179-operator-sequencer.strip_modifier_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02179", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02180", + "gapId": "operator:sequencer.strip_modifier_duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02180-operator-sequencer.strip_modifier_duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02180.py -- tests/files/web/generated/M16-GAP-02180-operator-sequencer.strip_modifier_duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02180", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02181", + "gapId": "operator:sequencer.strip_modifier_equalizer_redefine", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02181-operator-sequencer.strip_modifier_equalizer_redefine.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02181.py -- tests/files/web/generated/M16-GAP-02181-operator-sequencer.strip_modifier_equalizer_redefine.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02181", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02182", + "gapId": "operator:sequencer.strip_modifier_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02182-operator-sequencer.strip_modifier_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02182.py -- tests/files/web/generated/M16-GAP-02182-operator-sequencer.strip_modifier_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02182", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02183", + "gapId": "operator:sequencer.strip_modifier_move_to_index", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02183-operator-sequencer.strip_modifier_move_to_index.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02183.py -- tests/files/web/generated/M16-GAP-02183-operator-sequencer.strip_modifier_move_to_index.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02183", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02184", + "gapId": "operator:sequencer.strip_modifier_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02184-operator-sequencer.strip_modifier_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02184.py -- tests/files/web/generated/M16-GAP-02184-operator-sequencer.strip_modifier_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02184", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02185", + "gapId": "operator:sequencer.strip_modifier_set_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02185-operator-sequencer.strip_modifier_set_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02185.py -- tests/files/web/generated/M16-GAP-02185-operator-sequencer.strip_modifier_set_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02185", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02186", + "gapId": "operator:sequencer.strip_transform_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02186-operator-sequencer.strip_transform_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02186.py -- tests/files/web/generated/M16-GAP-02186-operator-sequencer.strip_transform_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02186", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02187", + "gapId": "operator:sequencer.strip_transform_fit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02187-operator-sequencer.strip_transform_fit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02187.py -- tests/files/web/generated/M16-GAP-02187-operator-sequencer.strip_transform_fit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02187", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02188", + "gapId": "operator:sequencer.swap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02188-operator-sequencer.swap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02188.py -- tests/files/web/generated/M16-GAP-02188-operator-sequencer.swap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02188", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02189", + "gapId": "operator:sequencer.swap_data", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02189-operator-sequencer.swap_data.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02189.py -- tests/files/web/generated/M16-GAP-02189-operator-sequencer.swap_data.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02189", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02190", + "gapId": "operator:sequencer.swap_inputs", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02190-operator-sequencer.swap_inputs.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02190.py -- tests/files/web/generated/M16-GAP-02190-operator-sequencer.swap_inputs.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02190", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02191", + "gapId": "operator:sequencer.text_cursor_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02191-operator-sequencer.text_cursor_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02191.py -- tests/files/web/generated/M16-GAP-02191-operator-sequencer.text_cursor_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02191", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02192", + "gapId": "operator:sequencer.text_cursor_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02192-operator-sequencer.text_cursor_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02192.py -- tests/files/web/generated/M16-GAP-02192-operator-sequencer.text_cursor_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02192", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02193", + "gapId": "operator:sequencer.text_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02193-operator-sequencer.text_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02193.py -- tests/files/web/generated/M16-GAP-02193-operator-sequencer.text_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02193", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02194", + "gapId": "operator:sequencer.text_deselect_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02194-operator-sequencer.text_deselect_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02194.py -- tests/files/web/generated/M16-GAP-02194-operator-sequencer.text_deselect_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02194", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02195", + "gapId": "operator:sequencer.text_edit_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02195-operator-sequencer.text_edit_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02195.py -- tests/files/web/generated/M16-GAP-02195-operator-sequencer.text_edit_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02195", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02196", + "gapId": "operator:sequencer.text_edit_cut", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02196-operator-sequencer.text_edit_cut.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02196.py -- tests/files/web/generated/M16-GAP-02196-operator-sequencer.text_edit_cut.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02196", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02197", + "gapId": "operator:sequencer.text_edit_mode_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02197-operator-sequencer.text_edit_mode_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02197.py -- tests/files/web/generated/M16-GAP-02197-operator-sequencer.text_edit_mode_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02197", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02198", + "gapId": "operator:sequencer.text_edit_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02198-operator-sequencer.text_edit_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02198.py -- tests/files/web/generated/M16-GAP-02198-operator-sequencer.text_edit_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02198", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02199", + "gapId": "operator:sequencer.text_insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02199-operator-sequencer.text_insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02199.py -- tests/files/web/generated/M16-GAP-02199-operator-sequencer.text_insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02199", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02200", + "gapId": "operator:sequencer.text_line_break", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02200-operator-sequencer.text_line_break.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02200.py -- tests/files/web/generated/M16-GAP-02200-operator-sequencer.text_line_break.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02200", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02201", + "gapId": "operator:sequencer.text_select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02201-operator-sequencer.text_select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02201.py -- tests/files/web/generated/M16-GAP-02201-operator-sequencer.text_select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02201", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02202", + "gapId": "operator:sequencer.text_strip_style_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02202-operator-sequencer.text_strip_style_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02202.py -- tests/files/web/generated/M16-GAP-02202-operator-sequencer.text_strip_style_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02202", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02203", + "gapId": "operator:sequencer.unlock", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02203-operator-sequencer.unlock.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02203.py -- tests/files/web/generated/M16-GAP-02203-operator-sequencer.unlock.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02203", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02204", + "gapId": "operator:sequencer.unmute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02204-operator-sequencer.unmute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02204.py -- tests/files/web/generated/M16-GAP-02204-operator-sequencer.unmute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02204", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02205", + "gapId": "operator:sequencer.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02205-operator-sequencer.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02205.py -- tests/files/web/generated/M16-GAP-02205-operator-sequencer.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02205", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02206", + "gapId": "operator:sequencer.view_all_preview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02206-operator-sequencer.view_all_preview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02206.py -- tests/files/web/generated/M16-GAP-02206-operator-sequencer.view_all_preview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02206", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02207", + "gapId": "operator:sequencer.view_frame", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02207-operator-sequencer.view_frame.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02207.py -- tests/files/web/generated/M16-GAP-02207-operator-sequencer.view_frame.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02207", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02208", + "gapId": "operator:sequencer.view_ghost_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02208-operator-sequencer.view_ghost_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02208.py -- tests/files/web/generated/M16-GAP-02208-operator-sequencer.view_ghost_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02208", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02209", + "gapId": "operator:sequencer.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02209-operator-sequencer.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02209.py -- tests/files/web/generated/M16-GAP-02209-operator-sequencer.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02209", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02210", + "gapId": "operator:sequencer.view_zoom_ratio", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02210-operator-sequencer.view_zoom_ratio.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02210.py -- tests/files/web/generated/M16-GAP-02210-operator-sequencer.view_zoom_ratio.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02210", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02211", + "gapId": "operator:sound.bake_animation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02211-operator-sound.bake_animation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02211.py -- tests/files/web/generated/M16-GAP-02211-operator-sound.bake_animation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02211", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02212", + "gapId": "operator:sound.mixdown", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02212-operator-sound.mixdown.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02212.py -- tests/files/web/generated/M16-GAP-02212-operator-sound.mixdown.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02212", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02213", + "gapId": "operator:sound.open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02213-operator-sound.open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02213.py -- tests/files/web/generated/M16-GAP-02213-operator-sound.open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02213", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02214", + "gapId": "operator:sound.open_mono", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02214-operator-sound.open_mono.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02214.py -- tests/files/web/generated/M16-GAP-02214-operator-sound.open_mono.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02214", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02215", + "gapId": "operator:sound.pack", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02215-operator-sound.pack.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02215.py -- tests/files/web/generated/M16-GAP-02215-operator-sound.pack.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02215", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02216", + "gapId": "operator:sound.unpack", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02216-operator-sound.unpack.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02216.py -- tests/files/web/generated/M16-GAP-02216-operator-sound.unpack.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02216", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02217", + "gapId": "operator:sound.update_animation_flags", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02217-operator-sound.update_animation_flags.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02217.py -- tests/files/web/generated/M16-GAP-02217-operator-sound.update_animation_flags.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02217", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02218", + "gapId": "operator:spreadsheet.add_row_filter_rule", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02218-operator-spreadsheet.add_row_filter_rule.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02218.py -- tests/files/web/generated/M16-GAP-02218-operator-spreadsheet.add_row_filter_rule.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02218", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02219", + "gapId": "operator:spreadsheet.change_spreadsheet_data_source", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02219-operator-spreadsheet.change_spreadsheet_data_source.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02219.py -- tests/files/web/generated/M16-GAP-02219-operator-spreadsheet.change_spreadsheet_data_source.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02219", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02220", + "gapId": "operator:spreadsheet.fit_column", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02220-operator-spreadsheet.fit_column.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02220.py -- tests/files/web/generated/M16-GAP-02220-operator-spreadsheet.fit_column.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02220", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02221", + "gapId": "operator:spreadsheet.remove_row_filter_rule", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02221-operator-spreadsheet.remove_row_filter_rule.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02221.py -- tests/files/web/generated/M16-GAP-02221-operator-spreadsheet.remove_row_filter_rule.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02221", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02222", + "gapId": "operator:spreadsheet.reorder_columns", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02222-operator-spreadsheet.reorder_columns.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02222.py -- tests/files/web/generated/M16-GAP-02222-operator-spreadsheet.reorder_columns.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02222", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02223", + "gapId": "operator:spreadsheet.resize_column", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02223-operator-spreadsheet.resize_column.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02223.py -- tests/files/web/generated/M16-GAP-02223-operator-spreadsheet.resize_column.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02223", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02224", + "gapId": "operator:spreadsheet.toggle_pin", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02224-operator-spreadsheet.toggle_pin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02224.py -- tests/files/web/generated/M16-GAP-02224-operator-spreadsheet.toggle_pin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02224", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02225", + "gapId": "operator:surface.primitive_nurbs_surface_circle_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02225-operator-surface.primitive_nurbs_surface_circle_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02225.py -- tests/files/web/generated/M16-GAP-02225-operator-surface.primitive_nurbs_surface_circle_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02225", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02226", + "gapId": "operator:surface.primitive_nurbs_surface_curve_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02226-operator-surface.primitive_nurbs_surface_curve_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02226.py -- tests/files/web/generated/M16-GAP-02226-operator-surface.primitive_nurbs_surface_curve_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02226", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02227", + "gapId": "operator:surface.primitive_nurbs_surface_cylinder_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02227-operator-surface.primitive_nurbs_surface_cylinder_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02227.py -- tests/files/web/generated/M16-GAP-02227-operator-surface.primitive_nurbs_surface_cylinder_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02227", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02228", + "gapId": "operator:surface.primitive_nurbs_surface_sphere_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02228-operator-surface.primitive_nurbs_surface_sphere_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02228.py -- tests/files/web/generated/M16-GAP-02228-operator-surface.primitive_nurbs_surface_sphere_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02228", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02229", + "gapId": "operator:surface.primitive_nurbs_surface_surface_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02229-operator-surface.primitive_nurbs_surface_surface_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02229.py -- tests/files/web/generated/M16-GAP-02229-operator-surface.primitive_nurbs_surface_surface_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02229", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02230", + "gapId": "operator:surface.primitive_nurbs_surface_torus_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02230-operator-surface.primitive_nurbs_surface_torus_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02230.py -- tests/files/web/generated/M16-GAP-02230-operator-surface.primitive_nurbs_surface_torus_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02230", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02231", + "gapId": "operator:text.autocomplete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02231-operator-text.autocomplete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02231.py -- tests/files/web/generated/M16-GAP-02231-operator-text.autocomplete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02231", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02232", + "gapId": "operator:text.comment_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02232-operator-text.comment_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02232.py -- tests/files/web/generated/M16-GAP-02232-operator-text.comment_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02232", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02233", + "gapId": "operator:text.convert_whitespace", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02233-operator-text.convert_whitespace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02233.py -- tests/files/web/generated/M16-GAP-02233-operator-text.convert_whitespace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02233", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02234", + "gapId": "operator:text.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02234-operator-text.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02234.py -- tests/files/web/generated/M16-GAP-02234-operator-text.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02234", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02235", + "gapId": "operator:text.cursor_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02235-operator-text.cursor_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02235.py -- tests/files/web/generated/M16-GAP-02235-operator-text.cursor_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02235", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02236", + "gapId": "operator:text.cut", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02236-operator-text.cut.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02236.py -- tests/files/web/generated/M16-GAP-02236-operator-text.cut.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02236", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02237", + "gapId": "operator:text.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02237-operator-text.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02237.py -- tests/files/web/generated/M16-GAP-02237-operator-text.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02237", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02238", + "gapId": "operator:text.duplicate_line", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02238-operator-text.duplicate_line.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02238.py -- tests/files/web/generated/M16-GAP-02238-operator-text.duplicate_line.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02238", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02239", + "gapId": "operator:text.find", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02239-operator-text.find.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02239.py -- tests/files/web/generated/M16-GAP-02239-operator-text.find.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02239", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02240", + "gapId": "operator:text.find_set_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02240-operator-text.find_set_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02240.py -- tests/files/web/generated/M16-GAP-02240-operator-text.find_set_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02240", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02241", + "gapId": "operator:text.indent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02241-operator-text.indent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02241.py -- tests/files/web/generated/M16-GAP-02241-operator-text.indent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02241", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02242", + "gapId": "operator:text.indent_or_autocomplete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02242-operator-text.indent_or_autocomplete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02242.py -- tests/files/web/generated/M16-GAP-02242-operator-text.indent_or_autocomplete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02242", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02243", + "gapId": "operator:text.insert", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02243-operator-text.insert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02243.py -- tests/files/web/generated/M16-GAP-02243-operator-text.insert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02243", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02244", + "gapId": "operator:text.jump", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02244-operator-text.jump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02244.py -- tests/files/web/generated/M16-GAP-02244-operator-text.jump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02244", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02245", + "gapId": "operator:text.jump_to_file_at_point", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02245-operator-text.jump_to_file_at_point.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02245.py -- tests/files/web/generated/M16-GAP-02245-operator-text.jump_to_file_at_point.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02245", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02246", + "gapId": "operator:text.line_break", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02246-operator-text.line_break.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02246.py -- tests/files/web/generated/M16-GAP-02246-operator-text.line_break.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02246", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02247", + "gapId": "operator:text.line_number", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02247-operator-text.line_number.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02247.py -- tests/files/web/generated/M16-GAP-02247-operator-text.line_number.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02247", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02248", + "gapId": "operator:text.make_internal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02248-operator-text.make_internal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02248.py -- tests/files/web/generated/M16-GAP-02248-operator-text.make_internal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02248", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02249", + "gapId": "operator:text.move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02249-operator-text.move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02249.py -- tests/files/web/generated/M16-GAP-02249-operator-text.move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02249", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02250", + "gapId": "operator:text.move_lines", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02250-operator-text.move_lines.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02250.py -- tests/files/web/generated/M16-GAP-02250-operator-text.move_lines.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02250", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02251", + "gapId": "operator:text.move_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02251-operator-text.move_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02251.py -- tests/files/web/generated/M16-GAP-02251-operator-text.move_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02251", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02252", + "gapId": "operator:text.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02252-operator-text.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02252.py -- tests/files/web/generated/M16-GAP-02252-operator-text.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02252", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02253", + "gapId": "operator:text.open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02253-operator-text.open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02253.py -- tests/files/web/generated/M16-GAP-02253-operator-text.open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02253", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02254", + "gapId": "operator:text.overwrite_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02254-operator-text.overwrite_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02254.py -- tests/files/web/generated/M16-GAP-02254-operator-text.overwrite_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02254", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02255", + "gapId": "operator:text.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02255-operator-text.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02255.py -- tests/files/web/generated/M16-GAP-02255-operator-text.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02255", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02256", + "gapId": "operator:text.reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02256-operator-text.reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02256.py -- tests/files/web/generated/M16-GAP-02256-operator-text.reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02256", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02257", + "gapId": "operator:text.replace", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02257-operator-text.replace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02257.py -- tests/files/web/generated/M16-GAP-02257-operator-text.replace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02257", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02258", + "gapId": "operator:text.replace_set_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02258-operator-text.replace_set_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02258.py -- tests/files/web/generated/M16-GAP-02258-operator-text.replace_set_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02258", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02259", + "gapId": "operator:text.resolve_conflict", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02259-operator-text.resolve_conflict.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02259.py -- tests/files/web/generated/M16-GAP-02259-operator-text.resolve_conflict.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02259", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02260", + "gapId": "operator:text.run_script", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02260-operator-text.run_script.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02260.py -- tests/files/web/generated/M16-GAP-02260-operator-text.run_script.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02260", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02261", + "gapId": "operator:text.save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02261-operator-text.save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02261.py -- tests/files/web/generated/M16-GAP-02261-operator-text.save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02261", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02262", + "gapId": "operator:text.save_as", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02262-operator-text.save_as.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02262.py -- tests/files/web/generated/M16-GAP-02262-operator-text.save_as.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02262", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02263", + "gapId": "operator:text.scroll", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02263-operator-text.scroll.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02263.py -- tests/files/web/generated/M16-GAP-02263-operator-text.scroll.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02263", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02264", + "gapId": "operator:text.scroll_bar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02264-operator-text.scroll_bar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02264.py -- tests/files/web/generated/M16-GAP-02264-operator-text.scroll_bar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02264", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02265", + "gapId": "operator:text.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02265-operator-text.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02265.py -- tests/files/web/generated/M16-GAP-02265-operator-text.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02265", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02266", + "gapId": "operator:text.select_line", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02266-operator-text.select_line.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02266.py -- tests/files/web/generated/M16-GAP-02266-operator-text.select_line.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02266", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02267", + "gapId": "operator:text.select_word", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02267-operator-text.select_word.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02267.py -- tests/files/web/generated/M16-GAP-02267-operator-text.select_word.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02267", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02268", + "gapId": "operator:text.selection_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02268-operator-text.selection_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02268.py -- tests/files/web/generated/M16-GAP-02268-operator-text.selection_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02268", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02269", + "gapId": "operator:text.start_find", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02269-operator-text.start_find.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02269.py -- tests/files/web/generated/M16-GAP-02269-operator-text.start_find.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02269", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02270", + "gapId": "operator:text.to_3d_object", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02270-operator-text.to_3d_object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02270.py -- tests/files/web/generated/M16-GAP-02270-operator-text.to_3d_object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02270", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02271", + "gapId": "operator:text.unindent", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02271-operator-text.unindent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02271.py -- tests/files/web/generated/M16-GAP-02271-operator-text.unindent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02271", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02272", + "gapId": "operator:text.unlink", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02272-operator-text.unlink.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02272.py -- tests/files/web/generated/M16-GAP-02272-operator-text.unlink.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02272", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02273", + "gapId": "operator:text.update_shader", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02273-operator-text.update_shader.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02273.py -- tests/files/web/generated/M16-GAP-02273-operator-text.update_shader.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02273", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02274", + "gapId": "operator:text_editor.preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02274-operator-text_editor.preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02274.py -- tests/files/web/generated/M16-GAP-02274-operator-text_editor.preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02274", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02275", + "gapId": "operator:texture.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02275-operator-texture.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02275.py -- tests/files/web/generated/M16-GAP-02275-operator-texture.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02275", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02276", + "gapId": "operator:texture.slot_copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02276-operator-texture.slot_copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02276.py -- tests/files/web/generated/M16-GAP-02276-operator-texture.slot_copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02276", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02277", + "gapId": "operator:texture.slot_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02277-operator-texture.slot_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02277.py -- tests/files/web/generated/M16-GAP-02277-operator-texture.slot_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02277", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02278", + "gapId": "operator:texture.slot_paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02278-operator-texture.slot_paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02278.py -- tests/files/web/generated/M16-GAP-02278-operator-texture.slot_paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02278", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02279", + "gapId": "operator:transform.bbone_resize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02279-operator-transform.bbone_resize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02279.py -- tests/files/web/generated/M16-GAP-02279-operator-transform.bbone_resize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02279", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02280", + "gapId": "operator:transform.bend", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02280-operator-transform.bend.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02280.py -- tests/files/web/generated/M16-GAP-02280-operator-transform.bend.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02280", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02281", + "gapId": "operator:transform.create_orientation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02281-operator-transform.create_orientation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02281.py -- tests/files/web/generated/M16-GAP-02281-operator-transform.create_orientation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02281", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02282", + "gapId": "operator:transform.delete_orientation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02282-operator-transform.delete_orientation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02282.py -- tests/files/web/generated/M16-GAP-02282-operator-transform.delete_orientation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02282", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02283", + "gapId": "operator:transform.edge_bevelweight", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02283-operator-transform.edge_bevelweight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02283.py -- tests/files/web/generated/M16-GAP-02283-operator-transform.edge_bevelweight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02283", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02284", + "gapId": "operator:transform.edge_crease", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02284-operator-transform.edge_crease.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02284.py -- tests/files/web/generated/M16-GAP-02284-operator-transform.edge_crease.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02284", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02285", + "gapId": "operator:transform.edge_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02285-operator-transform.edge_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02285.py -- tests/files/web/generated/M16-GAP-02285-operator-transform.edge_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02285", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02286", + "gapId": "operator:transform.from_gizmo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02286-operator-transform.from_gizmo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02286.py -- tests/files/web/generated/M16-GAP-02286-operator-transform.from_gizmo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02286", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02287", + "gapId": "operator:transform.mirror", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02287-operator-transform.mirror.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02287.py -- tests/files/web/generated/M16-GAP-02287-operator-transform.mirror.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02287", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02288", + "gapId": "operator:transform.push_pull", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02288-operator-transform.push_pull.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02288.py -- tests/files/web/generated/M16-GAP-02288-operator-transform.push_pull.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02288", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02289", + "gapId": "operator:transform.resize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02289-operator-transform.resize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02289.py -- tests/files/web/generated/M16-GAP-02289-operator-transform.resize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02289", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02290", + "gapId": "operator:transform.rotate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02290-operator-transform.rotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02290.py -- tests/files/web/generated/M16-GAP-02290-operator-transform.rotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02290", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02291", + "gapId": "operator:transform.rotate_normal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02291-operator-transform.rotate_normal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02291.py -- tests/files/web/generated/M16-GAP-02291-operator-transform.rotate_normal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02291", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02292", + "gapId": "operator:transform.select_orientation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02292-operator-transform.select_orientation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02292.py -- tests/files/web/generated/M16-GAP-02292-operator-transform.select_orientation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02292", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02293", + "gapId": "operator:transform.seq_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02293-operator-transform.seq_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02293.py -- tests/files/web/generated/M16-GAP-02293-operator-transform.seq_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02293", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02294", + "gapId": "operator:transform.shear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02294-operator-transform.shear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02294.py -- tests/files/web/generated/M16-GAP-02294-operator-transform.shear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02294", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02295", + "gapId": "operator:transform.shrink_fatten", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02295-operator-transform.shrink_fatten.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02295.py -- tests/files/web/generated/M16-GAP-02295-operator-transform.shrink_fatten.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02295", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02296", + "gapId": "operator:transform.skin_resize", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02296-operator-transform.skin_resize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02296.py -- tests/files/web/generated/M16-GAP-02296-operator-transform.skin_resize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02296", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02297", + "gapId": "operator:transform.tilt", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02297-operator-transform.tilt.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02297.py -- tests/files/web/generated/M16-GAP-02297-operator-transform.tilt.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02297", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02298", + "gapId": "operator:transform.tosphere", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02298-operator-transform.tosphere.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02298.py -- tests/files/web/generated/M16-GAP-02298-operator-transform.tosphere.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02298", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02299", + "gapId": "operator:transform.trackball", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02299-operator-transform.trackball.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02299.py -- tests/files/web/generated/M16-GAP-02299-operator-transform.trackball.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02299", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02300", + "gapId": "operator:transform.transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02300-operator-transform.transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02300.py -- tests/files/web/generated/M16-GAP-02300-operator-transform.transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02300", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02301", + "gapId": "operator:transform.translate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02301-operator-transform.translate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02301.py -- tests/files/web/generated/M16-GAP-02301-operator-transform.translate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02301", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02302", + "gapId": "operator:transform.vert_crease", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02302-operator-transform.vert_crease.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02302.py -- tests/files/web/generated/M16-GAP-02302-operator-transform.vert_crease.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02302", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02303", + "gapId": "operator:transform.vert_slide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02303-operator-transform.vert_slide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02303.py -- tests/files/web/generated/M16-GAP-02303-operator-transform.vert_slide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02303", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02304", + "gapId": "operator:transform.vertex_random", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02304-operator-transform.vertex_random.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02304.py -- tests/files/web/generated/M16-GAP-02304-operator-transform.vertex_random.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02304", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02305", + "gapId": "operator:transform.vertex_warp", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02305-operator-transform.vertex_warp.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02305.py -- tests/files/web/generated/M16-GAP-02305-operator-transform.vertex_warp.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02305", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02306", + "gapId": "operator:ui.assign_default_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02306-operator-ui.assign_default_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02306.py -- tests/files/web/generated/M16-GAP-02306-operator-ui.assign_default_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02306", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02307", + "gapId": "operator:ui.button_execute", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02307-operator-ui.button_execute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02307.py -- tests/files/web/generated/M16-GAP-02307-operator-ui.button_execute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02307", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02308", + "gapId": "operator:ui.button_string_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02308-operator-ui.button_string_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02308.py -- tests/files/web/generated/M16-GAP-02308-operator-ui.button_string_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02308", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02309", + "gapId": "operator:ui.copy_as_driver_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02309-operator-ui.copy_as_driver_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02309.py -- tests/files/web/generated/M16-GAP-02309-operator-ui.copy_as_driver_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02309", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02310", + "gapId": "operator:ui.copy_data_path_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02310-operator-ui.copy_data_path_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02310.py -- tests/files/web/generated/M16-GAP-02310-operator-ui.copy_data_path_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02310", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02311", + "gapId": "operator:ui.copy_driver_to_selected_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02311-operator-ui.copy_driver_to_selected_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02311.py -- tests/files/web/generated/M16-GAP-02311-operator-ui.copy_driver_to_selected_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02311", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02312", + "gapId": "operator:ui.copy_python_command_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02312-operator-ui.copy_python_command_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02312.py -- tests/files/web/generated/M16-GAP-02312-operator-ui.copy_python_command_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02312", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02313", + "gapId": "operator:ui.copy_to_selected_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02313-operator-ui.copy_to_selected_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02313.py -- tests/files/web/generated/M16-GAP-02313-operator-ui.copy_to_selected_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02313", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02314", + "gapId": "operator:ui.drop_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02314-operator-ui.drop_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02314.py -- tests/files/web/generated/M16-GAP-02314-operator-ui.drop_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02314", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02315", + "gapId": "operator:ui.drop_material", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02315-operator-ui.drop_material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02315.py -- tests/files/web/generated/M16-GAP-02315-operator-ui.drop_material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02315", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02316", + "gapId": "operator:ui.drop_name", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02316-operator-ui.drop_name.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02316.py -- tests/files/web/generated/M16-GAP-02316-operator-ui.drop_name.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02316", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02317", + "gapId": "operator:ui.editsource", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02317-operator-ui.editsource.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02317.py -- tests/files/web/generated/M16-GAP-02317-operator-ui.editsource.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02317", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02318", + "gapId": "operator:ui.eyedropper_bone", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02318-operator-ui.eyedropper_bone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02318.py -- tests/files/web/generated/M16-GAP-02318-operator-ui.eyedropper_bone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02318", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02319", + "gapId": "operator:ui.eyedropper_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02319-operator-ui.eyedropper_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02319.py -- tests/files/web/generated/M16-GAP-02319-operator-ui.eyedropper_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02319", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02320", + "gapId": "operator:ui.eyedropper_colorramp", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02320-operator-ui.eyedropper_colorramp.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02320.py -- tests/files/web/generated/M16-GAP-02320-operator-ui.eyedropper_colorramp.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02320", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02321", + "gapId": "operator:ui.eyedropper_colorramp_point", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02321-operator-ui.eyedropper_colorramp_point.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02321.py -- tests/files/web/generated/M16-GAP-02321-operator-ui.eyedropper_colorramp_point.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02321", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02322", + "gapId": "operator:ui.eyedropper_depth", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02322-operator-ui.eyedropper_depth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02322.py -- tests/files/web/generated/M16-GAP-02322-operator-ui.eyedropper_depth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02322", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02323", + "gapId": "operator:ui.eyedropper_driver", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02323-operator-ui.eyedropper_driver.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02323.py -- tests/files/web/generated/M16-GAP-02323-operator-ui.eyedropper_driver.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02323", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02324", + "gapId": "operator:ui.eyedropper_grease_pencil_color", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02324-operator-ui.eyedropper_grease_pencil_color.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02324.py -- tests/files/web/generated/M16-GAP-02324-operator-ui.eyedropper_grease_pencil_color.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02324", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02325", + "gapId": "operator:ui.eyedropper_id", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02325-operator-ui.eyedropper_id.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02325.py -- tests/files/web/generated/M16-GAP-02325-operator-ui.eyedropper_id.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02325", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02326", + "gapId": "operator:ui.jump_to_target_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02326-operator-ui.jump_to_target_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02326.py -- tests/files/web/generated/M16-GAP-02326-operator-ui.jump_to_target_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02326", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02327", + "gapId": "operator:ui.list_start_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02327-operator-ui.list_start_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02327.py -- tests/files/web/generated/M16-GAP-02327-operator-ui.list_start_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02327", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02328", + "gapId": "operator:ui.override_add_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02328-operator-ui.override_add_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02328.py -- tests/files/web/generated/M16-GAP-02328-operator-ui.override_add_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02328", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02329", + "gapId": "operator:ui.override_idtemplate_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02329-operator-ui.override_idtemplate_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02329.py -- tests/files/web/generated/M16-GAP-02329-operator-ui.override_idtemplate_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02329", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02330", + "gapId": "operator:ui.override_idtemplate_make", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02330-operator-ui.override_idtemplate_make.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02330.py -- tests/files/web/generated/M16-GAP-02330-operator-ui.override_idtemplate_make.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02330", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02331", + "gapId": "operator:ui.override_idtemplate_reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02331-operator-ui.override_idtemplate_reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02331.py -- tests/files/web/generated/M16-GAP-02331-operator-ui.override_idtemplate_reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02331", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02332", + "gapId": "operator:ui.override_remove_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02332-operator-ui.override_remove_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02332.py -- tests/files/web/generated/M16-GAP-02332-operator-ui.override_remove_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02332", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02333", + "gapId": "operator:ui.reloadtranslation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02333-operator-ui.reloadtranslation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02333.py -- tests/files/web/generated/M16-GAP-02333-operator-ui.reloadtranslation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02333", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02334", + "gapId": "operator:ui.reset_default_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02334-operator-ui.reset_default_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02334.py -- tests/files/web/generated/M16-GAP-02334-operator-ui.reset_default_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02334", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02335", + "gapId": "operator:ui.unset_property_button", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02335-operator-ui.unset_property_button.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02335.py -- tests/files/web/generated/M16-GAP-02335-operator-ui.unset_property_button.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02335", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02336", + "gapId": "operator:ui.view_drop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02336-operator-ui.view_drop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02336.py -- tests/files/web/generated/M16-GAP-02336-operator-ui.view_drop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02336", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02337", + "gapId": "operator:ui.view_item_delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02337-operator-ui.view_item_delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02337.py -- tests/files/web/generated/M16-GAP-02337-operator-ui.view_item_delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02337", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02338", + "gapId": "operator:ui.view_item_focus", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02338-operator-ui.view_item_focus.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02338.py -- tests/files/web/generated/M16-GAP-02338-operator-ui.view_item_focus.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02338", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02339", + "gapId": "operator:ui.view_item_navigate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02339-operator-ui.view_item_navigate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02339.py -- tests/files/web/generated/M16-GAP-02339-operator-ui.view_item_navigate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02339", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02340", + "gapId": "operator:ui.view_item_rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02340-operator-ui.view_item_rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02340.py -- tests/files/web/generated/M16-GAP-02340-operator-ui.view_item_rename.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02340", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02341", + "gapId": "operator:ui.view_item_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02341-operator-ui.view_item_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02341.py -- tests/files/web/generated/M16-GAP-02341-operator-ui.view_item_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02341", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02342", + "gapId": "operator:ui.view_scroll", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02342-operator-ui.view_scroll.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02342.py -- tests/files/web/generated/M16-GAP-02342-operator-ui.view_scroll.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02342", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02343", + "gapId": "operator:ui.view_start_filter", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02343-operator-ui.view_start_filter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02343.py -- tests/files/web/generated/M16-GAP-02343-operator-ui.view_start_filter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02343", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02344", + "gapId": "operator:uilist.entry_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02344-operator-uilist.entry_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02344.py -- tests/files/web/generated/M16-GAP-02344-operator-uilist.entry_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02344", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02345", + "gapId": "operator:uilist.entry_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02345-operator-uilist.entry_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02345.py -- tests/files/web/generated/M16-GAP-02345-operator-uilist.entry_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02345", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02346", + "gapId": "operator:uilist.entry_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02346-operator-uilist.entry_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02346.py -- tests/files/web/generated/M16-GAP-02346-operator-uilist.entry_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02346", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02347", + "gapId": "operator:uv.align", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02347-operator-uv.align.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02347.py -- tests/files/web/generated/M16-GAP-02347-operator-uv.align.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02347", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02348", + "gapId": "operator:uv.align_rotation", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02348-operator-uv.align_rotation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02348.py -- tests/files/web/generated/M16-GAP-02348-operator-uv.align_rotation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02348", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02349", + "gapId": "operator:uv.arrange_islands", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02349-operator-uv.arrange_islands.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02349.py -- tests/files/web/generated/M16-GAP-02349-operator-uv.arrange_islands.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02349", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02350", + "gapId": "operator:uv.average_islands_scale", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02350-operator-uv.average_islands_scale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02350.py -- tests/files/web/generated/M16-GAP-02350-operator-uv.average_islands_scale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02350", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02351", + "gapId": "operator:uv.copy", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02351-operator-uv.copy.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02351.py -- tests/files/web/generated/M16-GAP-02351-operator-uv.copy.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02351", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02352", + "gapId": "operator:uv.copy_mirrored_faces", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02352-operator-uv.copy_mirrored_faces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02352.py -- tests/files/web/generated/M16-GAP-02352-operator-uv.copy_mirrored_faces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02352", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02353", + "gapId": "operator:uv.cube_project", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02353-operator-uv.cube_project.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02353.py -- tests/files/web/generated/M16-GAP-02353-operator-uv.cube_project.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02353", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02354", + "gapId": "operator:uv.cursor_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02354-operator-uv.cursor_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02354.py -- tests/files/web/generated/M16-GAP-02354-operator-uv.cursor_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02354", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02355", + "gapId": "operator:uv.custom_region_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02355-operator-uv.custom_region_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02355.py -- tests/files/web/generated/M16-GAP-02355-operator-uv.custom_region_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02355", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02356", + "gapId": "operator:uv.cylinder_project", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02356-operator-uv.cylinder_project.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02356.py -- tests/files/web/generated/M16-GAP-02356-operator-uv.cylinder_project.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02356", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02357", + "gapId": "operator:uv.export_layout", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02357-operator-uv.export_layout.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02357.py -- tests/files/web/generated/M16-GAP-02357-operator-uv.export_layout.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02357", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02358", + "gapId": "operator:uv.follow_active_quads", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02358-operator-uv.follow_active_quads.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02358.py -- tests/files/web/generated/M16-GAP-02358-operator-uv.follow_active_quads.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02358", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02359", + "gapId": "operator:uv.hide", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02359-operator-uv.hide.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02359.py -- tests/files/web/generated/M16-GAP-02359-operator-uv.hide.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02359", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02360", + "gapId": "operator:uv.lightmap_pack", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02360-operator-uv.lightmap_pack.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02360.py -- tests/files/web/generated/M16-GAP-02360-operator-uv.lightmap_pack.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02360", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02361", + "gapId": "operator:uv.mark_seam", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02361-operator-uv.mark_seam.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02361.py -- tests/files/web/generated/M16-GAP-02361-operator-uv.mark_seam.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02361", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02362", + "gapId": "operator:uv.minimize_stretch", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02362-operator-uv.minimize_stretch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02362.py -- tests/files/web/generated/M16-GAP-02362-operator-uv.minimize_stretch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02362", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02363", + "gapId": "operator:uv.move_on_axis", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02363-operator-uv.move_on_axis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02363.py -- tests/files/web/generated/M16-GAP-02363-operator-uv.move_on_axis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02363", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02364", + "gapId": "operator:uv.pack_islands", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02364-operator-uv.pack_islands.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02364.py -- tests/files/web/generated/M16-GAP-02364-operator-uv.pack_islands.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02364", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02365", + "gapId": "operator:uv.paste", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02365-operator-uv.paste.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02365.py -- tests/files/web/generated/M16-GAP-02365-operator-uv.paste.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02365", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02366", + "gapId": "operator:uv.pin", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02366-operator-uv.pin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02366.py -- tests/files/web/generated/M16-GAP-02366-operator-uv.pin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02366", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02367", + "gapId": "operator:uv.project_from_view", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02367-operator-uv.project_from_view.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02367.py -- tests/files/web/generated/M16-GAP-02367-operator-uv.project_from_view.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02367", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02368", + "gapId": "operator:uv.randomize_uv_transform", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02368-operator-uv.randomize_uv_transform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02368.py -- tests/files/web/generated/M16-GAP-02368-operator-uv.randomize_uv_transform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02368", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02369", + "gapId": "operator:uv.remove_doubles", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02369-operator-uv.remove_doubles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02369.py -- tests/files/web/generated/M16-GAP-02369-operator-uv.remove_doubles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02369", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02370", + "gapId": "operator:uv.reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02370-operator-uv.reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02370.py -- tests/files/web/generated/M16-GAP-02370-operator-uv.reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02370", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02371", + "gapId": "operator:uv.reveal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02371-operator-uv.reveal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02371.py -- tests/files/web/generated/M16-GAP-02371-operator-uv.reveal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02371", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02372", + "gapId": "operator:uv.rip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02372-operator-uv.rip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02372.py -- tests/files/web/generated/M16-GAP-02372-operator-uv.rip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02372", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02373", + "gapId": "operator:uv.rip_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02373-operator-uv.rip_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02373.py -- tests/files/web/generated/M16-GAP-02373-operator-uv.rip_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02373", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02374", + "gapId": "operator:uv.seams_from_islands", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02374-operator-uv.seams_from_islands.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02374.py -- tests/files/web/generated/M16-GAP-02374-operator-uv.seams_from_islands.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02374", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02375", + "gapId": "operator:uv.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02375-operator-uv.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02375.py -- tests/files/web/generated/M16-GAP-02375-operator-uv.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02375", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02376", + "gapId": "operator:uv.select_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02376-operator-uv.select_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02376.py -- tests/files/web/generated/M16-GAP-02376-operator-uv.select_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02376", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02377", + "gapId": "operator:uv.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02377-operator-uv.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02377.py -- tests/files/web/generated/M16-GAP-02377-operator-uv.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02377", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02378", + "gapId": "operator:uv.select_by_winding", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02378-operator-uv.select_by_winding.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02378.py -- tests/files/web/generated/M16-GAP-02378-operator-uv.select_by_winding.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02378", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02379", + "gapId": "operator:uv.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02379-operator-uv.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02379.py -- tests/files/web/generated/M16-GAP-02379-operator-uv.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02379", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02380", + "gapId": "operator:uv.select_edge_ring", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02380-operator-uv.select_edge_ring.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02380.py -- tests/files/web/generated/M16-GAP-02380-operator-uv.select_edge_ring.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02380", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02381", + "gapId": "operator:uv.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02381-operator-uv.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02381.py -- tests/files/web/generated/M16-GAP-02381-operator-uv.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02381", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02382", + "gapId": "operator:uv.select_less", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02382-operator-uv.select_less.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02382.py -- tests/files/web/generated/M16-GAP-02382-operator-uv.select_less.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02382", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02383", + "gapId": "operator:uv.select_linked", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02383-operator-uv.select_linked.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02383.py -- tests/files/web/generated/M16-GAP-02383-operator-uv.select_linked.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02383", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02384", + "gapId": "operator:uv.select_linked_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02384-operator-uv.select_linked_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02384.py -- tests/files/web/generated/M16-GAP-02384-operator-uv.select_linked_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02384", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02385", + "gapId": "operator:uv.select_loop", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02385-operator-uv.select_loop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02385.py -- tests/files/web/generated/M16-GAP-02385-operator-uv.select_loop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02385", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02386", + "gapId": "operator:uv.select_mode", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02386-operator-uv.select_mode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02386.py -- tests/files/web/generated/M16-GAP-02386-operator-uv.select_mode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02386", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02387", + "gapId": "operator:uv.select_more", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02387-operator-uv.select_more.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02387.py -- tests/files/web/generated/M16-GAP-02387-operator-uv.select_more.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02387", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02388", + "gapId": "operator:uv.select_overlap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02388-operator-uv.select_overlap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02388.py -- tests/files/web/generated/M16-GAP-02388-operator-uv.select_overlap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02388", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02389", + "gapId": "operator:uv.select_pinned", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02389-operator-uv.select_pinned.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02389.py -- tests/files/web/generated/M16-GAP-02389-operator-uv.select_pinned.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02389", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02390", + "gapId": "operator:uv.select_similar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02390-operator-uv.select_similar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02390.py -- tests/files/web/generated/M16-GAP-02390-operator-uv.select_similar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02390", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02391", + "gapId": "operator:uv.select_split", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02391-operator-uv.select_split.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02391.py -- tests/files/web/generated/M16-GAP-02391-operator-uv.select_split.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02391", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02392", + "gapId": "operator:uv.select_tile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02392-operator-uv.select_tile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02392.py -- tests/files/web/generated/M16-GAP-02392-operator-uv.select_tile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02392", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02393", + "gapId": "operator:uv.shortest_path_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02393-operator-uv.shortest_path_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02393.py -- tests/files/web/generated/M16-GAP-02393-operator-uv.shortest_path_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02393", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02394", + "gapId": "operator:uv.shortest_path_select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02394-operator-uv.shortest_path_select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02394.py -- tests/files/web/generated/M16-GAP-02394-operator-uv.shortest_path_select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02394", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02395", + "gapId": "operator:uv.smart_project", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02395-operator-uv.smart_project.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02395.py -- tests/files/web/generated/M16-GAP-02395-operator-uv.smart_project.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02395", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02396", + "gapId": "operator:uv.snap_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02396-operator-uv.snap_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02396.py -- tests/files/web/generated/M16-GAP-02396-operator-uv.snap_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02396", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02397", + "gapId": "operator:uv.snap_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02397-operator-uv.snap_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02397.py -- tests/files/web/generated/M16-GAP-02397-operator-uv.snap_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02397", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02398", + "gapId": "operator:uv.sphere_project", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02398-operator-uv.sphere_project.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02398.py -- tests/files/web/generated/M16-GAP-02398-operator-uv.sphere_project.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02398", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02399", + "gapId": "operator:uv.stitch", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02399-operator-uv.stitch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02399.py -- tests/files/web/generated/M16-GAP-02399-operator-uv.stitch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02399", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02400", + "gapId": "operator:uv.unwrap", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02400-operator-uv.unwrap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02400.py -- tests/files/web/generated/M16-GAP-02400-operator-uv.unwrap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02400", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02401", + "gapId": "operator:uv.weld", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02401-operator-uv.weld.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02401.py -- tests/files/web/generated/M16-GAP-02401-operator-uv.weld.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02401", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02402", + "gapId": "operator:view2d.edge_pan", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02402-operator-view2d.edge_pan.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02402.py -- tests/files/web/generated/M16-GAP-02402-operator-view2d.edge_pan.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02402", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02403", + "gapId": "operator:view2d.ndof", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02403-operator-view2d.ndof.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02403.py -- tests/files/web/generated/M16-GAP-02403-operator-view2d.ndof.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02403", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02404", + "gapId": "operator:view2d.pan", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02404-operator-view2d.pan.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02404.py -- tests/files/web/generated/M16-GAP-02404-operator-view2d.pan.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02404", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02405", + "gapId": "operator:view2d.reset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02405-operator-view2d.reset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02405.py -- tests/files/web/generated/M16-GAP-02405-operator-view2d.reset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02405", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02406", + "gapId": "operator:view2d.scroll_down", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02406-operator-view2d.scroll_down.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02406.py -- tests/files/web/generated/M16-GAP-02406-operator-view2d.scroll_down.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02406", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02407", + "gapId": "operator:view2d.scroll_left", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02407-operator-view2d.scroll_left.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02407.py -- tests/files/web/generated/M16-GAP-02407-operator-view2d.scroll_left.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02407", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02408", + "gapId": "operator:view2d.scroll_right", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02408-operator-view2d.scroll_right.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02408.py -- tests/files/web/generated/M16-GAP-02408-operator-view2d.scroll_right.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02408", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02409", + "gapId": "operator:view2d.scroll_up", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02409-operator-view2d.scroll_up.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02409.py -- tests/files/web/generated/M16-GAP-02409-operator-view2d.scroll_up.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02409", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02410", + "gapId": "operator:view2d.scroller_activate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02410-operator-view2d.scroller_activate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02410.py -- tests/files/web/generated/M16-GAP-02410-operator-view2d.scroller_activate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02410", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02411", + "gapId": "operator:view2d.smoothview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02411-operator-view2d.smoothview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02411.py -- tests/files/web/generated/M16-GAP-02411-operator-view2d.smoothview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02411", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02412", + "gapId": "operator:view2d.zoom", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02412-operator-view2d.zoom.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02412.py -- tests/files/web/generated/M16-GAP-02412-operator-view2d.zoom.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02412", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02413", + "gapId": "operator:view2d.zoom_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02413-operator-view2d.zoom_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02413.py -- tests/files/web/generated/M16-GAP-02413-operator-view2d.zoom_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02413", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02414", + "gapId": "operator:view2d.zoom_in", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02414-operator-view2d.zoom_in.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02414.py -- tests/files/web/generated/M16-GAP-02414-operator-view2d.zoom_in.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02414", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02415", + "gapId": "operator:view2d.zoom_out", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02415-operator-view2d.zoom_out.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02415.py -- tests/files/web/generated/M16-GAP-02415-operator-view2d.zoom_out.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02415", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02416", + "gapId": "operator:view3d.bone_select_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02416-operator-view3d.bone_select_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02416.py -- tests/files/web/generated/M16-GAP-02416-operator-view3d.bone_select_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02416", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02417", + "gapId": "operator:view3d.camera_background_image_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02417-operator-view3d.camera_background_image_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02417.py -- tests/files/web/generated/M16-GAP-02417-operator-view3d.camera_background_image_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02417", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02418", + "gapId": "operator:view3d.camera_background_image_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02418-operator-view3d.camera_background_image_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02418.py -- tests/files/web/generated/M16-GAP-02418-operator-view3d.camera_background_image_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02418", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02419", + "gapId": "operator:view3d.camera_to_view", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02419-operator-view3d.camera_to_view.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02419.py -- tests/files/web/generated/M16-GAP-02419-operator-view3d.camera_to_view.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02419", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02420", + "gapId": "operator:view3d.camera_to_view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02420-operator-view3d.camera_to_view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02420.py -- tests/files/web/generated/M16-GAP-02420-operator-view3d.camera_to_view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02420", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02421", + "gapId": "operator:view3d.clear_render_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02421-operator-view3d.clear_render_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02421.py -- tests/files/web/generated/M16-GAP-02421-operator-view3d.clear_render_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02421", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02422", + "gapId": "operator:view3d.clip_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02422-operator-view3d.clip_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02422.py -- tests/files/web/generated/M16-GAP-02422-operator-view3d.clip_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02422", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02423", + "gapId": "operator:view3d.copybuffer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02423-operator-view3d.copybuffer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02423.py -- tests/files/web/generated/M16-GAP-02423-operator-view3d.copybuffer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02423", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02424", + "gapId": "operator:view3d.cursor3d", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02424-operator-view3d.cursor3d.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02424.py -- tests/files/web/generated/M16-GAP-02424-operator-view3d.cursor3d.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02424", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02425", + "gapId": "operator:view3d.dolly", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02425-operator-view3d.dolly.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02425.py -- tests/files/web/generated/M16-GAP-02425-operator-view3d.dolly.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02425", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02426", + "gapId": "operator:view3d.drop_world", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02426-operator-view3d.drop_world.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02426.py -- tests/files/web/generated/M16-GAP-02426-operator-view3d.drop_world.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02426", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02427", + "gapId": "operator:view3d.edit_mesh_extrude_individual_move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02427-operator-view3d.edit_mesh_extrude_individual_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02427.py -- tests/files/web/generated/M16-GAP-02427-operator-view3d.edit_mesh_extrude_individual_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02427", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02428", + "gapId": "operator:view3d.edit_mesh_extrude_manifold_normal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02428-operator-view3d.edit_mesh_extrude_manifold_normal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02428.py -- tests/files/web/generated/M16-GAP-02428-operator-view3d.edit_mesh_extrude_manifold_normal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02428", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02429", + "gapId": "operator:view3d.edit_mesh_extrude_move_normal", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02429-operator-view3d.edit_mesh_extrude_move_normal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02429.py -- tests/files/web/generated/M16-GAP-02429-operator-view3d.edit_mesh_extrude_move_normal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02429", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02430", + "gapId": "operator:view3d.edit_mesh_extrude_move_shrink_fatten", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02430-operator-view3d.edit_mesh_extrude_move_shrink_fatten.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02430.py -- tests/files/web/generated/M16-GAP-02430-operator-view3d.edit_mesh_extrude_move_shrink_fatten.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02430", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02431", + "gapId": "operator:view3d.fly", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02431-operator-view3d.fly.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02431.py -- tests/files/web/generated/M16-GAP-02431-operator-view3d.fly.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02431", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02432", + "gapId": "operator:view3d.interactive_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02432-operator-view3d.interactive_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02432.py -- tests/files/web/generated/M16-GAP-02432-operator-view3d.interactive_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02432", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02433", + "gapId": "operator:view3d.localview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02433-operator-view3d.localview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02433.py -- tests/files/web/generated/M16-GAP-02433-operator-view3d.localview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02433", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02434", + "gapId": "operator:view3d.localview_remove_from", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02434-operator-view3d.localview_remove_from.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02434.py -- tests/files/web/generated/M16-GAP-02434-operator-view3d.localview_remove_from.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02434", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02435", + "gapId": "operator:view3d.move", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02435-operator-view3d.move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02435.py -- tests/files/web/generated/M16-GAP-02435-operator-view3d.move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02435", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02436", + "gapId": "operator:view3d.navigate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02436-operator-view3d.navigate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02436.py -- tests/files/web/generated/M16-GAP-02436-operator-view3d.navigate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02436", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02437", + "gapId": "operator:view3d.ndof_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02437-operator-view3d.ndof_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02437.py -- tests/files/web/generated/M16-GAP-02437-operator-view3d.ndof_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02437", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02438", + "gapId": "operator:view3d.ndof_orbit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02438-operator-view3d.ndof_orbit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02438.py -- tests/files/web/generated/M16-GAP-02438-operator-view3d.ndof_orbit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02438", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02439", + "gapId": "operator:view3d.ndof_orbit_zoom", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02439-operator-view3d.ndof_orbit_zoom.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02439.py -- tests/files/web/generated/M16-GAP-02439-operator-view3d.ndof_orbit_zoom.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02439", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02440", + "gapId": "operator:view3d.ndof_pan", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02440-operator-view3d.ndof_pan.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02440.py -- tests/files/web/generated/M16-GAP-02440-operator-view3d.ndof_pan.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02440", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02441", + "gapId": "operator:view3d.object_as_camera", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02441-operator-view3d.object_as_camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02441.py -- tests/files/web/generated/M16-GAP-02441-operator-view3d.object_as_camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02441", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02442", + "gapId": "operator:view3d.object_mode_pie_or_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02442-operator-view3d.object_mode_pie_or_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02442.py -- tests/files/web/generated/M16-GAP-02442-operator-view3d.object_mode_pie_or_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02442", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02443", + "gapId": "operator:view3d.pastebuffer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02443-operator-view3d.pastebuffer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02443.py -- tests/files/web/generated/M16-GAP-02443-operator-view3d.pastebuffer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02443", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02444", + "gapId": "operator:view3d.render_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02444-operator-view3d.render_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02444.py -- tests/files/web/generated/M16-GAP-02444-operator-view3d.render_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02444", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02445", + "gapId": "operator:view3d.rotate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02445-operator-view3d.rotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02445.py -- tests/files/web/generated/M16-GAP-02445-operator-view3d.rotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02445", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02446", + "gapId": "operator:view3d.ruler_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02446-operator-view3d.ruler_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02446.py -- tests/files/web/generated/M16-GAP-02446-operator-view3d.ruler_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02446", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02447", + "gapId": "operator:view3d.ruler_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02447-operator-view3d.ruler_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02447.py -- tests/files/web/generated/M16-GAP-02447-operator-view3d.ruler_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02447", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02448", + "gapId": "operator:view3d.select", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02448-operator-view3d.select.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02448.py -- tests/files/web/generated/M16-GAP-02448-operator-view3d.select.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02448", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02449", + "gapId": "operator:view3d.select_box", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02449-operator-view3d.select_box.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02449.py -- tests/files/web/generated/M16-GAP-02449-operator-view3d.select_box.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02449", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02450", + "gapId": "operator:view3d.select_circle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02450-operator-view3d.select_circle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02450.py -- tests/files/web/generated/M16-GAP-02450-operator-view3d.select_circle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02450", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02451", + "gapId": "operator:view3d.select_lasso", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02451-operator-view3d.select_lasso.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02451.py -- tests/files/web/generated/M16-GAP-02451-operator-view3d.select_lasso.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02451", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02452", + "gapId": "operator:view3d.select_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02452-operator-view3d.select_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02452.py -- tests/files/web/generated/M16-GAP-02452-operator-view3d.select_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02452", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02453", + "gapId": "operator:view3d.smoothview", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02453-operator-view3d.smoothview.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02453.py -- tests/files/web/generated/M16-GAP-02453-operator-view3d.smoothview.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02453", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02454", + "gapId": "operator:view3d.snap_cursor_to_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02454-operator-view3d.snap_cursor_to_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02454.py -- tests/files/web/generated/M16-GAP-02454-operator-view3d.snap_cursor_to_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02454", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02455", + "gapId": "operator:view3d.snap_cursor_to_center", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02455-operator-view3d.snap_cursor_to_center.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02455.py -- tests/files/web/generated/M16-GAP-02455-operator-view3d.snap_cursor_to_center.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02455", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02456", + "gapId": "operator:view3d.snap_cursor_to_grid", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02456-operator-view3d.snap_cursor_to_grid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02456.py -- tests/files/web/generated/M16-GAP-02456-operator-view3d.snap_cursor_to_grid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02456", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02457", + "gapId": "operator:view3d.snap_cursor_to_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02457-operator-view3d.snap_cursor_to_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02457.py -- tests/files/web/generated/M16-GAP-02457-operator-view3d.snap_cursor_to_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02457", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02458", + "gapId": "operator:view3d.snap_selected_to_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02458-operator-view3d.snap_selected_to_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02458.py -- tests/files/web/generated/M16-GAP-02458-operator-view3d.snap_selected_to_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02458", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02459", + "gapId": "operator:view3d.snap_selected_to_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02459-operator-view3d.snap_selected_to_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02459.py -- tests/files/web/generated/M16-GAP-02459-operator-view3d.snap_selected_to_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02459", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02460", + "gapId": "operator:view3d.snap_selected_to_grid", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02460-operator-view3d.snap_selected_to_grid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02460.py -- tests/files/web/generated/M16-GAP-02460-operator-view3d.snap_selected_to_grid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02460", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02461", + "gapId": "operator:view3d.toggle_matcap_flip", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02461-operator-view3d.toggle_matcap_flip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02461.py -- tests/files/web/generated/M16-GAP-02461-operator-view3d.toggle_matcap_flip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02461", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02462", + "gapId": "operator:view3d.toggle_shading", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02462-operator-view3d.toggle_shading.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02462.py -- tests/files/web/generated/M16-GAP-02462-operator-view3d.toggle_shading.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02462", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02463", + "gapId": "operator:view3d.toggle_xray", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02463-operator-view3d.toggle_xray.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02463.py -- tests/files/web/generated/M16-GAP-02463-operator-view3d.toggle_xray.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02463", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02464", + "gapId": "operator:view3d.transform_gizmo_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02464-operator-view3d.transform_gizmo_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02464.py -- tests/files/web/generated/M16-GAP-02464-operator-view3d.transform_gizmo_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02464", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02465", + "gapId": "operator:view3d.view_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02465-operator-view3d.view_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02465.py -- tests/files/web/generated/M16-GAP-02465-operator-view3d.view_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02465", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02466", + "gapId": "operator:view3d.view_axis", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02466-operator-view3d.view_axis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02466.py -- tests/files/web/generated/M16-GAP-02466-operator-view3d.view_axis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02466", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02467", + "gapId": "operator:view3d.view_camera", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02467-operator-view3d.view_camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02467.py -- tests/files/web/generated/M16-GAP-02467-operator-view3d.view_camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02467", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02468", + "gapId": "operator:view3d.view_center_camera", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02468-operator-view3d.view_center_camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02468.py -- tests/files/web/generated/M16-GAP-02468-operator-view3d.view_center_camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02468", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02469", + "gapId": "operator:view3d.view_center_cursor", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02469-operator-view3d.view_center_cursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02469.py -- tests/files/web/generated/M16-GAP-02469-operator-view3d.view_center_cursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02469", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02470", + "gapId": "operator:view3d.view_center_lock", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02470-operator-view3d.view_center_lock.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02470.py -- tests/files/web/generated/M16-GAP-02470-operator-view3d.view_center_lock.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02470", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02471", + "gapId": "operator:view3d.view_center_pick", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02471-operator-view3d.view_center_pick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02471.py -- tests/files/web/generated/M16-GAP-02471-operator-view3d.view_center_pick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02471", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02472", + "gapId": "operator:view3d.view_lock_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02472-operator-view3d.view_lock_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02472.py -- tests/files/web/generated/M16-GAP-02472-operator-view3d.view_lock_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02472", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02473", + "gapId": "operator:view3d.view_lock_to_active", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02473-operator-view3d.view_lock_to_active.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02473.py -- tests/files/web/generated/M16-GAP-02473-operator-view3d.view_lock_to_active.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02473", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02474", + "gapId": "operator:view3d.view_orbit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02474-operator-view3d.view_orbit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02474.py -- tests/files/web/generated/M16-GAP-02474-operator-view3d.view_orbit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02474", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02475", + "gapId": "operator:view3d.view_pan", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02475-operator-view3d.view_pan.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02475.py -- tests/files/web/generated/M16-GAP-02475-operator-view3d.view_pan.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02475", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02476", + "gapId": "operator:view3d.view_persportho", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02476-operator-view3d.view_persportho.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02476.py -- tests/files/web/generated/M16-GAP-02476-operator-view3d.view_persportho.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02476", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02477", + "gapId": "operator:view3d.view_roll", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02477-operator-view3d.view_roll.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02477.py -- tests/files/web/generated/M16-GAP-02477-operator-view3d.view_roll.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02477", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02478", + "gapId": "operator:view3d.view_selected", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02478-operator-view3d.view_selected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02478.py -- tests/files/web/generated/M16-GAP-02478-operator-view3d.view_selected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02478", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02479", + "gapId": "operator:view3d.walk", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02479-operator-view3d.walk.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02479.py -- tests/files/web/generated/M16-GAP-02479-operator-view3d.walk.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02479", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02480", + "gapId": "operator:view3d.zoom", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02480-operator-view3d.zoom.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02480.py -- tests/files/web/generated/M16-GAP-02480-operator-view3d.zoom.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02480", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02481", + "gapId": "operator:view3d.zoom_border", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02481-operator-view3d.zoom_border.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02481.py -- tests/files/web/generated/M16-GAP-02481-operator-view3d.zoom_border.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02481", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02482", + "gapId": "operator:view3d.zoom_camera_1_to_1", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02482-operator-view3d.zoom_camera_1_to_1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02482.py -- tests/files/web/generated/M16-GAP-02482-operator-view3d.zoom_camera_1_to_1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02482", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02483", + "gapId": "operator:wm.append", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02483-operator-wm.append.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02483.py -- tests/files/web/generated/M16-GAP-02483-operator-wm.append.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02483", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02484", + "gapId": "operator:wm.batch_rename", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02484-operator-wm.batch_rename.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02484.py -- tests/files/web/generated/M16-GAP-02484-operator-wm.batch_rename.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02484", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02485", + "gapId": "operator:wm.blend_strings_utf8_validate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02485-operator-wm.blend_strings_utf8_validate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02485.py -- tests/files/web/generated/M16-GAP-02485-operator-wm.blend_strings_utf8_validate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02485", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02486", + "gapId": "operator:wm.call_asset_shelf_popover", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02486-operator-wm.call_asset_shelf_popover.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02486.py -- tests/files/web/generated/M16-GAP-02486-operator-wm.call_asset_shelf_popover.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02486", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02487", + "gapId": "operator:wm.call_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02487-operator-wm.call_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02487.py -- tests/files/web/generated/M16-GAP-02487-operator-wm.call_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02487", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02488", + "gapId": "operator:wm.call_menu_pie", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02488-operator-wm.call_menu_pie.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02488.py -- tests/files/web/generated/M16-GAP-02488-operator-wm.call_menu_pie.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02488", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02489", + "gapId": "operator:wm.call_panel", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02489-operator-wm.call_panel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02489.py -- tests/files/web/generated/M16-GAP-02489-operator-wm.call_panel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02489", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02490", + "gapId": "operator:wm.clear_recent_files", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02490-operator-wm.clear_recent_files.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02490.py -- tests/files/web/generated/M16-GAP-02490-operator-wm.clear_recent_files.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02490", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02491", + "gapId": "operator:wm.collection_export_all", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02491-operator-wm.collection_export_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02491.py -- tests/files/web/generated/M16-GAP-02491-operator-wm.collection_export_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02491", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02492", + "gapId": "operator:wm.context_collection_boolean_set", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02492-operator-wm.context_collection_boolean_set.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02492.py -- tests/files/web/generated/M16-GAP-02492-operator-wm.context_collection_boolean_set.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02492", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02493", + "gapId": "operator:wm.context_cycle_array", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02493-operator-wm.context_cycle_array.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02493.py -- tests/files/web/generated/M16-GAP-02493-operator-wm.context_cycle_array.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02493", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02494", + "gapId": "operator:wm.context_cycle_enum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02494-operator-wm.context_cycle_enum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02494.py -- tests/files/web/generated/M16-GAP-02494-operator-wm.context_cycle_enum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02494", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02495", + "gapId": "operator:wm.context_cycle_int", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02495-operator-wm.context_cycle_int.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02495.py -- tests/files/web/generated/M16-GAP-02495-operator-wm.context_cycle_int.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02495", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02496", + "gapId": "operator:wm.context_menu_enum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02496-operator-wm.context_menu_enum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02496.py -- tests/files/web/generated/M16-GAP-02496-operator-wm.context_menu_enum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02496", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02497", + "gapId": "operator:wm.context_modal_mouse", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02497-operator-wm.context_modal_mouse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02497.py -- tests/files/web/generated/M16-GAP-02497-operator-wm.context_modal_mouse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02497", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02498", + "gapId": "operator:wm.context_pie_enum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02498-operator-wm.context_pie_enum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02498.py -- tests/files/web/generated/M16-GAP-02498-operator-wm.context_pie_enum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02498", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02499", + "gapId": "operator:wm.context_scale_float", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02499-operator-wm.context_scale_float.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02499.py -- tests/files/web/generated/M16-GAP-02499-operator-wm.context_scale_float.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02499", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02500", + "gapId": "operator:wm.context_scale_int", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02500-operator-wm.context_scale_int.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02500.py -- tests/files/web/generated/M16-GAP-02500-operator-wm.context_scale_int.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02500", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02501", + "gapId": "operator:wm.context_set_boolean", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02501-operator-wm.context_set_boolean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02501.py -- tests/files/web/generated/M16-GAP-02501-operator-wm.context_set_boolean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02501", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02502", + "gapId": "operator:wm.context_set_enum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02502-operator-wm.context_set_enum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02502.py -- tests/files/web/generated/M16-GAP-02502-operator-wm.context_set_enum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02502", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02503", + "gapId": "operator:wm.context_set_float", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02503-operator-wm.context_set_float.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02503.py -- tests/files/web/generated/M16-GAP-02503-operator-wm.context_set_float.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02503", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02504", + "gapId": "operator:wm.context_set_id", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02504-operator-wm.context_set_id.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02504.py -- tests/files/web/generated/M16-GAP-02504-operator-wm.context_set_id.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02504", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02505", + "gapId": "operator:wm.context_set_int", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02505-operator-wm.context_set_int.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02505.py -- tests/files/web/generated/M16-GAP-02505-operator-wm.context_set_int.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02505", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02506", + "gapId": "operator:wm.context_set_string", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02506-operator-wm.context_set_string.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02506.py -- tests/files/web/generated/M16-GAP-02506-operator-wm.context_set_string.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02506", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02507", + "gapId": "operator:wm.context_set_value", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02507-operator-wm.context_set_value.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02507.py -- tests/files/web/generated/M16-GAP-02507-operator-wm.context_set_value.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02507", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02508", + "gapId": "operator:wm.context_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02508-operator-wm.context_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02508.py -- tests/files/web/generated/M16-GAP-02508-operator-wm.context_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02508", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02509", + "gapId": "operator:wm.context_toggle_enum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02509-operator-wm.context_toggle_enum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02509.py -- tests/files/web/generated/M16-GAP-02509-operator-wm.context_toggle_enum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02509", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02510", + "gapId": "operator:wm.debug_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02510-operator-wm.debug_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02510.py -- tests/files/web/generated/M16-GAP-02510-operator-wm.debug_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02510", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02511", + "gapId": "operator:wm.doc_view", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02511-operator-wm.doc_view.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02511.py -- tests/files/web/generated/M16-GAP-02511-operator-wm.doc_view.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02511", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02512", + "gapId": "operator:wm.doc_view_manual", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02512-operator-wm.doc_view_manual.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02512.py -- tests/files/web/generated/M16-GAP-02512-operator-wm.doc_view_manual.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02512", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02513", + "gapId": "operator:wm.doc_view_manual_ui_context", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02513-operator-wm.doc_view_manual_ui_context.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02513.py -- tests/files/web/generated/M16-GAP-02513-operator-wm.doc_view_manual_ui_context.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02513", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02514", + "gapId": "operator:wm.drop_blend_file", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02514-operator-wm.drop_blend_file.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02514.py -- tests/files/web/generated/M16-GAP-02514-operator-wm.drop_blend_file.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02514", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02515", + "gapId": "operator:wm.drop_import_file", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02515-operator-wm.drop_import_file.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02515.py -- tests/files/web/generated/M16-GAP-02515-operator-wm.drop_import_file.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02515", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02516", + "gapId": "operator:wm.fbx_import", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02516-operator-wm.fbx_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02516.py -- tests/files/web/generated/M16-GAP-02516-operator-wm.fbx_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02516", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02517", + "gapId": "operator:wm.grease_pencil_export_svg", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02517-operator-wm.grease_pencil_export_svg.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02517.py -- tests/files/web/generated/M16-GAP-02517-operator-wm.grease_pencil_export_svg.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02517", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02518", + "gapId": "operator:wm.grease_pencil_import_svg", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02518-operator-wm.grease_pencil_import_svg.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02518.py -- tests/files/web/generated/M16-GAP-02518-operator-wm.grease_pencil_import_svg.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02518", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02519", + "gapId": "operator:wm.id_linked_relocate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02519-operator-wm.id_linked_relocate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02519.py -- tests/files/web/generated/M16-GAP-02519-operator-wm.id_linked_relocate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02519", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02520", + "gapId": "operator:wm.interface_theme_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02520-operator-wm.interface_theme_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02520.py -- tests/files/web/generated/M16-GAP-02520-operator-wm.interface_theme_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02520", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02521", + "gapId": "operator:wm.interface_theme_preset_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02521-operator-wm.interface_theme_preset_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02521.py -- tests/files/web/generated/M16-GAP-02521-operator-wm.interface_theme_preset_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02521", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02522", + "gapId": "operator:wm.interface_theme_preset_save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02522-operator-wm.interface_theme_preset_save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02522.py -- tests/files/web/generated/M16-GAP-02522-operator-wm.interface_theme_preset_save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02522", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02523", + "gapId": "operator:wm.keyconfig_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02523-operator-wm.keyconfig_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02523.py -- tests/files/web/generated/M16-GAP-02523-operator-wm.keyconfig_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02523", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02524", + "gapId": "operator:wm.keyconfig_preset_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02524-operator-wm.keyconfig_preset_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02524.py -- tests/files/web/generated/M16-GAP-02524-operator-wm.keyconfig_preset_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02524", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02525", + "gapId": "operator:wm.lib_reload", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02525-operator-wm.lib_reload.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02525.py -- tests/files/web/generated/M16-GAP-02525-operator-wm.lib_reload.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02525", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02526", + "gapId": "operator:wm.lib_relocate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02526-operator-wm.lib_relocate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02526.py -- tests/files/web/generated/M16-GAP-02526-operator-wm.lib_relocate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02526", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02527", + "gapId": "operator:wm.link", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02527-operator-wm.link.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02527.py -- tests/files/web/generated/M16-GAP-02527-operator-wm.link.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02527", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02528", + "gapId": "operator:wm.memory_statistics", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02528-operator-wm.memory_statistics.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02528.py -- tests/files/web/generated/M16-GAP-02528-operator-wm.memory_statistics.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02528", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02529", + "gapId": "operator:wm.obj_export", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02529-operator-wm.obj_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02529.py -- tests/files/web/generated/M16-GAP-02529-operator-wm.obj_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02529", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02530", + "gapId": "operator:wm.obj_import", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02530-operator-wm.obj_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02530.py -- tests/files/web/generated/M16-GAP-02530-operator-wm.obj_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02530", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02531", + "gapId": "operator:wm.open_mainfile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02531-operator-wm.open_mainfile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02531.py -- tests/files/web/generated/M16-GAP-02531-operator-wm.open_mainfile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02531", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02532", + "gapId": "operator:wm.operator_cheat_sheet", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02532-operator-wm.operator_cheat_sheet.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02532.py -- tests/files/web/generated/M16-GAP-02532-operator-wm.operator_cheat_sheet.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02532", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02533", + "gapId": "operator:wm.operator_defaults", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02533-operator-wm.operator_defaults.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02533.py -- tests/files/web/generated/M16-GAP-02533-operator-wm.operator_defaults.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02533", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02534", + "gapId": "operator:wm.operator_pie_enum", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02534-operator-wm.operator_pie_enum.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02534.py -- tests/files/web/generated/M16-GAP-02534-operator-wm.operator_pie_enum.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02534", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02535", + "gapId": "operator:wm.operator_preset_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02535-operator-wm.operator_preset_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02535.py -- tests/files/web/generated/M16-GAP-02535-operator-wm.operator_preset_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02535", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02536", + "gapId": "operator:wm.operator_presets_cleanup", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02536-operator-wm.operator_presets_cleanup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02536.py -- tests/files/web/generated/M16-GAP-02536-operator-wm.operator_presets_cleanup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02536", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02537", + "gapId": "operator:wm.owner_disable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02537-operator-wm.owner_disable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02537.py -- tests/files/web/generated/M16-GAP-02537-operator-wm.owner_disable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02537", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02538", + "gapId": "operator:wm.owner_enable", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02538-operator-wm.owner_enable.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02538.py -- tests/files/web/generated/M16-GAP-02538-operator-wm.owner_enable.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02538", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02539", + "gapId": "operator:wm.path_open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02539-operator-wm.path_open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02539.py -- tests/files/web/generated/M16-GAP-02539-operator-wm.path_open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02539", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02540", + "gapId": "operator:wm.ply_export", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02540-operator-wm.ply_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02540.py -- tests/files/web/generated/M16-GAP-02540-operator-wm.ply_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02540", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02541", + "gapId": "operator:wm.ply_import", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02541-operator-wm.ply_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02541.py -- tests/files/web/generated/M16-GAP-02541-operator-wm.ply_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02541", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02542", + "gapId": "operator:wm.previews_batch_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02542-operator-wm.previews_batch_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02542.py -- tests/files/web/generated/M16-GAP-02542-operator-wm.previews_batch_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02542", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02543", + "gapId": "operator:wm.previews_batch_generate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02543-operator-wm.previews_batch_generate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02543.py -- tests/files/web/generated/M16-GAP-02543-operator-wm.previews_batch_generate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02543", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02544", + "gapId": "operator:wm.previews_clear", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02544-operator-wm.previews_clear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02544.py -- tests/files/web/generated/M16-GAP-02544-operator-wm.previews_clear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02544", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02545", + "gapId": "operator:wm.previews_ensure", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02545-operator-wm.previews_ensure.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02545.py -- tests/files/web/generated/M16-GAP-02545-operator-wm.previews_ensure.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02545", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02546", + "gapId": "operator:wm.properties_add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02546-operator-wm.properties_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02546.py -- tests/files/web/generated/M16-GAP-02546-operator-wm.properties_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02546", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02547", + "gapId": "operator:wm.properties_context_change", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02547-operator-wm.properties_context_change.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02547.py -- tests/files/web/generated/M16-GAP-02547-operator-wm.properties_context_change.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02547", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02548", + "gapId": "operator:wm.properties_edit", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02548-operator-wm.properties_edit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02548.py -- tests/files/web/generated/M16-GAP-02548-operator-wm.properties_edit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02548", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02549", + "gapId": "operator:wm.properties_edit_value", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02549-operator-wm.properties_edit_value.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02549.py -- tests/files/web/generated/M16-GAP-02549-operator-wm.properties_edit_value.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02549", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02550", + "gapId": "operator:wm.properties_remove", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02550-operator-wm.properties_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02550.py -- tests/files/web/generated/M16-GAP-02550-operator-wm.properties_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02550", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02551", + "gapId": "operator:wm.quit_blender", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02551-operator-wm.quit_blender.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02551.py -- tests/files/web/generated/M16-GAP-02551-operator-wm.quit_blender.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02551", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02552", + "gapId": "operator:wm.radial_control", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02552-operator-wm.radial_control.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02552.py -- tests/files/web/generated/M16-GAP-02552-operator-wm.radial_control.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02552", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02553", + "gapId": "operator:wm.read_factory_settings", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02553-operator-wm.read_factory_settings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02553.py -- tests/files/web/generated/M16-GAP-02553-operator-wm.read_factory_settings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02553", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02554", + "gapId": "operator:wm.read_factory_userpref", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02554-operator-wm.read_factory_userpref.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02554.py -- tests/files/web/generated/M16-GAP-02554-operator-wm.read_factory_userpref.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02554", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02555", + "gapId": "operator:wm.read_history", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02555-operator-wm.read_history.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02555.py -- tests/files/web/generated/M16-GAP-02555-operator-wm.read_history.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02555", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02556", + "gapId": "operator:wm.read_homefile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02556-operator-wm.read_homefile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02556.py -- tests/files/web/generated/M16-GAP-02556-operator-wm.read_homefile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02556", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02557", + "gapId": "operator:wm.read_userpref", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02557-operator-wm.read_userpref.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02557.py -- tests/files/web/generated/M16-GAP-02557-operator-wm.read_userpref.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02557", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02558", + "gapId": "operator:wm.recover_auto_save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02558-operator-wm.recover_auto_save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02558.py -- tests/files/web/generated/M16-GAP-02558-operator-wm.recover_auto_save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02558", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02559", + "gapId": "operator:wm.recover_last_session", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02559-operator-wm.recover_last_session.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02559.py -- tests/files/web/generated/M16-GAP-02559-operator-wm.recover_last_session.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02559", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02560", + "gapId": "operator:wm.redraw_timer", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02560-operator-wm.redraw_timer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02560.py -- tests/files/web/generated/M16-GAP-02560-operator-wm.redraw_timer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02560", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02561", + "gapId": "operator:wm.revert_mainfile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02561-operator-wm.revert_mainfile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02561.py -- tests/files/web/generated/M16-GAP-02561-operator-wm.revert_mainfile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02561", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02562", + "gapId": "operator:wm.save_as_mainfile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02562-operator-wm.save_as_mainfile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02562.py -- tests/files/web/generated/M16-GAP-02562-operator-wm.save_as_mainfile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02562", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02563", + "gapId": "operator:wm.save_auto_save", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02563-operator-wm.save_auto_save.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02563.py -- tests/files/web/generated/M16-GAP-02563-operator-wm.save_auto_save.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02563", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02564", + "gapId": "operator:wm.save_homefile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02564-operator-wm.save_homefile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02564.py -- tests/files/web/generated/M16-GAP-02564-operator-wm.save_homefile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02564", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02565", + "gapId": "operator:wm.save_mainfile", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02565-operator-wm.save_mainfile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02565.py -- tests/files/web/generated/M16-GAP-02565-operator-wm.save_mainfile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02565", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02566", + "gapId": "operator:wm.save_userpref", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02566-operator-wm.save_userpref.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02566.py -- tests/files/web/generated/M16-GAP-02566-operator-wm.save_userpref.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02566", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02567", + "gapId": "operator:wm.search_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02567-operator-wm.search_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02567.py -- tests/files/web/generated/M16-GAP-02567-operator-wm.search_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02567", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02568", + "gapId": "operator:wm.search_operator", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02568-operator-wm.search_operator.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02568.py -- tests/files/web/generated/M16-GAP-02568-operator-wm.search_operator.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02568", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02569", + "gapId": "operator:wm.search_single_menu", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02569-operator-wm.search_single_menu.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02569.py -- tests/files/web/generated/M16-GAP-02569-operator-wm.search_single_menu.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02569", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02570", + "gapId": "operator:wm.set_stereo_3d", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02570-operator-wm.set_stereo_3d.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02570.py -- tests/files/web/generated/M16-GAP-02570-operator-wm.set_stereo_3d.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02570", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02571", + "gapId": "operator:wm.set_working_color_space", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02571-operator-wm.set_working_color_space.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02571.py -- tests/files/web/generated/M16-GAP-02571-operator-wm.set_working_color_space.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02571", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02572", + "gapId": "operator:wm.splash", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02572-operator-wm.splash.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02572.py -- tests/files/web/generated/M16-GAP-02572-operator-wm.splash.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02572", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02573", + "gapId": "operator:wm.splash_about", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02573-operator-wm.splash_about.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02573.py -- tests/files/web/generated/M16-GAP-02573-operator-wm.splash_about.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02573", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02574", + "gapId": "operator:wm.stl_export", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02574-operator-wm.stl_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02574.py -- tests/files/web/generated/M16-GAP-02574-operator-wm.stl_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02574", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02575", + "gapId": "operator:wm.stl_import", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02575-operator-wm.stl_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02575.py -- tests/files/web/generated/M16-GAP-02575-operator-wm.stl_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02575", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02576", + "gapId": "operator:wm.sysinfo", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02576-operator-wm.sysinfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02576.py -- tests/files/web/generated/M16-GAP-02576-operator-wm.sysinfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02576", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02577", + "gapId": "operator:wm.tool_set_by_brush_type", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02577-operator-wm.tool_set_by_brush_type.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02577.py -- tests/files/web/generated/M16-GAP-02577-operator-wm.tool_set_by_brush_type.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02577", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02578", + "gapId": "operator:wm.tool_set_by_id", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02578-operator-wm.tool_set_by_id.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02578.py -- tests/files/web/generated/M16-GAP-02578-operator-wm.tool_set_by_id.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02578", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02579", + "gapId": "operator:wm.tool_set_by_index", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02579-operator-wm.tool_set_by_index.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02579.py -- tests/files/web/generated/M16-GAP-02579-operator-wm.tool_set_by_index.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02579", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02580", + "gapId": "operator:wm.toolbar", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02580-operator-wm.toolbar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02580.py -- tests/files/web/generated/M16-GAP-02580-operator-wm.toolbar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02580", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02581", + "gapId": "operator:wm.toolbar_fallback_pie", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02581-operator-wm.toolbar_fallback_pie.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02581.py -- tests/files/web/generated/M16-GAP-02581-operator-wm.toolbar_fallback_pie.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02581", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02582", + "gapId": "operator:wm.toolbar_prompt", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02582-operator-wm.toolbar_prompt.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02582.py -- tests/files/web/generated/M16-GAP-02582-operator-wm.toolbar_prompt.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02582", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02583", + "gapId": "operator:wm.url_open", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02583-operator-wm.url_open.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02583.py -- tests/files/web/generated/M16-GAP-02583-operator-wm.url_open.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02583", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02584", + "gapId": "operator:wm.url_open_preset", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02584-operator-wm.url_open_preset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02584.py -- tests/files/web/generated/M16-GAP-02584-operator-wm.url_open_preset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02584", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02585", + "gapId": "operator:wm.window_close", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02585-operator-wm.window_close.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02585.py -- tests/files/web/generated/M16-GAP-02585-operator-wm.window_close.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02585", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02586", + "gapId": "operator:wm.window_fullscreen_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02586-operator-wm.window_fullscreen_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02586.py -- tests/files/web/generated/M16-GAP-02586-operator-wm.window_fullscreen_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02586", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02587", + "gapId": "operator:wm.window_new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02587-operator-wm.window_new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02587.py -- tests/files/web/generated/M16-GAP-02587-operator-wm.window_new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02587", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02588", + "gapId": "operator:wm.window_new_main", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02588-operator-wm.window_new_main.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02588.py -- tests/files/web/generated/M16-GAP-02588-operator-wm.window_new_main.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02588", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02589", + "gapId": "operator:workspace.add", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02589-operator-workspace.add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02589.py -- tests/files/web/generated/M16-GAP-02589-operator-workspace.add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02589", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02590", + "gapId": "operator:workspace.append_activate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02590-operator-workspace.append_activate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02590.py -- tests/files/web/generated/M16-GAP-02590-operator-workspace.append_activate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02590", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02591", + "gapId": "operator:workspace.delete", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02591-operator-workspace.delete.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02591.py -- tests/files/web/generated/M16-GAP-02591-operator-workspace.delete.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02591", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02592", + "gapId": "operator:workspace.delete_all_others", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02592-operator-workspace.delete_all_others.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02592.py -- tests/files/web/generated/M16-GAP-02592-operator-workspace.delete_all_others.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02592", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02593", + "gapId": "operator:workspace.duplicate", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02593-operator-workspace.duplicate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02593.py -- tests/files/web/generated/M16-GAP-02593-operator-workspace.duplicate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02593", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02594", + "gapId": "operator:workspace.reorder_to_back", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02594-operator-workspace.reorder_to_back.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02594.py -- tests/files/web/generated/M16-GAP-02594-operator-workspace.reorder_to_back.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02594", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02595", + "gapId": "operator:workspace.reorder_to_front", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02595-operator-workspace.reorder_to_front.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02595.py -- tests/files/web/generated/M16-GAP-02595-operator-workspace.reorder_to_front.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02595", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02596", + "gapId": "operator:workspace.scene_pin_toggle", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02596-operator-workspace.scene_pin_toggle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02596.py -- tests/files/web/generated/M16-GAP-02596-operator-workspace.scene_pin_toggle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02596", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02597", + "gapId": "operator:world.convert_volume_to_mesh", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02597-operator-world.convert_volume_to_mesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02597.py -- tests/files/web/generated/M16-GAP-02597-operator-world.convert_volume_to_mesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02597", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02598", + "gapId": "operator:world.new", + "ownerFamily": "OPERATOR", + "sourceTask": "M15-01B", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02598-operator-world.new.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02598.py -- tests/files/web/generated/M16-GAP-02598-operator-world.new.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02598", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02599", + "gapId": "rna:Main:BlendData", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02599-rna-Main-BlendData.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02599.py -- tests/files/web/generated/M16-GAP-02599-rna-Main-BlendData.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02599", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02600", + "gapId": "rna:Main:BlendDataActions", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02600-rna-Main-BlendDataActions.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02600.py -- tests/files/web/generated/M16-GAP-02600-rna-Main-BlendDataActions.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02600", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02601", + "gapId": "rna:Main:BlendDataAnnotations", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02601-rna-Main-BlendDataAnnotations.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02601.py -- tests/files/web/generated/M16-GAP-02601-rna-Main-BlendDataAnnotations.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02601", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02602", + "gapId": "rna:Main:BlendDataArmatures", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02602-rna-Main-BlendDataArmatures.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02602.py -- tests/files/web/generated/M16-GAP-02602-rna-Main-BlendDataArmatures.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02602", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02603", + "gapId": "rna:Main:BlendDataBrushes", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02603-rna-Main-BlendDataBrushes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02603.py -- tests/files/web/generated/M16-GAP-02603-rna-Main-BlendDataBrushes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02603", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02604", + "gapId": "rna:Main:BlendDataCacheFiles", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02604-rna-Main-BlendDataCacheFiles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02604.py -- tests/files/web/generated/M16-GAP-02604-rna-Main-BlendDataCacheFiles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02604", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02605", + "gapId": "rna:Main:BlendDataCameras", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02605-rna-Main-BlendDataCameras.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02605.py -- tests/files/web/generated/M16-GAP-02605-rna-Main-BlendDataCameras.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02605", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02606", + "gapId": "rna:Main:BlendDataCollections", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02606-rna-Main-BlendDataCollections.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02606.py -- tests/files/web/generated/M16-GAP-02606-rna-Main-BlendDataCollections.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02606", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02607", + "gapId": "rna:Main:BlendDataCurves", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02607-rna-Main-BlendDataCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02607.py -- tests/files/web/generated/M16-GAP-02607-rna-Main-BlendDataCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02607", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02608", + "gapId": "rna:Main:BlendDataFonts", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02608-rna-Main-BlendDataFonts.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02608.py -- tests/files/web/generated/M16-GAP-02608-rna-Main-BlendDataFonts.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02608", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02609", + "gapId": "rna:Main:BlendDataGreasePencilsV3", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02609-rna-Main-BlendDataGreasePencilsV3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02609.py -- tests/files/web/generated/M16-GAP-02609-rna-Main-BlendDataGreasePencilsV3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02609", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02610", + "gapId": "rna:Main:BlendDataHairCurves", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02610-rna-Main-BlendDataHairCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02610.py -- tests/files/web/generated/M16-GAP-02610-rna-Main-BlendDataHairCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02610", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02611", + "gapId": "rna:Main:BlendDataImages", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02611-rna-Main-BlendDataImages.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02611.py -- tests/files/web/generated/M16-GAP-02611-rna-Main-BlendDataImages.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02611", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02612", + "gapId": "rna:Main:BlendDataLattices", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02612-rna-Main-BlendDataLattices.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02612.py -- tests/files/web/generated/M16-GAP-02612-rna-Main-BlendDataLattices.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02612", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02613", + "gapId": "rna:Main:BlendDataLibraries", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02613-rna-Main-BlendDataLibraries.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02613.py -- tests/files/web/generated/M16-GAP-02613-rna-Main-BlendDataLibraries.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02613", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02614", + "gapId": "rna:Main:BlendDataLights", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02614-rna-Main-BlendDataLights.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02614.py -- tests/files/web/generated/M16-GAP-02614-rna-Main-BlendDataLights.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02614", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02615", + "gapId": "rna:Main:BlendDataLineStyles", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02615-rna-Main-BlendDataLineStyles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02615.py -- tests/files/web/generated/M16-GAP-02615-rna-Main-BlendDataLineStyles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02615", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02616", + "gapId": "rna:Main:BlendDataMasks", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02616-rna-Main-BlendDataMasks.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02616.py -- tests/files/web/generated/M16-GAP-02616-rna-Main-BlendDataMasks.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02616", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02617", + "gapId": "rna:Main:BlendDataMaterials", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02617-rna-Main-BlendDataMaterials.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02617.py -- tests/files/web/generated/M16-GAP-02617-rna-Main-BlendDataMaterials.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02617", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02618", + "gapId": "rna:Main:BlendDataMeshes", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02618-rna-Main-BlendDataMeshes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02618.py -- tests/files/web/generated/M16-GAP-02618-rna-Main-BlendDataMeshes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02618", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02619", + "gapId": "rna:Main:BlendDataMetaBalls", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02619-rna-Main-BlendDataMetaBalls.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02619.py -- tests/files/web/generated/M16-GAP-02619-rna-Main-BlendDataMetaBalls.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02619", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02620", + "gapId": "rna:Main:BlendDataMovieClips", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02620-rna-Main-BlendDataMovieClips.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02620.py -- tests/files/web/generated/M16-GAP-02620-rna-Main-BlendDataMovieClips.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02620", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02621", + "gapId": "rna:Main:BlendDataNodeTrees", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02621-rna-Main-BlendDataNodeTrees.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02621.py -- tests/files/web/generated/M16-GAP-02621-rna-Main-BlendDataNodeTrees.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02621", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02622", + "gapId": "rna:Main:BlendDataObjects", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02622-rna-Main-BlendDataObjects.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02622.py -- tests/files/web/generated/M16-GAP-02622-rna-Main-BlendDataObjects.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02622", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02623", + "gapId": "rna:Main:BlendDataPaintCurves", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02623-rna-Main-BlendDataPaintCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02623.py -- tests/files/web/generated/M16-GAP-02623-rna-Main-BlendDataPaintCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02623", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02624", + "gapId": "rna:Main:BlendDataPalettes", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02624-rna-Main-BlendDataPalettes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02624.py -- tests/files/web/generated/M16-GAP-02624-rna-Main-BlendDataPalettes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02624", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02625", + "gapId": "rna:Main:BlendDataParticles", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02625-rna-Main-BlendDataParticles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02625.py -- tests/files/web/generated/M16-GAP-02625-rna-Main-BlendDataParticles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02625", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02626", + "gapId": "rna:Main:BlendDataPointClouds", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02626-rna-Main-BlendDataPointClouds.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02626.py -- tests/files/web/generated/M16-GAP-02626-rna-Main-BlendDataPointClouds.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02626", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02626", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02627", + "gapId": "rna:Main:BlendDataProbes", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02627-rna-Main-BlendDataProbes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02627.py -- tests/files/web/generated/M16-GAP-02627-rna-Main-BlendDataProbes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02627", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02627", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02628", + "gapId": "rna:Main:BlendDataScenes", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02628-rna-Main-BlendDataScenes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02628.py -- tests/files/web/generated/M16-GAP-02628-rna-Main-BlendDataScenes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02628", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02628", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02629", + "gapId": "rna:Main:BlendDataScreens", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02629-rna-Main-BlendDataScreens.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02629.py -- tests/files/web/generated/M16-GAP-02629-rna-Main-BlendDataScreens.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02629", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02629", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02630", + "gapId": "rna:Main:BlendDataSounds", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02630-rna-Main-BlendDataSounds.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02630.py -- tests/files/web/generated/M16-GAP-02630-rna-Main-BlendDataSounds.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02630", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02630", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02631", + "gapId": "rna:Main:BlendDataSpeakers", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02631-rna-Main-BlendDataSpeakers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02631.py -- tests/files/web/generated/M16-GAP-02631-rna-Main-BlendDataSpeakers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02631", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02631", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02632", + "gapId": "rna:Main:BlendDataTexts", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02632-rna-Main-BlendDataTexts.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02632.py -- tests/files/web/generated/M16-GAP-02632-rna-Main-BlendDataTexts.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02632", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02632", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02633", + "gapId": "rna:Main:BlendDataTextures", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02633-rna-Main-BlendDataTextures.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02633.py -- tests/files/web/generated/M16-GAP-02633-rna-Main-BlendDataTextures.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02633", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02633", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02634", + "gapId": "rna:Main:BlendDataVolumes", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02634-rna-Main-BlendDataVolumes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02634.py -- tests/files/web/generated/M16-GAP-02634-rna-Main-BlendDataVolumes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02634", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02634", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02635", + "gapId": "rna:Main:BlendDataWindowManagers", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02635-rna-Main-BlendDataWindowManagers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02635.py -- tests/files/web/generated/M16-GAP-02635-rna-Main-BlendDataWindowManagers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02635", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02635", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02636", + "gapId": "rna:Main:BlendDataWorkSpaces", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02636-rna-Main-BlendDataWorkSpaces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02636.py -- tests/files/web/generated/M16-GAP-02636-rna-Main-BlendDataWorkSpaces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02636", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02636", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02637", + "gapId": "rna:Main:BlendDataWorlds", + "ownerFamily": "Main", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02637-rna-Main-BlendDataWorlds.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02637.py -- tests/files/web/generated/M16-GAP-02637-rna-Main-BlendDataWorlds.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02637", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02637", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02638", + "gapId": "rna:Mesh:Attribute", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02638-rna-Mesh-Attribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02638.py -- tests/files/web/generated/M16-GAP-02638-rna-Mesh-Attribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02638", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02638", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02639", + "gapId": "rna:Mesh:AttributeGroupMesh", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02639-rna-Mesh-AttributeGroupMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02639.py -- tests/files/web/generated/M16-GAP-02639-rna-Mesh-AttributeGroupMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02639", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02639", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02640", + "gapId": "rna:Mesh:BoolAttribute", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02640-rna-Mesh-BoolAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02640.py -- tests/files/web/generated/M16-GAP-02640-rna-Mesh-BoolAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02640", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02640", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02641", + "gapId": "rna:Mesh:ByteColorAttribute", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02641-rna-Mesh-ByteColorAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02641.py -- tests/files/web/generated/M16-GAP-02641-rna-Mesh-ByteColorAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02641", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02641", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02642", + "gapId": "rna:Mesh:FloatAttribute", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02642-rna-Mesh-FloatAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02642.py -- tests/files/web/generated/M16-GAP-02642-rna-Mesh-FloatAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02642", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02642", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02643", + "gapId": "rna:Mesh:IntAttribute", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02643-rna-Mesh-IntAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02643.py -- tests/files/web/generated/M16-GAP-02643-rna-Mesh-IntAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02643", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02643", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02644", + "gapId": "rna:Mesh:Mesh", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02644-rna-Mesh-Mesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02644.py -- tests/files/web/generated/M16-GAP-02644-rna-Mesh-Mesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02644", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02644", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02645", + "gapId": "rna:Mesh:MeshAutomaskingSettings", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02645-rna-Mesh-MeshAutomaskingSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02645.py -- tests/files/web/generated/M16-GAP-02645-rna-Mesh-MeshAutomaskingSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02645", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02645", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02646", + "gapId": "rna:Mesh:MeshCacheModifier", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02646-rna-Mesh-MeshCacheModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02646.py -- tests/files/web/generated/M16-GAP-02646-rna-Mesh-MeshCacheModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02646", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02646", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02647", + "gapId": "rna:Mesh:MeshDeformModifier", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02647-rna-Mesh-MeshDeformModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02647.py -- tests/files/web/generated/M16-GAP-02647-rna-Mesh-MeshDeformModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02647", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02647", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02648", + "gapId": "rna:Mesh:MeshEdge", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02648-rna-Mesh-MeshEdge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02648.py -- tests/files/web/generated/M16-GAP-02648-rna-Mesh-MeshEdge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02648", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02648", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02649", + "gapId": "rna:Mesh:MeshEdges", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02649-rna-Mesh-MeshEdges.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02649.py -- tests/files/web/generated/M16-GAP-02649-rna-Mesh-MeshEdges.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02649", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02649", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02650", + "gapId": "rna:Mesh:MeshLoop", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02650-rna-Mesh-MeshLoop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02650.py -- tests/files/web/generated/M16-GAP-02650-rna-Mesh-MeshLoop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02650", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02650", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02651", + "gapId": "rna:Mesh:MeshLoopColor", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02651-rna-Mesh-MeshLoopColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02651.py -- tests/files/web/generated/M16-GAP-02651-rna-Mesh-MeshLoopColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02651", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02651", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02652", + "gapId": "rna:Mesh:MeshLoopColorLayer", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02652-rna-Mesh-MeshLoopColorLayer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02652.py -- tests/files/web/generated/M16-GAP-02652-rna-Mesh-MeshLoopColorLayer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02652", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02652", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02653", + "gapId": "rna:Mesh:MeshLoopTriangle", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02653-rna-Mesh-MeshLoopTriangle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02653.py -- tests/files/web/generated/M16-GAP-02653-rna-Mesh-MeshLoopTriangle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02653", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02653", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02654", + "gapId": "rna:Mesh:MeshLoopTriangles", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02654-rna-Mesh-MeshLoopTriangles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02654.py -- tests/files/web/generated/M16-GAP-02654-rna-Mesh-MeshLoopTriangles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02654", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02654", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02655", + "gapId": "rna:Mesh:MeshLoops", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02655-rna-Mesh-MeshLoops.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02655.py -- tests/files/web/generated/M16-GAP-02655-rna-Mesh-MeshLoops.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02655", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02655", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02656", + "gapId": "rna:Mesh:MeshNormalValue", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02656-rna-Mesh-MeshNormalValue.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02656.py -- tests/files/web/generated/M16-GAP-02656-rna-Mesh-MeshNormalValue.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02656", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02656", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02657", + "gapId": "rna:Mesh:MeshPolygon", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02657-rna-Mesh-MeshPolygon.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02657.py -- tests/files/web/generated/M16-GAP-02657-rna-Mesh-MeshPolygon.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02657", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02657", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02658", + "gapId": "rna:Mesh:MeshPolygons", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02658-rna-Mesh-MeshPolygons.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02658.py -- tests/files/web/generated/M16-GAP-02658-rna-Mesh-MeshPolygons.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02658", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02658", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02659", + "gapId": "rna:Mesh:MeshSequenceCacheModifier", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02659-rna-Mesh-MeshSequenceCacheModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02659.py -- tests/files/web/generated/M16-GAP-02659-rna-Mesh-MeshSequenceCacheModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02659", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02659", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02660", + "gapId": "rna:Mesh:MeshSkinVertex", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02660-rna-Mesh-MeshSkinVertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02660.py -- tests/files/web/generated/M16-GAP-02660-rna-Mesh-MeshSkinVertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02660", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02660", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02661", + "gapId": "rna:Mesh:MeshSkinVertexLayer", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02661-rna-Mesh-MeshSkinVertexLayer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02661.py -- tests/files/web/generated/M16-GAP-02661-rna-Mesh-MeshSkinVertexLayer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02661", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02661", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02662", + "gapId": "rna:Mesh:MeshStatVis", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02662-rna-Mesh-MeshStatVis.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02662.py -- tests/files/web/generated/M16-GAP-02662-rna-Mesh-MeshStatVis.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02662", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02662", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02663", + "gapId": "rna:Mesh:MeshToVolumeModifier", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02663-rna-Mesh-MeshToVolumeModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02663.py -- tests/files/web/generated/M16-GAP-02663-rna-Mesh-MeshToVolumeModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02663", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02663", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02664", + "gapId": "rna:Mesh:MeshUVLoop", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02664-rna-Mesh-MeshUVLoop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02664.py -- tests/files/web/generated/M16-GAP-02664-rna-Mesh-MeshUVLoop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02664", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02664", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02665", + "gapId": "rna:Mesh:MeshUVLoopLayer", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02665-rna-Mesh-MeshUVLoopLayer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02665.py -- tests/files/web/generated/M16-GAP-02665-rna-Mesh-MeshUVLoopLayer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02665", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02665", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02666", + "gapId": "rna:Mesh:MeshVertex", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02666-rna-Mesh-MeshVertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02666.py -- tests/files/web/generated/M16-GAP-02666-rna-Mesh-MeshVertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02666", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02666", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M16-GAP-02667", + "gapId": "rna:Mesh:MeshVertices", + "ownerFamily": "Mesh", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-02667-rna-Mesh-MeshVertices.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-02667.py -- tests/files/web/generated/M16-GAP-02667-rna-Mesh-MeshVertices.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M16-GAP-02667", + "comparator": "node tools/web/check-generated-gap.mjs --task M16-GAP-02667", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00001", + "gapId": "constraint:ACTION", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00001-constraint-ACTION.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00001.py -- tests/files/web/generated/M17-GAP-00001-constraint-ACTION.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00002", + "gapId": "constraint:ARMATURE", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00002-constraint-ARMATURE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00002.py -- tests/files/web/generated/M17-GAP-00002-constraint-ARMATURE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00003", + "gapId": "constraint:CAMERA_SOLVER", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00003-constraint-CAMERA_SOLVER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00003.py -- tests/files/web/generated/M17-GAP-00003-constraint-CAMERA_SOLVER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00004", + "gapId": "constraint:CHILD_OF", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00004-constraint-CHILD_OF.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00004.py -- tests/files/web/generated/M17-GAP-00004-constraint-CHILD_OF.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00005", + "gapId": "constraint:CLAMP_TO", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00005-constraint-CLAMP_TO.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00005.py -- tests/files/web/generated/M17-GAP-00005-constraint-CLAMP_TO.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00006", + "gapId": "constraint:COPY_LOCATION", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00006-constraint-COPY_LOCATION.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00006.py -- tests/files/web/generated/M17-GAP-00006-constraint-COPY_LOCATION.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00007", + "gapId": "constraint:COPY_ROTATION", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00007-constraint-COPY_ROTATION.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00007.py -- tests/files/web/generated/M17-GAP-00007-constraint-COPY_ROTATION.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00008", + "gapId": "constraint:COPY_SCALE", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00008-constraint-COPY_SCALE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00008.py -- tests/files/web/generated/M17-GAP-00008-constraint-COPY_SCALE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00009", + "gapId": "constraint:COPY_TRANSFORMS", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00009-constraint-COPY_TRANSFORMS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00009.py -- tests/files/web/generated/M17-GAP-00009-constraint-COPY_TRANSFORMS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00010", + "gapId": "constraint:DAMPED_TRACK", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00010-constraint-DAMPED_TRACK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00010.py -- tests/files/web/generated/M17-GAP-00010-constraint-DAMPED_TRACK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00011", + "gapId": "constraint:FLOOR", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00011-constraint-FLOOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00011.py -- tests/files/web/generated/M17-GAP-00011-constraint-FLOOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00012", + "gapId": "constraint:FOLLOW_PATH", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00012-constraint-FOLLOW_PATH.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00012.py -- tests/files/web/generated/M17-GAP-00012-constraint-FOLLOW_PATH.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00013", + "gapId": "constraint:FOLLOW_TRACK", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00013-constraint-FOLLOW_TRACK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00013.py -- tests/files/web/generated/M17-GAP-00013-constraint-FOLLOW_TRACK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00014", + "gapId": "constraint:GEOMETRY_ATTRIBUTE", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00014-constraint-GEOMETRY_ATTRIBUTE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00014.py -- tests/files/web/generated/M17-GAP-00014-constraint-GEOMETRY_ATTRIBUTE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00015", + "gapId": "constraint:IK", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00015-constraint-IK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00015.py -- tests/files/web/generated/M17-GAP-00015-constraint-IK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00016", + "gapId": "constraint:LIMIT_DISTANCE", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00016-constraint-LIMIT_DISTANCE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00016.py -- tests/files/web/generated/M17-GAP-00016-constraint-LIMIT_DISTANCE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00017", + "gapId": "constraint:LIMIT_LOCATION", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00017-constraint-LIMIT_LOCATION.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00017.py -- tests/files/web/generated/M17-GAP-00017-constraint-LIMIT_LOCATION.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00018", + "gapId": "constraint:LIMIT_ROTATION", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00018-constraint-LIMIT_ROTATION.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00018.py -- tests/files/web/generated/M17-GAP-00018-constraint-LIMIT_ROTATION.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00019", + "gapId": "constraint:LIMIT_SCALE", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00019-constraint-LIMIT_SCALE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00019.py -- tests/files/web/generated/M17-GAP-00019-constraint-LIMIT_SCALE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00020", + "gapId": "constraint:LOCKED_TRACK", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00020-constraint-LOCKED_TRACK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00020.py -- tests/files/web/generated/M17-GAP-00020-constraint-LOCKED_TRACK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00020", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00021", + "gapId": "constraint:MAINTAIN_VOLUME", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00021-constraint-MAINTAIN_VOLUME.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00021.py -- tests/files/web/generated/M17-GAP-00021-constraint-MAINTAIN_VOLUME.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00021", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00022", + "gapId": "constraint:OBJECT_SOLVER", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00022-constraint-OBJECT_SOLVER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00022.py -- tests/files/web/generated/M17-GAP-00022-constraint-OBJECT_SOLVER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00022", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00023", + "gapId": "constraint:PIVOT", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00023-constraint-PIVOT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00023.py -- tests/files/web/generated/M17-GAP-00023-constraint-PIVOT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00023", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00024", + "gapId": "constraint:SHRINKWRAP", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00024-constraint-SHRINKWRAP.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00024.py -- tests/files/web/generated/M17-GAP-00024-constraint-SHRINKWRAP.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00024", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00025", + "gapId": "constraint:SPLINE_IK", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00025-constraint-SPLINE_IK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00025.py -- tests/files/web/generated/M17-GAP-00025-constraint-SPLINE_IK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00025", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00026", + "gapId": "constraint:STRETCH_TO", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00026-constraint-STRETCH_TO.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00026.py -- tests/files/web/generated/M17-GAP-00026-constraint-STRETCH_TO.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00026", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00027", + "gapId": "constraint:TRACK_TO", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00027-constraint-TRACK_TO.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00027.py -- tests/files/web/generated/M17-GAP-00027-constraint-TRACK_TO.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00027", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00028", + "gapId": "constraint:TRANSFORM", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00028-constraint-TRANSFORM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00028.py -- tests/files/web/generated/M17-GAP-00028-constraint-TRANSFORM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00028", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M17-GAP-00029", + "gapId": "constraint:TRANSFORM_CACHE", + "ownerFamily": "CONSTRAINT", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M17-GAP-00029-constraint-TRANSFORM_CACHE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M17-GAP-00029.py -- tests/files/web/generated/M17-GAP-00029-constraint-TRANSFORM_CACHE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M17-GAP-00029", + "comparator": "node tools/web/check-generated-gap.mjs --task M17-GAP-00029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00001", + "gapId": "node:Compositor:CompositorNodeAlphaOver", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00001-node-Compositor-CompositorNodeAlphaOver.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00001.py -- tests/files/web/generated/M18-GAP-00001-node-Compositor-CompositorNodeAlphaOver.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00002", + "gapId": "node:Compositor:CompositorNodeAntiAliasing", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00002-node-Compositor-CompositorNodeAntiAliasing.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00002.py -- tests/files/web/generated/M18-GAP-00002-node-Compositor-CompositorNodeAntiAliasing.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00003", + "gapId": "node:Compositor:CompositorNodeBilateralblur", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00003-node-Compositor-CompositorNodeBilateralblur.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00003.py -- tests/files/web/generated/M18-GAP-00003-node-Compositor-CompositorNodeBilateralblur.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00004", + "gapId": "node:Compositor:CompositorNodeBlankImage", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00004-node-Compositor-CompositorNodeBlankImage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00004.py -- tests/files/web/generated/M18-GAP-00004-node-Compositor-CompositorNodeBlankImage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00005", + "gapId": "node:Compositor:CompositorNodeBlur", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00005-node-Compositor-CompositorNodeBlur.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00005.py -- tests/files/web/generated/M18-GAP-00005-node-Compositor-CompositorNodeBlur.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00006", + "gapId": "node:Compositor:CompositorNodeBokehBlur", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00006-node-Compositor-CompositorNodeBokehBlur.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00006.py -- tests/files/web/generated/M18-GAP-00006-node-Compositor-CompositorNodeBokehBlur.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00007", + "gapId": "node:Compositor:CompositorNodeBokehImage", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00007-node-Compositor-CompositorNodeBokehImage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00007.py -- tests/files/web/generated/M18-GAP-00007-node-Compositor-CompositorNodeBokehImage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00008", + "gapId": "node:Compositor:CompositorNodeBoxMask", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00008-node-Compositor-CompositorNodeBoxMask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00008.py -- tests/files/web/generated/M18-GAP-00008-node-Compositor-CompositorNodeBoxMask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00009", + "gapId": "node:Compositor:CompositorNodeBrightContrast", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00009-node-Compositor-CompositorNodeBrightContrast.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00009.py -- tests/files/web/generated/M18-GAP-00009-node-Compositor-CompositorNodeBrightContrast.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00010", + "gapId": "node:Compositor:CompositorNodeChannelMatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00010-node-Compositor-CompositorNodeChannelMatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00010.py -- tests/files/web/generated/M18-GAP-00010-node-Compositor-CompositorNodeChannelMatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00011", + "gapId": "node:Compositor:CompositorNodeChromaMatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00011-node-Compositor-CompositorNodeChromaMatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00011.py -- tests/files/web/generated/M18-GAP-00011-node-Compositor-CompositorNodeChromaMatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00012", + "gapId": "node:Compositor:CompositorNodeColorBalance", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00012-node-Compositor-CompositorNodeColorBalance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00012.py -- tests/files/web/generated/M18-GAP-00012-node-Compositor-CompositorNodeColorBalance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00013", + "gapId": "node:Compositor:CompositorNodeColorCorrection", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00013-node-Compositor-CompositorNodeColorCorrection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00013.py -- tests/files/web/generated/M18-GAP-00013-node-Compositor-CompositorNodeColorCorrection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00014", + "gapId": "node:Compositor:CompositorNodeColorMatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00014-node-Compositor-CompositorNodeColorMatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00014.py -- tests/files/web/generated/M18-GAP-00014-node-Compositor-CompositorNodeColorMatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00015", + "gapId": "node:Compositor:CompositorNodeColorSpill", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00015-node-Compositor-CompositorNodeColorSpill.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00015.py -- tests/files/web/generated/M18-GAP-00015-node-Compositor-CompositorNodeColorSpill.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00016", + "gapId": "node:Compositor:CompositorNodeCombineColor", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00016-node-Compositor-CompositorNodeCombineColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00016.py -- tests/files/web/generated/M18-GAP-00016-node-Compositor-CompositorNodeCombineColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00017", + "gapId": "node:Compositor:CompositorNodeConvertColorSpace", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00017-node-Compositor-CompositorNodeConvertColorSpace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00017.py -- tests/files/web/generated/M18-GAP-00017-node-Compositor-CompositorNodeConvertColorSpace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00018", + "gapId": "node:Compositor:CompositorNodeConvertToDisplay", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00018-node-Compositor-CompositorNodeConvertToDisplay.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00018.py -- tests/files/web/generated/M18-GAP-00018-node-Compositor-CompositorNodeConvertToDisplay.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00019", + "gapId": "node:Compositor:CompositorNodeConvolve", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00019-node-Compositor-CompositorNodeConvolve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00019.py -- tests/files/web/generated/M18-GAP-00019-node-Compositor-CompositorNodeConvolve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00020", + "gapId": "node:Compositor:CompositorNodeCornerPin", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00020-node-Compositor-CompositorNodeCornerPin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00020.py -- tests/files/web/generated/M18-GAP-00020-node-Compositor-CompositorNodeCornerPin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00020", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00021", + "gapId": "node:Compositor:CompositorNodeCrop", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00021-node-Compositor-CompositorNodeCrop.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00021.py -- tests/files/web/generated/M18-GAP-00021-node-Compositor-CompositorNodeCrop.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00021", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00022", + "gapId": "node:Compositor:CompositorNodeCryptomatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00022-node-Compositor-CompositorNodeCryptomatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00022.py -- tests/files/web/generated/M18-GAP-00022-node-Compositor-CompositorNodeCryptomatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00022", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00023", + "gapId": "node:Compositor:CompositorNodeCryptomatteV2", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00023-node-Compositor-CompositorNodeCryptomatteV2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00023.py -- tests/files/web/generated/M18-GAP-00023-node-Compositor-CompositorNodeCryptomatteV2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00023", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00024", + "gapId": "node:Compositor:CompositorNodeCurveRGB", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00024-node-Compositor-CompositorNodeCurveRGB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00024.py -- tests/files/web/generated/M18-GAP-00024-node-Compositor-CompositorNodeCurveRGB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00024", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00025", + "gapId": "node:Compositor:CompositorNodeDBlur", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00025-node-Compositor-CompositorNodeDBlur.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00025.py -- tests/files/web/generated/M18-GAP-00025-node-Compositor-CompositorNodeDBlur.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00025", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00026", + "gapId": "node:Compositor:CompositorNodeDefocus", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00026-node-Compositor-CompositorNodeDefocus.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00026.py -- tests/files/web/generated/M18-GAP-00026-node-Compositor-CompositorNodeDefocus.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00026", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00027", + "gapId": "node:Compositor:CompositorNodeDenoise", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00027-node-Compositor-CompositorNodeDenoise.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00027.py -- tests/files/web/generated/M18-GAP-00027-node-Compositor-CompositorNodeDenoise.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00027", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00028", + "gapId": "node:Compositor:CompositorNodeDespeckle", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00028-node-Compositor-CompositorNodeDespeckle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00028.py -- tests/files/web/generated/M18-GAP-00028-node-Compositor-CompositorNodeDespeckle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00028", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00029", + "gapId": "node:Compositor:CompositorNodeDiffMatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00029-node-Compositor-CompositorNodeDiffMatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00029.py -- tests/files/web/generated/M18-GAP-00029-node-Compositor-CompositorNodeDiffMatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00029", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00030", + "gapId": "node:Compositor:CompositorNodeDilateErode", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00030-node-Compositor-CompositorNodeDilateErode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00030.py -- tests/files/web/generated/M18-GAP-00030-node-Compositor-CompositorNodeDilateErode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00030", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00031", + "gapId": "node:Compositor:CompositorNodeDisplace", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00031-node-Compositor-CompositorNodeDisplace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00031.py -- tests/files/web/generated/M18-GAP-00031-node-Compositor-CompositorNodeDisplace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00031", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00032", + "gapId": "node:Compositor:CompositorNodeDistanceMatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00032-node-Compositor-CompositorNodeDistanceMatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00032.py -- tests/files/web/generated/M18-GAP-00032-node-Compositor-CompositorNodeDistanceMatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00032", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00033", + "gapId": "node:Compositor:CompositorNodeDoubleEdgeMask", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00033-node-Compositor-CompositorNodeDoubleEdgeMask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00033.py -- tests/files/web/generated/M18-GAP-00033-node-Compositor-CompositorNodeDoubleEdgeMask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00033", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00034", + "gapId": "node:Compositor:CompositorNodeEllipseMask", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00034-node-Compositor-CompositorNodeEllipseMask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00034.py -- tests/files/web/generated/M18-GAP-00034-node-Compositor-CompositorNodeEllipseMask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00034", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00035", + "gapId": "node:Compositor:CompositorNodeExposure", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00035-node-Compositor-CompositorNodeExposure.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00035.py -- tests/files/web/generated/M18-GAP-00035-node-Compositor-CompositorNodeExposure.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00035", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00036", + "gapId": "node:Compositor:CompositorNodeFilter", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00036-node-Compositor-CompositorNodeFilter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00036.py -- tests/files/web/generated/M18-GAP-00036-node-Compositor-CompositorNodeFilter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00036", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00037", + "gapId": "node:Compositor:CompositorNodeFlip", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00037-node-Compositor-CompositorNodeFlip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00037.py -- tests/files/web/generated/M18-GAP-00037-node-Compositor-CompositorNodeFlip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00037", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00038", + "gapId": "node:Compositor:CompositorNodeGlare", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00038-node-Compositor-CompositorNodeGlare.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00038.py -- tests/files/web/generated/M18-GAP-00038-node-Compositor-CompositorNodeGlare.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00038", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00039", + "gapId": "node:Compositor:CompositorNodeGroup", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00039-node-Compositor-CompositorNodeGroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00039.py -- tests/files/web/generated/M18-GAP-00039-node-Compositor-CompositorNodeGroup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00039", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00040", + "gapId": "node:Compositor:CompositorNodeHueCorrect", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00040-node-Compositor-CompositorNodeHueCorrect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00040.py -- tests/files/web/generated/M18-GAP-00040-node-Compositor-CompositorNodeHueCorrect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00040", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00041", + "gapId": "node:Compositor:CompositorNodeHueSat", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00041-node-Compositor-CompositorNodeHueSat.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00041.py -- tests/files/web/generated/M18-GAP-00041-node-Compositor-CompositorNodeHueSat.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00041", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00042", + "gapId": "node:Compositor:CompositorNodeIDMask", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00042-node-Compositor-CompositorNodeIDMask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00042.py -- tests/files/web/generated/M18-GAP-00042-node-Compositor-CompositorNodeIDMask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00042", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00043", + "gapId": "node:Compositor:CompositorNodeImage", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00043-node-Compositor-CompositorNodeImage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00043.py -- tests/files/web/generated/M18-GAP-00043-node-Compositor-CompositorNodeImage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00043", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00044", + "gapId": "node:Compositor:CompositorNodeImageCoordinates", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00044-node-Compositor-CompositorNodeImageCoordinates.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00044.py -- tests/files/web/generated/M18-GAP-00044-node-Compositor-CompositorNodeImageCoordinates.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00044", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00045", + "gapId": "node:Compositor:CompositorNodeImageInfo", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00045-node-Compositor-CompositorNodeImageInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00045.py -- tests/files/web/generated/M18-GAP-00045-node-Compositor-CompositorNodeImageInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00045", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00046", + "gapId": "node:Compositor:CompositorNodeInpaint", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00046-node-Compositor-CompositorNodeInpaint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00046.py -- tests/files/web/generated/M18-GAP-00046-node-Compositor-CompositorNodeInpaint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00046", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00047", + "gapId": "node:Compositor:CompositorNodeInvert", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00047-node-Compositor-CompositorNodeInvert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00047.py -- tests/files/web/generated/M18-GAP-00047-node-Compositor-CompositorNodeInvert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00047", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00048", + "gapId": "node:Compositor:CompositorNodeKeying", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00048-node-Compositor-CompositorNodeKeying.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00048.py -- tests/files/web/generated/M18-GAP-00048-node-Compositor-CompositorNodeKeying.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00048", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00049", + "gapId": "node:Compositor:CompositorNodeKeyingScreen", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00049-node-Compositor-CompositorNodeKeyingScreen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00049.py -- tests/files/web/generated/M18-GAP-00049-node-Compositor-CompositorNodeKeyingScreen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00049", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00050", + "gapId": "node:Compositor:CompositorNodeKuwahara", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00050-node-Compositor-CompositorNodeKuwahara.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00050.py -- tests/files/web/generated/M18-GAP-00050-node-Compositor-CompositorNodeKuwahara.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00050", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00051", + "gapId": "node:Compositor:CompositorNodeLensdist", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00051-node-Compositor-CompositorNodeLensdist.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00051.py -- tests/files/web/generated/M18-GAP-00051-node-Compositor-CompositorNodeLensdist.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00051", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00052", + "gapId": "node:Compositor:CompositorNodeLevels", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00052-node-Compositor-CompositorNodeLevels.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00052.py -- tests/files/web/generated/M18-GAP-00052-node-Compositor-CompositorNodeLevels.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00052", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00053", + "gapId": "node:Compositor:CompositorNodeLumaMatte", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00053-node-Compositor-CompositorNodeLumaMatte.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00053.py -- tests/files/web/generated/M18-GAP-00053-node-Compositor-CompositorNodeLumaMatte.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00053", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00054", + "gapId": "node:Compositor:CompositorNodeMapUV", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00054-node-Compositor-CompositorNodeMapUV.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00054.py -- tests/files/web/generated/M18-GAP-00054-node-Compositor-CompositorNodeMapUV.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00054", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00055", + "gapId": "node:Compositor:CompositorNodeMask", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00055-node-Compositor-CompositorNodeMask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00055.py -- tests/files/web/generated/M18-GAP-00055-node-Compositor-CompositorNodeMask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00055", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00056", + "gapId": "node:Compositor:CompositorNodeMaskToSDF", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00056-node-Compositor-CompositorNodeMaskToSDF.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00056.py -- tests/files/web/generated/M18-GAP-00056-node-Compositor-CompositorNodeMaskToSDF.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00056", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00057", + "gapId": "node:Compositor:CompositorNodeMovieClip", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00057-node-Compositor-CompositorNodeMovieClip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00057.py -- tests/files/web/generated/M18-GAP-00057-node-Compositor-CompositorNodeMovieClip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00057", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00058", + "gapId": "node:Compositor:CompositorNodeMovieDistortion", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00058-node-Compositor-CompositorNodeMovieDistortion.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00058.py -- tests/files/web/generated/M18-GAP-00058-node-Compositor-CompositorNodeMovieDistortion.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00058", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00059", + "gapId": "node:Compositor:CompositorNodeNormal", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00059-node-Compositor-CompositorNodeNormal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00059.py -- tests/files/web/generated/M18-GAP-00059-node-Compositor-CompositorNodeNormal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00059", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00060", + "gapId": "node:Compositor:CompositorNodeNormalize", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00060-node-Compositor-CompositorNodeNormalize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00060.py -- tests/files/web/generated/M18-GAP-00060-node-Compositor-CompositorNodeNormalize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00060", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00061", + "gapId": "node:Compositor:CompositorNodeOutputFile", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00061-node-Compositor-CompositorNodeOutputFile.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00061.py -- tests/files/web/generated/M18-GAP-00061-node-Compositor-CompositorNodeOutputFile.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00061", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00062", + "gapId": "node:Compositor:CompositorNodePixelate", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00062-node-Compositor-CompositorNodePixelate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00062.py -- tests/files/web/generated/M18-GAP-00062-node-Compositor-CompositorNodePixelate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00062", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00063", + "gapId": "node:Compositor:CompositorNodePlaneTrackDeform", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00063-node-Compositor-CompositorNodePlaneTrackDeform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00063.py -- tests/files/web/generated/M18-GAP-00063-node-Compositor-CompositorNodePlaneTrackDeform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00063", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00064", + "gapId": "node:Compositor:CompositorNodePosterize", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00064-node-Compositor-CompositorNodePosterize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00064.py -- tests/files/web/generated/M18-GAP-00064-node-Compositor-CompositorNodePosterize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00064", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00065", + "gapId": "node:Compositor:CompositorNodePremulKey", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00065-node-Compositor-CompositorNodePremulKey.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00065.py -- tests/files/web/generated/M18-GAP-00065-node-Compositor-CompositorNodePremulKey.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00065", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00066", + "gapId": "node:Compositor:CompositorNodeRGB", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00066-node-Compositor-CompositorNodeRGB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00066.py -- tests/files/web/generated/M18-GAP-00066-node-Compositor-CompositorNodeRGB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00066", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00067", + "gapId": "node:Compositor:CompositorNodeRGBToBW", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00067-node-Compositor-CompositorNodeRGBToBW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00067.py -- tests/files/web/generated/M18-GAP-00067-node-Compositor-CompositorNodeRGBToBW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00067", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00068", + "gapId": "node:Compositor:CompositorNodeRLayers", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00068-node-Compositor-CompositorNodeRLayers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00068.py -- tests/files/web/generated/M18-GAP-00068-node-Compositor-CompositorNodeRLayers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00068", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00069", + "gapId": "node:Compositor:CompositorNodeRelativeToPixel", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00069-node-Compositor-CompositorNodeRelativeToPixel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00069.py -- tests/files/web/generated/M18-GAP-00069-node-Compositor-CompositorNodeRelativeToPixel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00069", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00070", + "gapId": "node:Compositor:CompositorNodeRotate", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00070-node-Compositor-CompositorNodeRotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00070.py -- tests/files/web/generated/M18-GAP-00070-node-Compositor-CompositorNodeRotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00070", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00071", + "gapId": "node:Compositor:CompositorNodeScale", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00071-node-Compositor-CompositorNodeScale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00071.py -- tests/files/web/generated/M18-GAP-00071-node-Compositor-CompositorNodeScale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00071", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00072", + "gapId": "node:Compositor:CompositorNodeSceneTime", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00072-node-Compositor-CompositorNodeSceneTime.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00072.py -- tests/files/web/generated/M18-GAP-00072-node-Compositor-CompositorNodeSceneTime.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00072", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00073", + "gapId": "node:Compositor:CompositorNodeSeparateColor", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00073-node-Compositor-CompositorNodeSeparateColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00073.py -- tests/files/web/generated/M18-GAP-00073-node-Compositor-CompositorNodeSeparateColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00073", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00074", + "gapId": "node:Compositor:CompositorNodeSequencerStripInfo", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00074-node-Compositor-CompositorNodeSequencerStripInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00074.py -- tests/files/web/generated/M18-GAP-00074-node-Compositor-CompositorNodeSequencerStripInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00074", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00075", + "gapId": "node:Compositor:CompositorNodeSetAlpha", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00075-node-Compositor-CompositorNodeSetAlpha.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00075.py -- tests/files/web/generated/M18-GAP-00075-node-Compositor-CompositorNodeSetAlpha.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00075", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00076", + "gapId": "node:Compositor:CompositorNodeSplit", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00076-node-Compositor-CompositorNodeSplit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00076.py -- tests/files/web/generated/M18-GAP-00076-node-Compositor-CompositorNodeSplit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00076", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00077", + "gapId": "node:Compositor:CompositorNodeStabilize", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00077-node-Compositor-CompositorNodeStabilize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00077.py -- tests/files/web/generated/M18-GAP-00077-node-Compositor-CompositorNodeStabilize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00077", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00078", + "gapId": "node:Compositor:CompositorNodeStringToImage", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00078-node-Compositor-CompositorNodeStringToImage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00078.py -- tests/files/web/generated/M18-GAP-00078-node-Compositor-CompositorNodeStringToImage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00078", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00079", + "gapId": "node:Compositor:CompositorNodeSwitch", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00079-node-Compositor-CompositorNodeSwitch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00079.py -- tests/files/web/generated/M18-GAP-00079-node-Compositor-CompositorNodeSwitch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00079", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00080", + "gapId": "node:Compositor:CompositorNodeSwitchView", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00080-node-Compositor-CompositorNodeSwitchView.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00080.py -- tests/files/web/generated/M18-GAP-00080-node-Compositor-CompositorNodeSwitchView.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00080", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00081", + "gapId": "node:Compositor:CompositorNodeTime", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00081-node-Compositor-CompositorNodeTime.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00081.py -- tests/files/web/generated/M18-GAP-00081-node-Compositor-CompositorNodeTime.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00081", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00082", + "gapId": "node:Compositor:CompositorNodeTonemap", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00082-node-Compositor-CompositorNodeTonemap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00082.py -- tests/files/web/generated/M18-GAP-00082-node-Compositor-CompositorNodeTonemap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00082", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00083", + "gapId": "node:Compositor:CompositorNodeTrackPos", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00083-node-Compositor-CompositorNodeTrackPos.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00083.py -- tests/files/web/generated/M18-GAP-00083-node-Compositor-CompositorNodeTrackPos.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00083", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00084", + "gapId": "node:Compositor:CompositorNodeTransform", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00084-node-Compositor-CompositorNodeTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00084.py -- tests/files/web/generated/M18-GAP-00084-node-Compositor-CompositorNodeTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00084", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00085", + "gapId": "node:Compositor:CompositorNodeTranslate", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00085-node-Compositor-CompositorNodeTranslate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00085.py -- tests/files/web/generated/M18-GAP-00085-node-Compositor-CompositorNodeTranslate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00085", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00086", + "gapId": "node:Compositor:CompositorNodeVecBlur", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00086-node-Compositor-CompositorNodeVecBlur.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00086.py -- tests/files/web/generated/M18-GAP-00086-node-Compositor-CompositorNodeVecBlur.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00086", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00087", + "gapId": "node:Compositor:CompositorNodeViewer", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00087-node-Compositor-CompositorNodeViewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00087.py -- tests/files/web/generated/M18-GAP-00087-node-Compositor-CompositorNodeViewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00087", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00088", + "gapId": "node:Compositor:CompositorNodeZcombine", + "ownerFamily": "COMPOSITOR_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00088-node-Compositor-CompositorNodeZcombine.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00088.py -- tests/files/web/generated/M18-GAP-00088-node-Compositor-CompositorNodeZcombine.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00088", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00089", + "gapId": "node:Geometry:GeometryNodeAccumulateField", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00089-node-Geometry-GeometryNodeAccumulateField.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00089.py -- tests/files/web/generated/M18-GAP-00089-node-Geometry-GeometryNodeAccumulateField.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00089", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00090", + "gapId": "node:Geometry:GeometryNodeAttributeDomainSize", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00090-node-Geometry-GeometryNodeAttributeDomainSize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00090.py -- tests/files/web/generated/M18-GAP-00090-node-Geometry-GeometryNodeAttributeDomainSize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00090", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00091", + "gapId": "node:Geometry:GeometryNodeAttributeStatistic", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00091-node-Geometry-GeometryNodeAttributeStatistic.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00091.py -- tests/files/web/generated/M18-GAP-00091-node-Geometry-GeometryNodeAttributeStatistic.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00091", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00092", + "gapId": "node:Geometry:GeometryNodeBake", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00092-node-Geometry-GeometryNodeBake.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00092.py -- tests/files/web/generated/M18-GAP-00092-node-Geometry-GeometryNodeBake.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00092", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00093", + "gapId": "node:Geometry:GeometryNodeBlurAttribute", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00093-node-Geometry-GeometryNodeBlurAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00093.py -- tests/files/web/generated/M18-GAP-00093-node-Geometry-GeometryNodeBlurAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00093", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00094", + "gapId": "node:Geometry:GeometryNodeBoneInfo", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00094-node-Geometry-GeometryNodeBoneInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00094.py -- tests/files/web/generated/M18-GAP-00094-node-Geometry-GeometryNodeBoneInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00094", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00095", + "gapId": "node:Geometry:GeometryNodeBoundBox", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00095-node-Geometry-GeometryNodeBoundBox.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00095.py -- tests/files/web/generated/M18-GAP-00095-node-Geometry-GeometryNodeBoundBox.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00095", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00096", + "gapId": "node:Geometry:GeometryNodeCameraInfo", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00096-node-Geometry-GeometryNodeCameraInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00096.py -- tests/files/web/generated/M18-GAP-00096-node-Geometry-GeometryNodeCameraInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00096", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00097", + "gapId": "node:Geometry:GeometryNodeCaptureAttribute", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00097-node-Geometry-GeometryNodeCaptureAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00097.py -- tests/files/web/generated/M18-GAP-00097-node-Geometry-GeometryNodeCaptureAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00097", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00098", + "gapId": "node:Geometry:GeometryNodeClosureToList", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00098-node-Geometry-GeometryNodeClosureToList.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00098.py -- tests/files/web/generated/M18-GAP-00098-node-Geometry-GeometryNodeClosureToList.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00098", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00099", + "gapId": "node:Geometry:GeometryNodeClusterByConnected", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00099-node-Geometry-GeometryNodeClusterByConnected.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00099.py -- tests/files/web/generated/M18-GAP-00099-node-Geometry-GeometryNodeClusterByConnected.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00099", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00100", + "gapId": "node:Geometry:GeometryNodeClusterByDistance", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00100-node-Geometry-GeometryNodeClusterByDistance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00100.py -- tests/files/web/generated/M18-GAP-00100-node-Geometry-GeometryNodeClusterByDistance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00100", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00101", + "gapId": "node:Geometry:GeometryNodeCollectionChildren", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00101-node-Geometry-GeometryNodeCollectionChildren.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00101.py -- tests/files/web/generated/M18-GAP-00101-node-Geometry-GeometryNodeCollectionChildren.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00101", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00102", + "gapId": "node:Geometry:GeometryNodeCollectionInfo", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00102-node-Geometry-GeometryNodeCollectionInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00102.py -- tests/files/web/generated/M18-GAP-00102-node-Geometry-GeometryNodeCollectionInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00102", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00103", + "gapId": "node:Geometry:GeometryNodeConvexHull", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00103-node-Geometry-GeometryNodeConvexHull.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00103.py -- tests/files/web/generated/M18-GAP-00103-node-Geometry-GeometryNodeConvexHull.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00103", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00104", + "gapId": "node:Geometry:GeometryNodeCornersOfEdge", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00104-node-Geometry-GeometryNodeCornersOfEdge.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00104.py -- tests/files/web/generated/M18-GAP-00104-node-Geometry-GeometryNodeCornersOfEdge.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00104", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00105", + "gapId": "node:Geometry:GeometryNodeCornersOfFace", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00105-node-Geometry-GeometryNodeCornersOfFace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00105.py -- tests/files/web/generated/M18-GAP-00105-node-Geometry-GeometryNodeCornersOfFace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00105", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00106", + "gapId": "node:Geometry:GeometryNodeCornersOfVertex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00106-node-Geometry-GeometryNodeCornersOfVertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00106.py -- tests/files/web/generated/M18-GAP-00106-node-Geometry-GeometryNodeCornersOfVertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00106", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00107", + "gapId": "node:Geometry:GeometryNodeCubeGridTopology", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00107-node-Geometry-GeometryNodeCubeGridTopology.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00107.py -- tests/files/web/generated/M18-GAP-00107-node-Geometry-GeometryNodeCubeGridTopology.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00107", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00108", + "gapId": "node:Geometry:GeometryNodeCurveArc", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00108-node-Geometry-GeometryNodeCurveArc.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00108.py -- tests/files/web/generated/M18-GAP-00108-node-Geometry-GeometryNodeCurveArc.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00108", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00109", + "gapId": "node:Geometry:GeometryNodeCurveEndpointSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00109-node-Geometry-GeometryNodeCurveEndpointSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00109.py -- tests/files/web/generated/M18-GAP-00109-node-Geometry-GeometryNodeCurveEndpointSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00109", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00110", + "gapId": "node:Geometry:GeometryNodeCurveHandleTypeSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00110-node-Geometry-GeometryNodeCurveHandleTypeSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00110.py -- tests/files/web/generated/M18-GAP-00110-node-Geometry-GeometryNodeCurveHandleTypeSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00110", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00111", + "gapId": "node:Geometry:GeometryNodeCurveLength", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00111-node-Geometry-GeometryNodeCurveLength.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00111.py -- tests/files/web/generated/M18-GAP-00111-node-Geometry-GeometryNodeCurveLength.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00111", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00112", + "gapId": "node:Geometry:GeometryNodeCurveOfPoint", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00112-node-Geometry-GeometryNodeCurveOfPoint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00112.py -- tests/files/web/generated/M18-GAP-00112-node-Geometry-GeometryNodeCurveOfPoint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00112", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00113", + "gapId": "node:Geometry:GeometryNodeCurvePrimitiveBezierSegment", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00113-node-Geometry-GeometryNodeCurvePrimitiveBezierSegment.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00113.py -- tests/files/web/generated/M18-GAP-00113-node-Geometry-GeometryNodeCurvePrimitiveBezierSegment.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00113", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00114", + "gapId": "node:Geometry:GeometryNodeCurvePrimitiveCircle", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00114-node-Geometry-GeometryNodeCurvePrimitiveCircle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00114.py -- tests/files/web/generated/M18-GAP-00114-node-Geometry-GeometryNodeCurvePrimitiveCircle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00114", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00115", + "gapId": "node:Geometry:GeometryNodeCurvePrimitiveLine", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00115-node-Geometry-GeometryNodeCurvePrimitiveLine.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00115.py -- tests/files/web/generated/M18-GAP-00115-node-Geometry-GeometryNodeCurvePrimitiveLine.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00115", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00116", + "gapId": "node:Geometry:GeometryNodeCurvePrimitiveQuadrilateral", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00116-node-Geometry-GeometryNodeCurvePrimitiveQuadrilateral.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00116.py -- tests/files/web/generated/M18-GAP-00116-node-Geometry-GeometryNodeCurvePrimitiveQuadrilateral.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00116", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00117", + "gapId": "node:Geometry:GeometryNodeCurveQuadraticBezier", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00117-node-Geometry-GeometryNodeCurveQuadraticBezier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00117.py -- tests/files/web/generated/M18-GAP-00117-node-Geometry-GeometryNodeCurveQuadraticBezier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00117", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00118", + "gapId": "node:Geometry:GeometryNodeCurveSetHandles", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00118-node-Geometry-GeometryNodeCurveSetHandles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00118.py -- tests/files/web/generated/M18-GAP-00118-node-Geometry-GeometryNodeCurveSetHandles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00118", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00119", + "gapId": "node:Geometry:GeometryNodeCurveSpiral", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00119-node-Geometry-GeometryNodeCurveSpiral.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00119.py -- tests/files/web/generated/M18-GAP-00119-node-Geometry-GeometryNodeCurveSpiral.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00119", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00120", + "gapId": "node:Geometry:GeometryNodeCurveSplineType", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00120-node-Geometry-GeometryNodeCurveSplineType.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00120.py -- tests/files/web/generated/M18-GAP-00120-node-Geometry-GeometryNodeCurveSplineType.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00120", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00121", + "gapId": "node:Geometry:GeometryNodeCurveStar", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00121-node-Geometry-GeometryNodeCurveStar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00121.py -- tests/files/web/generated/M18-GAP-00121-node-Geometry-GeometryNodeCurveStar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00121", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00122", + "gapId": "node:Geometry:GeometryNodeCurveToMesh", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00122-node-Geometry-GeometryNodeCurveToMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00122.py -- tests/files/web/generated/M18-GAP-00122-node-Geometry-GeometryNodeCurveToMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00122", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00123", + "gapId": "node:Geometry:GeometryNodeCurveToPoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00123-node-Geometry-GeometryNodeCurveToPoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00123.py -- tests/files/web/generated/M18-GAP-00123-node-Geometry-GeometryNodeCurveToPoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00123", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00124", + "gapId": "node:Geometry:GeometryNodeCurvesToGreasePencil", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00124-node-Geometry-GeometryNodeCurvesToGreasePencil.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00124.py -- tests/files/web/generated/M18-GAP-00124-node-Geometry-GeometryNodeCurvesToGreasePencil.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00124", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00125", + "gapId": "node:Geometry:GeometryNodeDeformCurvesOnSurface", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00125-node-Geometry-GeometryNodeDeformCurvesOnSurface.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00125.py -- tests/files/web/generated/M18-GAP-00125-node-Geometry-GeometryNodeDeformCurvesOnSurface.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00125", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00126", + "gapId": "node:Geometry:GeometryNodeDeleteGeometry", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00126-node-Geometry-GeometryNodeDeleteGeometry.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00126.py -- tests/files/web/generated/M18-GAP-00126-node-Geometry-GeometryNodeDeleteGeometry.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00126", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00127", + "gapId": "node:Geometry:GeometryNodeDistributePointsInGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00127-node-Geometry-GeometryNodeDistributePointsInGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00127.py -- tests/files/web/generated/M18-GAP-00127-node-Geometry-GeometryNodeDistributePointsInGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00127", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00128", + "gapId": "node:Geometry:GeometryNodeDistributePointsInVolume", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00128-node-Geometry-GeometryNodeDistributePointsInVolume.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00128.py -- tests/files/web/generated/M18-GAP-00128-node-Geometry-GeometryNodeDistributePointsInVolume.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00128", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00129", + "gapId": "node:Geometry:GeometryNodeDistributePointsOnFaces", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00129-node-Geometry-GeometryNodeDistributePointsOnFaces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00129.py -- tests/files/web/generated/M18-GAP-00129-node-Geometry-GeometryNodeDistributePointsOnFaces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00129", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00130", + "gapId": "node:Geometry:GeometryNodeDualMesh", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00130-node-Geometry-GeometryNodeDualMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00130.py -- tests/files/web/generated/M18-GAP-00130-node-Geometry-GeometryNodeDualMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00130", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00131", + "gapId": "node:Geometry:GeometryNodeDuplicateElements", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00131-node-Geometry-GeometryNodeDuplicateElements.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00131.py -- tests/files/web/generated/M18-GAP-00131-node-Geometry-GeometryNodeDuplicateElements.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00131", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00132", + "gapId": "node:Geometry:GeometryNodeEdgePathsToCurves", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00132-node-Geometry-GeometryNodeEdgePathsToCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00132.py -- tests/files/web/generated/M18-GAP-00132-node-Geometry-GeometryNodeEdgePathsToCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00132", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00133", + "gapId": "node:Geometry:GeometryNodeEdgePathsToSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00133-node-Geometry-GeometryNodeEdgePathsToSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00133.py -- tests/files/web/generated/M18-GAP-00133-node-Geometry-GeometryNodeEdgePathsToSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00133", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00134", + "gapId": "node:Geometry:GeometryNodeEdgesOfCorner", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00134-node-Geometry-GeometryNodeEdgesOfCorner.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00134.py -- tests/files/web/generated/M18-GAP-00134-node-Geometry-GeometryNodeEdgesOfCorner.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00134", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00135", + "gapId": "node:Geometry:GeometryNodeEdgesOfVertex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00135-node-Geometry-GeometryNodeEdgesOfVertex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00135.py -- tests/files/web/generated/M18-GAP-00135-node-Geometry-GeometryNodeEdgesOfVertex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00135", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00136", + "gapId": "node:Geometry:GeometryNodeEdgesToFaceGroups", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00136-node-Geometry-GeometryNodeEdgesToFaceGroups.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00136.py -- tests/files/web/generated/M18-GAP-00136-node-Geometry-GeometryNodeEdgesToFaceGroups.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00136", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00137", + "gapId": "node:Geometry:GeometryNodeExtrudeMesh", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00137-node-Geometry-GeometryNodeExtrudeMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00137.py -- tests/files/web/generated/M18-GAP-00137-node-Geometry-GeometryNodeExtrudeMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00137", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00138", + "gapId": "node:Geometry:GeometryNodeFaceOfCorner", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00138-node-Geometry-GeometryNodeFaceOfCorner.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00138.py -- tests/files/web/generated/M18-GAP-00138-node-Geometry-GeometryNodeFaceOfCorner.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00138", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00139", + "gapId": "node:Geometry:GeometryNodeFieldAtIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00139-node-Geometry-GeometryNodeFieldAtIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00139.py -- tests/files/web/generated/M18-GAP-00139-node-Geometry-GeometryNodeFieldAtIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00139", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00140", + "gapId": "node:Geometry:GeometryNodeFieldAverage", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00140-node-Geometry-GeometryNodeFieldAverage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00140.py -- tests/files/web/generated/M18-GAP-00140-node-Geometry-GeometryNodeFieldAverage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00140", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00141", + "gapId": "node:Geometry:GeometryNodeFieldMinAndMax", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00141-node-Geometry-GeometryNodeFieldMinAndMax.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00141.py -- tests/files/web/generated/M18-GAP-00141-node-Geometry-GeometryNodeFieldMinAndMax.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00141", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00142", + "gapId": "node:Geometry:GeometryNodeFieldOnDomain", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00142-node-Geometry-GeometryNodeFieldOnDomain.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00142.py -- tests/files/web/generated/M18-GAP-00142-node-Geometry-GeometryNodeFieldOnDomain.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00142", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00143", + "gapId": "node:Geometry:GeometryNodeFieldToGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00143-node-Geometry-GeometryNodeFieldToGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00143.py -- tests/files/web/generated/M18-GAP-00143-node-Geometry-GeometryNodeFieldToGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00143", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00144", + "gapId": "node:Geometry:GeometryNodeFieldToList", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00144-node-Geometry-GeometryNodeFieldToList.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00144.py -- tests/files/web/generated/M18-GAP-00144-node-Geometry-GeometryNodeFieldToList.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00144", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00145", + "gapId": "node:Geometry:GeometryNodeFieldVariance", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00145-node-Geometry-GeometryNodeFieldVariance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00145.py -- tests/files/web/generated/M18-GAP-00145-node-Geometry-GeometryNodeFieldVariance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00145", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00146", + "gapId": "node:Geometry:GeometryNodeFillCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00146-node-Geometry-GeometryNodeFillCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00146.py -- tests/files/web/generated/M18-GAP-00146-node-Geometry-GeometryNodeFillCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00146", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00147", + "gapId": "node:Geometry:GeometryNodeFilletCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00147-node-Geometry-GeometryNodeFilletCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00147.py -- tests/files/web/generated/M18-GAP-00147-node-Geometry-GeometryNodeFilletCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00147", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00148", + "gapId": "node:Geometry:GeometryNodeFilterList", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00148-node-Geometry-GeometryNodeFilterList.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00148.py -- tests/files/web/generated/M18-GAP-00148-node-Geometry-GeometryNodeFilterList.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00148", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00149", + "gapId": "node:Geometry:GeometryNodeFlipFaces", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00149-node-Geometry-GeometryNodeFlipFaces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00149.py -- tests/files/web/generated/M18-GAP-00149-node-Geometry-GeometryNodeFlipFaces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00149", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00150", + "gapId": "node:Geometry:GeometryNodeForeachGeometryElementInput", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00150-node-Geometry-GeometryNodeForeachGeometryElementInput.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00150.py -- tests/files/web/generated/M18-GAP-00150-node-Geometry-GeometryNodeForeachGeometryElementInput.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00150", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00151", + "gapId": "node:Geometry:GeometryNodeForeachGeometryElementOutput", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00151-node-Geometry-GeometryNodeForeachGeometryElementOutput.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00151.py -- tests/files/web/generated/M18-GAP-00151-node-Geometry-GeometryNodeForeachGeometryElementOutput.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00151", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00152", + "gapId": "node:Geometry:GeometryNodeGeometryToInstance", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00152-node-Geometry-GeometryNodeGeometryToInstance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00152.py -- tests/files/web/generated/M18-GAP-00152-node-Geometry-GeometryNodeGeometryToInstance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00152", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00153", + "gapId": "node:Geometry:GeometryNodeGetAttributeNames", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00153-node-Geometry-GeometryNodeGetAttributeNames.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00153.py -- tests/files/web/generated/M18-GAP-00153-node-Geometry-GeometryNodeGetAttributeNames.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00153", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00154", + "gapId": "node:Geometry:GeometryNodeGetGeometryBundle", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00154-node-Geometry-GeometryNodeGetGeometryBundle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00154.py -- tests/files/web/generated/M18-GAP-00154-node-Geometry-GeometryNodeGetGeometryBundle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00154", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00155", + "gapId": "node:Geometry:GeometryNodeGetGeometryComponent", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00155-node-Geometry-GeometryNodeGetGeometryComponent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00155.py -- tests/files/web/generated/M18-GAP-00155-node-Geometry-GeometryNodeGetGeometryComponent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00155", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00156", + "gapId": "node:Geometry:GeometryNodeGetNamedGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00156-node-Geometry-GeometryNodeGetNamedGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00156.py -- tests/files/web/generated/M18-GAP-00156-node-Geometry-GeometryNodeGetNamedGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00156", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00157", + "gapId": "node:Geometry:GeometryNodeGizmoDial", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00157-node-Geometry-GeometryNodeGizmoDial.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00157.py -- tests/files/web/generated/M18-GAP-00157-node-Geometry-GeometryNodeGizmoDial.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00157", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00158", + "gapId": "node:Geometry:GeometryNodeGizmoLinear", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00158-node-Geometry-GeometryNodeGizmoLinear.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00158.py -- tests/files/web/generated/M18-GAP-00158-node-Geometry-GeometryNodeGizmoLinear.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00158", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00159", + "gapId": "node:Geometry:GeometryNodeGizmoTransform", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00159-node-Geometry-GeometryNodeGizmoTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00159.py -- tests/files/web/generated/M18-GAP-00159-node-Geometry-GeometryNodeGizmoTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00159", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00160", + "gapId": "node:Geometry:GeometryNodeGreasePencilToCurves", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00160-node-Geometry-GeometryNodeGreasePencilToCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00160.py -- tests/files/web/generated/M18-GAP-00160-node-Geometry-GeometryNodeGreasePencilToCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00160", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00161", + "gapId": "node:Geometry:GeometryNodeGridAdvect", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00161-node-Geometry-GeometryNodeGridAdvect.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00161.py -- tests/files/web/generated/M18-GAP-00161-node-Geometry-GeometryNodeGridAdvect.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00161", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00162", + "gapId": "node:Geometry:GeometryNodeGridClip", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00162-node-Geometry-GeometryNodeGridClip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00162.py -- tests/files/web/generated/M18-GAP-00162-node-Geometry-GeometryNodeGridClip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00162", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00163", + "gapId": "node:Geometry:GeometryNodeGridCurl", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00163-node-Geometry-GeometryNodeGridCurl.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00163.py -- tests/files/web/generated/M18-GAP-00163-node-Geometry-GeometryNodeGridCurl.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00163", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00164", + "gapId": "node:Geometry:GeometryNodeGridDilateAndErode", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00164-node-Geometry-GeometryNodeGridDilateAndErode.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00164.py -- tests/files/web/generated/M18-GAP-00164-node-Geometry-GeometryNodeGridDilateAndErode.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00164", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00165", + "gapId": "node:Geometry:GeometryNodeGridDivergence", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00165-node-Geometry-GeometryNodeGridDivergence.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00165.py -- tests/files/web/generated/M18-GAP-00165-node-Geometry-GeometryNodeGridDivergence.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00165", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00166", + "gapId": "node:Geometry:GeometryNodeGridGradient", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00166-node-Geometry-GeometryNodeGridGradient.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00166.py -- tests/files/web/generated/M18-GAP-00166-node-Geometry-GeometryNodeGridGradient.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00166", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00167", + "gapId": "node:Geometry:GeometryNodeGridInfo", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00167-node-Geometry-GeometryNodeGridInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00167.py -- tests/files/web/generated/M18-GAP-00167-node-Geometry-GeometryNodeGridInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00167", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00168", + "gapId": "node:Geometry:GeometryNodeGridLaplacian", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00168-node-Geometry-GeometryNodeGridLaplacian.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00168.py -- tests/files/web/generated/M18-GAP-00168-node-Geometry-GeometryNodeGridLaplacian.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00168", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00169", + "gapId": "node:Geometry:GeometryNodeGridMean", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00169-node-Geometry-GeometryNodeGridMean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00169.py -- tests/files/web/generated/M18-GAP-00169-node-Geometry-GeometryNodeGridMean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00169", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00170", + "gapId": "node:Geometry:GeometryNodeGridMedian", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00170-node-Geometry-GeometryNodeGridMedian.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00170.py -- tests/files/web/generated/M18-GAP-00170-node-Geometry-GeometryNodeGridMedian.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00170", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00171", + "gapId": "node:Geometry:GeometryNodeGridPrune", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00171-node-Geometry-GeometryNodeGridPrune.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00171.py -- tests/files/web/generated/M18-GAP-00171-node-Geometry-GeometryNodeGridPrune.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00171", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00172", + "gapId": "node:Geometry:GeometryNodeGridToMesh", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00172-node-Geometry-GeometryNodeGridToMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00172.py -- tests/files/web/generated/M18-GAP-00172-node-Geometry-GeometryNodeGridToMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00172", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00173", + "gapId": "node:Geometry:GeometryNodeGridToPoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00173-node-Geometry-GeometryNodeGridToPoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00173.py -- tests/files/web/generated/M18-GAP-00173-node-Geometry-GeometryNodeGridToPoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00173", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00174", + "gapId": "node:Geometry:GeometryNodeGridVoxelize", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00174-node-Geometry-GeometryNodeGridVoxelize.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00174.py -- tests/files/web/generated/M18-GAP-00174-node-Geometry-GeometryNodeGridVoxelize.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00174", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00175", + "gapId": "node:Geometry:GeometryNodeGroup", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00175-node-Geometry-GeometryNodeGroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00175.py -- tests/files/web/generated/M18-GAP-00175-node-Geometry-GeometryNodeGroup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00175", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00176", + "gapId": "node:Geometry:GeometryNodeImageInfo", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00176-node-Geometry-GeometryNodeImageInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00176.py -- tests/files/web/generated/M18-GAP-00176-node-Geometry-GeometryNodeImageInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00176", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00177", + "gapId": "node:Geometry:GeometryNodeImageTexture", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00177-node-Geometry-GeometryNodeImageTexture.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00177.py -- tests/files/web/generated/M18-GAP-00177-node-Geometry-GeometryNodeImageTexture.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00177", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00178", + "gapId": "node:Geometry:GeometryNodeImportCSV", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00178-node-Geometry-GeometryNodeImportCSV.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00178.py -- tests/files/web/generated/M18-GAP-00178-node-Geometry-GeometryNodeImportCSV.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00178", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00179", + "gapId": "node:Geometry:GeometryNodeImportOBJ", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00179-node-Geometry-GeometryNodeImportOBJ.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00179.py -- tests/files/web/generated/M18-GAP-00179-node-Geometry-GeometryNodeImportOBJ.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00179", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00180", + "gapId": "node:Geometry:GeometryNodeImportPLY", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00180-node-Geometry-GeometryNodeImportPLY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00180.py -- tests/files/web/generated/M18-GAP-00180-node-Geometry-GeometryNodeImportPLY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00180", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00181", + "gapId": "node:Geometry:GeometryNodeImportSTL", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00181-node-Geometry-GeometryNodeImportSTL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00181.py -- tests/files/web/generated/M18-GAP-00181-node-Geometry-GeometryNodeImportSTL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00181", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00182", + "gapId": "node:Geometry:GeometryNodeImportText", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00182-node-Geometry-GeometryNodeImportText.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00182.py -- tests/files/web/generated/M18-GAP-00182-node-Geometry-GeometryNodeImportText.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00182", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00183", + "gapId": "node:Geometry:GeometryNodeImportVDB", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00183-node-Geometry-GeometryNodeImportVDB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00183.py -- tests/files/web/generated/M18-GAP-00183-node-Geometry-GeometryNodeImportVDB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00183", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00184", + "gapId": "node:Geometry:GeometryNodeIndexOfNearest", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00184-node-Geometry-GeometryNodeIndexOfNearest.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00184.py -- tests/files/web/generated/M18-GAP-00184-node-Geometry-GeometryNodeIndexOfNearest.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00184", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00185", + "gapId": "node:Geometry:GeometryNodeIndexSwitch", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00185-node-Geometry-GeometryNodeIndexSwitch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00185.py -- tests/files/web/generated/M18-GAP-00185-node-Geometry-GeometryNodeIndexSwitch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00185", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00186", + "gapId": "node:Geometry:GeometryNodeInputActiveCamera", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00186-node-Geometry-GeometryNodeInputActiveCamera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00186.py -- tests/files/web/generated/M18-GAP-00186-node-Geometry-GeometryNodeInputActiveCamera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00186", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00187", + "gapId": "node:Geometry:GeometryNodeInputCollection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00187-node-Geometry-GeometryNodeInputCollection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00187.py -- tests/files/web/generated/M18-GAP-00187-node-Geometry-GeometryNodeInputCollection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00187", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00188", + "gapId": "node:Geometry:GeometryNodeInputCurveHandlePositions", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00188-node-Geometry-GeometryNodeInputCurveHandlePositions.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00188.py -- tests/files/web/generated/M18-GAP-00188-node-Geometry-GeometryNodeInputCurveHandlePositions.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00188", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00189", + "gapId": "node:Geometry:GeometryNodeInputCurveTilt", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00189-node-Geometry-GeometryNodeInputCurveTilt.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00189.py -- tests/files/web/generated/M18-GAP-00189-node-Geometry-GeometryNodeInputCurveTilt.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00189", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00190", + "gapId": "node:Geometry:GeometryNodeInputEdgeSmooth", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00190-node-Geometry-GeometryNodeInputEdgeSmooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00190.py -- tests/files/web/generated/M18-GAP-00190-node-Geometry-GeometryNodeInputEdgeSmooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00190", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00191", + "gapId": "node:Geometry:GeometryNodeInputFont", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00191-node-Geometry-GeometryNodeInputFont.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00191.py -- tests/files/web/generated/M18-GAP-00191-node-Geometry-GeometryNodeInputFont.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00191", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00192", + "gapId": "node:Geometry:GeometryNodeInputID", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00192-node-Geometry-GeometryNodeInputID.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00192.py -- tests/files/web/generated/M18-GAP-00192-node-Geometry-GeometryNodeInputID.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00192", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00193", + "gapId": "node:Geometry:GeometryNodeInputImage", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00193-node-Geometry-GeometryNodeInputImage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00193.py -- tests/files/web/generated/M18-GAP-00193-node-Geometry-GeometryNodeInputImage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00193", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00194", + "gapId": "node:Geometry:GeometryNodeInputIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00194-node-Geometry-GeometryNodeInputIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00194.py -- tests/files/web/generated/M18-GAP-00194-node-Geometry-GeometryNodeInputIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00194", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00195", + "gapId": "node:Geometry:GeometryNodeInputInstanceBounds", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00195-node-Geometry-GeometryNodeInputInstanceBounds.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00195.py -- tests/files/web/generated/M18-GAP-00195-node-Geometry-GeometryNodeInputInstanceBounds.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00195", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00196", + "gapId": "node:Geometry:GeometryNodeInputInstanceReference", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00196-node-Geometry-GeometryNodeInputInstanceReference.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00196.py -- tests/files/web/generated/M18-GAP-00196-node-Geometry-GeometryNodeInputInstanceReference.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00196", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00197", + "gapId": "node:Geometry:GeometryNodeInputInstanceRotation", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00197-node-Geometry-GeometryNodeInputInstanceRotation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00197.py -- tests/files/web/generated/M18-GAP-00197-node-Geometry-GeometryNodeInputInstanceRotation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00197", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00198", + "gapId": "node:Geometry:GeometryNodeInputInstanceScale", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00198-node-Geometry-GeometryNodeInputInstanceScale.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00198.py -- tests/files/web/generated/M18-GAP-00198-node-Geometry-GeometryNodeInputInstanceScale.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00198", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00199", + "gapId": "node:Geometry:GeometryNodeInputMaterial", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00199-node-Geometry-GeometryNodeInputMaterial.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00199.py -- tests/files/web/generated/M18-GAP-00199-node-Geometry-GeometryNodeInputMaterial.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00199", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00200", + "gapId": "node:Geometry:GeometryNodeInputMaterialIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00200-node-Geometry-GeometryNodeInputMaterialIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00200.py -- tests/files/web/generated/M18-GAP-00200-node-Geometry-GeometryNodeInputMaterialIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00200", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00201", + "gapId": "node:Geometry:GeometryNodeInputMeshEdgeAngle", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00201-node-Geometry-GeometryNodeInputMeshEdgeAngle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00201.py -- tests/files/web/generated/M18-GAP-00201-node-Geometry-GeometryNodeInputMeshEdgeAngle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00201", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00202", + "gapId": "node:Geometry:GeometryNodeInputMeshEdgeNeighbors", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00202-node-Geometry-GeometryNodeInputMeshEdgeNeighbors.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00202.py -- tests/files/web/generated/M18-GAP-00202-node-Geometry-GeometryNodeInputMeshEdgeNeighbors.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00202", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00203", + "gapId": "node:Geometry:GeometryNodeInputMeshEdgeVertices", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00203-node-Geometry-GeometryNodeInputMeshEdgeVertices.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00203.py -- tests/files/web/generated/M18-GAP-00203-node-Geometry-GeometryNodeInputMeshEdgeVertices.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00203", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00204", + "gapId": "node:Geometry:GeometryNodeInputMeshFaceArea", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00204-node-Geometry-GeometryNodeInputMeshFaceArea.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00204.py -- tests/files/web/generated/M18-GAP-00204-node-Geometry-GeometryNodeInputMeshFaceArea.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00204", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00205", + "gapId": "node:Geometry:GeometryNodeInputMeshFaceIsPlanar", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00205-node-Geometry-GeometryNodeInputMeshFaceIsPlanar.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00205.py -- tests/files/web/generated/M18-GAP-00205-node-Geometry-GeometryNodeInputMeshFaceIsPlanar.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00205", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00206", + "gapId": "node:Geometry:GeometryNodeInputMeshFaceNeighbors", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00206-node-Geometry-GeometryNodeInputMeshFaceNeighbors.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00206.py -- tests/files/web/generated/M18-GAP-00206-node-Geometry-GeometryNodeInputMeshFaceNeighbors.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00206", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00207", + "gapId": "node:Geometry:GeometryNodeInputMeshIsland", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00207-node-Geometry-GeometryNodeInputMeshIsland.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00207.py -- tests/files/web/generated/M18-GAP-00207-node-Geometry-GeometryNodeInputMeshIsland.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00207", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00208", + "gapId": "node:Geometry:GeometryNodeInputMeshVertexNeighbors", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00208-node-Geometry-GeometryNodeInputMeshVertexNeighbors.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00208.py -- tests/files/web/generated/M18-GAP-00208-node-Geometry-GeometryNodeInputMeshVertexNeighbors.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00208", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00209", + "gapId": "node:Geometry:GeometryNodeInputNamedAttribute", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00209-node-Geometry-GeometryNodeInputNamedAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00209.py -- tests/files/web/generated/M18-GAP-00209-node-Geometry-GeometryNodeInputNamedAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00209", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00210", + "gapId": "node:Geometry:GeometryNodeInputNamedLayerSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00210-node-Geometry-GeometryNodeInputNamedLayerSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00210.py -- tests/files/web/generated/M18-GAP-00210-node-Geometry-GeometryNodeInputNamedLayerSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00210", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00211", + "gapId": "node:Geometry:GeometryNodeInputNormal", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00211-node-Geometry-GeometryNodeInputNormal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00211.py -- tests/files/web/generated/M18-GAP-00211-node-Geometry-GeometryNodeInputNormal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00211", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00212", + "gapId": "node:Geometry:GeometryNodeInputObject", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00212-node-Geometry-GeometryNodeInputObject.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00212.py -- tests/files/web/generated/M18-GAP-00212-node-Geometry-GeometryNodeInputObject.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00212", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00213", + "gapId": "node:Geometry:GeometryNodeInputPosition", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00213-node-Geometry-GeometryNodeInputPosition.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00213.py -- tests/files/web/generated/M18-GAP-00213-node-Geometry-GeometryNodeInputPosition.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00213", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00214", + "gapId": "node:Geometry:GeometryNodeInputRadius", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00214-node-Geometry-GeometryNodeInputRadius.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00214.py -- tests/files/web/generated/M18-GAP-00214-node-Geometry-GeometryNodeInputRadius.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00214", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00215", + "gapId": "node:Geometry:GeometryNodeInputSceneTime", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00215-node-Geometry-GeometryNodeInputSceneTime.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00215.py -- tests/files/web/generated/M18-GAP-00215-node-Geometry-GeometryNodeInputSceneTime.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00215", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00216", + "gapId": "node:Geometry:GeometryNodeInputShadeSmooth", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00216-node-Geometry-GeometryNodeInputShadeSmooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00216.py -- tests/files/web/generated/M18-GAP-00216-node-Geometry-GeometryNodeInputShadeSmooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00216", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00217", + "gapId": "node:Geometry:GeometryNodeInputShortestEdgePaths", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00217-node-Geometry-GeometryNodeInputShortestEdgePaths.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00217.py -- tests/files/web/generated/M18-GAP-00217-node-Geometry-GeometryNodeInputShortestEdgePaths.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00217", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00218", + "gapId": "node:Geometry:GeometryNodeInputSplineCyclic", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00218-node-Geometry-GeometryNodeInputSplineCyclic.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00218.py -- tests/files/web/generated/M18-GAP-00218-node-Geometry-GeometryNodeInputSplineCyclic.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00218", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00219", + "gapId": "node:Geometry:GeometryNodeInputSplineResolution", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00219-node-Geometry-GeometryNodeInputSplineResolution.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00219.py -- tests/files/web/generated/M18-GAP-00219-node-Geometry-GeometryNodeInputSplineResolution.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00219", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00220", + "gapId": "node:Geometry:GeometryNodeInputTangent", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00220-node-Geometry-GeometryNodeInputTangent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00220.py -- tests/files/web/generated/M18-GAP-00220-node-Geometry-GeometryNodeInputTangent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00220", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00221", + "gapId": "node:Geometry:GeometryNodeInputVoxelIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00221-node-Geometry-GeometryNodeInputVoxelIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00221.py -- tests/files/web/generated/M18-GAP-00221-node-Geometry-GeometryNodeInputVoxelIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00221", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00222", + "gapId": "node:Geometry:GeometryNodeInstanceOnPoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00222-node-Geometry-GeometryNodeInstanceOnPoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00222.py -- tests/files/web/generated/M18-GAP-00222-node-Geometry-GeometryNodeInstanceOnPoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00222", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00223", + "gapId": "node:Geometry:GeometryNodeInstanceTransform", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00223-node-Geometry-GeometryNodeInstanceTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00223.py -- tests/files/web/generated/M18-GAP-00223-node-Geometry-GeometryNodeInstanceTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00223", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00224", + "gapId": "node:Geometry:GeometryNodeInstancesToPoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00224-node-Geometry-GeometryNodeInstancesToPoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00224.py -- tests/files/web/generated/M18-GAP-00224-node-Geometry-GeometryNodeInstancesToPoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00224", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00225", + "gapId": "node:Geometry:GeometryNodeInterpolateCurves", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00225-node-Geometry-GeometryNodeInterpolateCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00225.py -- tests/files/web/generated/M18-GAP-00225-node-Geometry-GeometryNodeInterpolateCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00225", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00226", + "gapId": "node:Geometry:GeometryNodeIsViewport", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00226-node-Geometry-GeometryNodeIsViewport.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00226.py -- tests/files/web/generated/M18-GAP-00226-node-Geometry-GeometryNodeIsViewport.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00226", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00227", + "gapId": "node:Geometry:GeometryNodeJoinGeometry", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00227-node-Geometry-GeometryNodeJoinGeometry.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00227.py -- tests/files/web/generated/M18-GAP-00227-node-Geometry-GeometryNodeJoinGeometry.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00227", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00228", + "gapId": "node:Geometry:GeometryNodeListGetItem", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00228-node-Geometry-GeometryNodeListGetItem.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00228.py -- tests/files/web/generated/M18-GAP-00228-node-Geometry-GeometryNodeListGetItem.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00228", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00229", + "gapId": "node:Geometry:GeometryNodeListLength", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00229-node-Geometry-GeometryNodeListLength.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00229.py -- tests/files/web/generated/M18-GAP-00229-node-Geometry-GeometryNodeListLength.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00229", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00230", + "gapId": "node:Geometry:GeometryNodeMaterialSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00230-node-Geometry-GeometryNodeMaterialSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00230.py -- tests/files/web/generated/M18-GAP-00230-node-Geometry-GeometryNodeMaterialSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00230", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00231", + "gapId": "node:Geometry:GeometryNodeMenuSwitch", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00231-node-Geometry-GeometryNodeMenuSwitch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00231.py -- tests/files/web/generated/M18-GAP-00231-node-Geometry-GeometryNodeMenuSwitch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00231", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00232", + "gapId": "node:Geometry:GeometryNodeMergeByDistance", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00232-node-Geometry-GeometryNodeMergeByDistance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00232.py -- tests/files/web/generated/M18-GAP-00232-node-Geometry-GeometryNodeMergeByDistance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00232", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00233", + "gapId": "node:Geometry:GeometryNodeMergeLayers", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00233-node-Geometry-GeometryNodeMergeLayers.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00233.py -- tests/files/web/generated/M18-GAP-00233-node-Geometry-GeometryNodeMergeLayers.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00233", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00234", + "gapId": "node:Geometry:GeometryNodeMergePoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00234-node-Geometry-GeometryNodeMergePoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00234.py -- tests/files/web/generated/M18-GAP-00234-node-Geometry-GeometryNodeMergePoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00234", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00235", + "gapId": "node:Geometry:GeometryNodeMeshBevel", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00235-node-Geometry-GeometryNodeMeshBevel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00235.py -- tests/files/web/generated/M18-GAP-00235-node-Geometry-GeometryNodeMeshBevel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00235", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00236", + "gapId": "node:Geometry:GeometryNodeMeshBoolean", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00236-node-Geometry-GeometryNodeMeshBoolean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00236.py -- tests/files/web/generated/M18-GAP-00236-node-Geometry-GeometryNodeMeshBoolean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00236", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00237", + "gapId": "node:Geometry:GeometryNodeMeshCircle", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00237-node-Geometry-GeometryNodeMeshCircle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00237.py -- tests/files/web/generated/M18-GAP-00237-node-Geometry-GeometryNodeMeshCircle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00237", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00238", + "gapId": "node:Geometry:GeometryNodeMeshCone", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00238-node-Geometry-GeometryNodeMeshCone.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00238.py -- tests/files/web/generated/M18-GAP-00238-node-Geometry-GeometryNodeMeshCone.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00238", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00239", + "gapId": "node:Geometry:GeometryNodeMeshCube", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00239-node-Geometry-GeometryNodeMeshCube.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00239.py -- tests/files/web/generated/M18-GAP-00239-node-Geometry-GeometryNodeMeshCube.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00239", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00240", + "gapId": "node:Geometry:GeometryNodeMeshCylinder", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00240-node-Geometry-GeometryNodeMeshCylinder.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00240.py -- tests/files/web/generated/M18-GAP-00240-node-Geometry-GeometryNodeMeshCylinder.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00240", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00241", + "gapId": "node:Geometry:GeometryNodeMeshFaceSetBoundaries", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00241-node-Geometry-GeometryNodeMeshFaceSetBoundaries.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00241.py -- tests/files/web/generated/M18-GAP-00241-node-Geometry-GeometryNodeMeshFaceSetBoundaries.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00241", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00242", + "gapId": "node:Geometry:GeometryNodeMeshGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00242-node-Geometry-GeometryNodeMeshGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00242.py -- tests/files/web/generated/M18-GAP-00242-node-Geometry-GeometryNodeMeshGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00242", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00243", + "gapId": "node:Geometry:GeometryNodeMeshIcoSphere", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00243-node-Geometry-GeometryNodeMeshIcoSphere.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00243.py -- tests/files/web/generated/M18-GAP-00243-node-Geometry-GeometryNodeMeshIcoSphere.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00243", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00244", + "gapId": "node:Geometry:GeometryNodeMeshLine", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00244-node-Geometry-GeometryNodeMeshLine.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00244.py -- tests/files/web/generated/M18-GAP-00244-node-Geometry-GeometryNodeMeshLine.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00244", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00245", + "gapId": "node:Geometry:GeometryNodeMeshToCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00245-node-Geometry-GeometryNodeMeshToCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00245.py -- tests/files/web/generated/M18-GAP-00245-node-Geometry-GeometryNodeMeshToCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00245", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00246", + "gapId": "node:Geometry:GeometryNodeMeshToDensityGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00246-node-Geometry-GeometryNodeMeshToDensityGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00246.py -- tests/files/web/generated/M18-GAP-00246-node-Geometry-GeometryNodeMeshToDensityGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00246", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00247", + "gapId": "node:Geometry:GeometryNodeMeshToPoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00247-node-Geometry-GeometryNodeMeshToPoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00247.py -- tests/files/web/generated/M18-GAP-00247-node-Geometry-GeometryNodeMeshToPoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00247", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00248", + "gapId": "node:Geometry:GeometryNodeMeshToSDFGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00248-node-Geometry-GeometryNodeMeshToSDFGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00248.py -- tests/files/web/generated/M18-GAP-00248-node-Geometry-GeometryNodeMeshToSDFGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00248", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00249", + "gapId": "node:Geometry:GeometryNodeMeshToVolume", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00249-node-Geometry-GeometryNodeMeshToVolume.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00249.py -- tests/files/web/generated/M18-GAP-00249-node-Geometry-GeometryNodeMeshToVolume.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00249", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00250", + "gapId": "node:Geometry:GeometryNodeMeshUVSphere", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00250-node-Geometry-GeometryNodeMeshUVSphere.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00250.py -- tests/files/web/generated/M18-GAP-00250-node-Geometry-GeometryNodeMeshUVSphere.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00250", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00251", + "gapId": "node:Geometry:GeometryNodeObjectInfo", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00251-node-Geometry-GeometryNodeObjectInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00251.py -- tests/files/web/generated/M18-GAP-00251-node-Geometry-GeometryNodeObjectInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00251", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00252", + "gapId": "node:Geometry:GeometryNodeOffsetCornerInFace", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00252-node-Geometry-GeometryNodeOffsetCornerInFace.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00252.py -- tests/files/web/generated/M18-GAP-00252-node-Geometry-GeometryNodeOffsetCornerInFace.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00252", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00253", + "gapId": "node:Geometry:GeometryNodeOffsetPointInCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00253-node-Geometry-GeometryNodeOffsetPointInCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00253.py -- tests/files/web/generated/M18-GAP-00253-node-Geometry-GeometryNodeOffsetPointInCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00253", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00254", + "gapId": "node:Geometry:GeometryNodePoints", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00254-node-Geometry-GeometryNodePoints.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00254.py -- tests/files/web/generated/M18-GAP-00254-node-Geometry-GeometryNodePoints.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00254", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00255", + "gapId": "node:Geometry:GeometryNodePointsOfCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00255-node-Geometry-GeometryNodePointsOfCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00255.py -- tests/files/web/generated/M18-GAP-00255-node-Geometry-GeometryNodePointsOfCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00255", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00256", + "gapId": "node:Geometry:GeometryNodePointsToCurves", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00256-node-Geometry-GeometryNodePointsToCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00256.py -- tests/files/web/generated/M18-GAP-00256-node-Geometry-GeometryNodePointsToCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00256", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00257", + "gapId": "node:Geometry:GeometryNodePointsToSDFGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00257-node-Geometry-GeometryNodePointsToSDFGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00257.py -- tests/files/web/generated/M18-GAP-00257-node-Geometry-GeometryNodePointsToSDFGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00257", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00258", + "gapId": "node:Geometry:GeometryNodePointsToVertices", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00258-node-Geometry-GeometryNodePointsToVertices.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00258.py -- tests/files/web/generated/M18-GAP-00258-node-Geometry-GeometryNodePointsToVertices.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00258", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00259", + "gapId": "node:Geometry:GeometryNodePointsToVolume", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00259-node-Geometry-GeometryNodePointsToVolume.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00259.py -- tests/files/web/generated/M18-GAP-00259-node-Geometry-GeometryNodePointsToVolume.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00259", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00260", + "gapId": "node:Geometry:GeometryNodeProximity", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00260-node-Geometry-GeometryNodeProximity.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00260.py -- tests/files/web/generated/M18-GAP-00260-node-Geometry-GeometryNodeProximity.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00260", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00261", + "gapId": "node:Geometry:GeometryNodeRaycast", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00261-node-Geometry-GeometryNodeRaycast.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00261.py -- tests/files/web/generated/M18-GAP-00261-node-Geometry-GeometryNodeRaycast.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00261", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00262", + "gapId": "node:Geometry:GeometryNodeRealizeInstances", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00262-node-Geometry-GeometryNodeRealizeInstances.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00262.py -- tests/files/web/generated/M18-GAP-00262-node-Geometry-GeometryNodeRealizeInstances.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00262", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00263", + "gapId": "node:Geometry:GeometryNodeRemoveAttribute", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00263-node-Geometry-GeometryNodeRemoveAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00263.py -- tests/files/web/generated/M18-GAP-00263-node-Geometry-GeometryNodeRemoveAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00263", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00264", + "gapId": "node:Geometry:GeometryNodeRenameAttribute", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00264-node-Geometry-GeometryNodeRenameAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00264.py -- tests/files/web/generated/M18-GAP-00264-node-Geometry-GeometryNodeRenameAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00264", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00265", + "gapId": "node:Geometry:GeometryNodeRepeatInput", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00265-node-Geometry-GeometryNodeRepeatInput.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00265.py -- tests/files/web/generated/M18-GAP-00265-node-Geometry-GeometryNodeRepeatInput.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00265", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00266", + "gapId": "node:Geometry:GeometryNodeRepeatOutput", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00266-node-Geometry-GeometryNodeRepeatOutput.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00266.py -- tests/files/web/generated/M18-GAP-00266-node-Geometry-GeometryNodeRepeatOutput.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00266", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00267", + "gapId": "node:Geometry:GeometryNodeReplaceMaterial", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00267-node-Geometry-GeometryNodeReplaceMaterial.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00267.py -- tests/files/web/generated/M18-GAP-00267-node-Geometry-GeometryNodeReplaceMaterial.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00267", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00268", + "gapId": "node:Geometry:GeometryNodeResampleCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00268-node-Geometry-GeometryNodeResampleCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00268.py -- tests/files/web/generated/M18-GAP-00268-node-Geometry-GeometryNodeResampleCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00268", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00269", + "gapId": "node:Geometry:GeometryNodeReverseCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00269-node-Geometry-GeometryNodeReverseCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00269.py -- tests/files/web/generated/M18-GAP-00269-node-Geometry-GeometryNodeReverseCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00269", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00270", + "gapId": "node:Geometry:GeometryNodeRotateInstances", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00270-node-Geometry-GeometryNodeRotateInstances.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00270.py -- tests/files/web/generated/M18-GAP-00270-node-Geometry-GeometryNodeRotateInstances.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00270", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00271", + "gapId": "node:Geometry:GeometryNodeSDFGridBoolean", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00271-node-Geometry-GeometryNodeSDFGridBoolean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00271.py -- tests/files/web/generated/M18-GAP-00271-node-Geometry-GeometryNodeSDFGridBoolean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00271", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00272", + "gapId": "node:Geometry:GeometryNodeSDFGridFillet", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00272-node-Geometry-GeometryNodeSDFGridFillet.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00272.py -- tests/files/web/generated/M18-GAP-00272-node-Geometry-GeometryNodeSDFGridFillet.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00272", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00273", + "gapId": "node:Geometry:GeometryNodeSDFGridLaplacian", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00273-node-Geometry-GeometryNodeSDFGridLaplacian.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00273.py -- tests/files/web/generated/M18-GAP-00273-node-Geometry-GeometryNodeSDFGridLaplacian.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00273", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00274", + "gapId": "node:Geometry:GeometryNodeSDFGridMean", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00274-node-Geometry-GeometryNodeSDFGridMean.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00274.py -- tests/files/web/generated/M18-GAP-00274-node-Geometry-GeometryNodeSDFGridMean.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00274", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00275", + "gapId": "node:Geometry:GeometryNodeSDFGridMeanCurvature", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00275-node-Geometry-GeometryNodeSDFGridMeanCurvature.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00275.py -- tests/files/web/generated/M18-GAP-00275-node-Geometry-GeometryNodeSDFGridMeanCurvature.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00275", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00276", + "gapId": "node:Geometry:GeometryNodeSDFGridMedian", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00276-node-Geometry-GeometryNodeSDFGridMedian.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00276.py -- tests/files/web/generated/M18-GAP-00276-node-Geometry-GeometryNodeSDFGridMedian.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00276", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00277", + "gapId": "node:Geometry:GeometryNodeSDFGridOffset", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00277-node-Geometry-GeometryNodeSDFGridOffset.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00277.py -- tests/files/web/generated/M18-GAP-00277-node-Geometry-GeometryNodeSDFGridOffset.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00277", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00278", + "gapId": "node:Geometry:GeometryNodeSampleCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00278-node-Geometry-GeometryNodeSampleCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00278.py -- tests/files/web/generated/M18-GAP-00278-node-Geometry-GeometryNodeSampleCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00278", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00279", + "gapId": "node:Geometry:GeometryNodeSampleGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00279-node-Geometry-GeometryNodeSampleGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00279.py -- tests/files/web/generated/M18-GAP-00279-node-Geometry-GeometryNodeSampleGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00279", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00280", + "gapId": "node:Geometry:GeometryNodeSampleGridIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00280-node-Geometry-GeometryNodeSampleGridIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00280.py -- tests/files/web/generated/M18-GAP-00280-node-Geometry-GeometryNodeSampleGridIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00280", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00281", + "gapId": "node:Geometry:GeometryNodeSampleIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00281-node-Geometry-GeometryNodeSampleIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00281.py -- tests/files/web/generated/M18-GAP-00281-node-Geometry-GeometryNodeSampleIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00281", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00282", + "gapId": "node:Geometry:GeometryNodeSampleNearest", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00282-node-Geometry-GeometryNodeSampleNearest.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00282.py -- tests/files/web/generated/M18-GAP-00282-node-Geometry-GeometryNodeSampleNearest.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00282", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00283", + "gapId": "node:Geometry:GeometryNodeSampleNearestSurface", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00283-node-Geometry-GeometryNodeSampleNearestSurface.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00283.py -- tests/files/web/generated/M18-GAP-00283-node-Geometry-GeometryNodeSampleNearestSurface.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00283", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00284", + "gapId": "node:Geometry:GeometryNodeSampleSoundFrequencies", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00284-node-Geometry-GeometryNodeSampleSoundFrequencies.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00284.py -- tests/files/web/generated/M18-GAP-00284-node-Geometry-GeometryNodeSampleSoundFrequencies.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00284", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00285", + "gapId": "node:Geometry:GeometryNodeSampleUVSurface", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00285-node-Geometry-GeometryNodeSampleUVSurface.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00285.py -- tests/files/web/generated/M18-GAP-00285-node-Geometry-GeometryNodeSampleUVSurface.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00285", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00286", + "gapId": "node:Geometry:GeometryNodeScaleElements", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00286-node-Geometry-GeometryNodeScaleElements.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00286.py -- tests/files/web/generated/M18-GAP-00286-node-Geometry-GeometryNodeScaleElements.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00286", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00287", + "gapId": "node:Geometry:GeometryNodeScaleInstances", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00287-node-Geometry-GeometryNodeScaleInstances.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00287.py -- tests/files/web/generated/M18-GAP-00287-node-Geometry-GeometryNodeScaleInstances.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00287", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00288", + "gapId": "node:Geometry:GeometryNodeSelfObject", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00288-node-Geometry-GeometryNodeSelfObject.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00288.py -- tests/files/web/generated/M18-GAP-00288-node-Geometry-GeometryNodeSelfObject.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00288", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00289", + "gapId": "node:Geometry:GeometryNodeSeparateComponents", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00289-node-Geometry-GeometryNodeSeparateComponents.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00289.py -- tests/files/web/generated/M18-GAP-00289-node-Geometry-GeometryNodeSeparateComponents.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00289", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00290", + "gapId": "node:Geometry:GeometryNodeSeparateGeometry", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00290-node-Geometry-GeometryNodeSeparateGeometry.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00290.py -- tests/files/web/generated/M18-GAP-00290-node-Geometry-GeometryNodeSeparateGeometry.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00290", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00291", + "gapId": "node:Geometry:GeometryNodeSetCurveHandlePositions", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00291-node-Geometry-GeometryNodeSetCurveHandlePositions.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00291.py -- tests/files/web/generated/M18-GAP-00291-node-Geometry-GeometryNodeSetCurveHandlePositions.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00291", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00292", + "gapId": "node:Geometry:GeometryNodeSetCurveNormal", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00292-node-Geometry-GeometryNodeSetCurveNormal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00292.py -- tests/files/web/generated/M18-GAP-00292-node-Geometry-GeometryNodeSetCurveNormal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00292", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00293", + "gapId": "node:Geometry:GeometryNodeSetCurveRadius", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00293-node-Geometry-GeometryNodeSetCurveRadius.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00293.py -- tests/files/web/generated/M18-GAP-00293-node-Geometry-GeometryNodeSetCurveRadius.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00293", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00294", + "gapId": "node:Geometry:GeometryNodeSetCurveTilt", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00294-node-Geometry-GeometryNodeSetCurveTilt.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00294.py -- tests/files/web/generated/M18-GAP-00294-node-Geometry-GeometryNodeSetCurveTilt.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00294", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00295", + "gapId": "node:Geometry:GeometryNodeSetGeometryBundle", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00295-node-Geometry-GeometryNodeSetGeometryBundle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00295.py -- tests/files/web/generated/M18-GAP-00295-node-Geometry-GeometryNodeSetGeometryBundle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00295", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00296", + "gapId": "node:Geometry:GeometryNodeSetGeometryName", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00296-node-Geometry-GeometryNodeSetGeometryName.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00296.py -- tests/files/web/generated/M18-GAP-00296-node-Geometry-GeometryNodeSetGeometryName.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00296", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00297", + "gapId": "node:Geometry:GeometryNodeSetGreasePencilColor", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00297-node-Geometry-GeometryNodeSetGreasePencilColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00297.py -- tests/files/web/generated/M18-GAP-00297-node-Geometry-GeometryNodeSetGreasePencilColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00297", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00298", + "gapId": "node:Geometry:GeometryNodeSetGreasePencilDepth", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00298-node-Geometry-GeometryNodeSetGreasePencilDepth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00298.py -- tests/files/web/generated/M18-GAP-00298-node-Geometry-GeometryNodeSetGreasePencilDepth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00298", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00299", + "gapId": "node:Geometry:GeometryNodeSetGreasePencilSoftness", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00299-node-Geometry-GeometryNodeSetGreasePencilSoftness.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00299.py -- tests/files/web/generated/M18-GAP-00299-node-Geometry-GeometryNodeSetGreasePencilSoftness.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00299", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00300", + "gapId": "node:Geometry:GeometryNodeSetGridBackground", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00300-node-Geometry-GeometryNodeSetGridBackground.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00300.py -- tests/files/web/generated/M18-GAP-00300-node-Geometry-GeometryNodeSetGridBackground.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00300", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00301", + "gapId": "node:Geometry:GeometryNodeSetGridTransform", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00301-node-Geometry-GeometryNodeSetGridTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00301.py -- tests/files/web/generated/M18-GAP-00301-node-Geometry-GeometryNodeSetGridTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00301", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00302", + "gapId": "node:Geometry:GeometryNodeSetID", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00302-node-Geometry-GeometryNodeSetID.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00302.py -- tests/files/web/generated/M18-GAP-00302-node-Geometry-GeometryNodeSetID.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00302", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00303", + "gapId": "node:Geometry:GeometryNodeSetInstanceTransform", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00303-node-Geometry-GeometryNodeSetInstanceTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00303.py -- tests/files/web/generated/M18-GAP-00303-node-Geometry-GeometryNodeSetInstanceTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00303", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00304", + "gapId": "node:Geometry:GeometryNodeSetMaterial", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00304-node-Geometry-GeometryNodeSetMaterial.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00304.py -- tests/files/web/generated/M18-GAP-00304-node-Geometry-GeometryNodeSetMaterial.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00304", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00305", + "gapId": "node:Geometry:GeometryNodeSetMaterialIndex", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00305-node-Geometry-GeometryNodeSetMaterialIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00305.py -- tests/files/web/generated/M18-GAP-00305-node-Geometry-GeometryNodeSetMaterialIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00305", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00306", + "gapId": "node:Geometry:GeometryNodeSetMeshNormal", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00306-node-Geometry-GeometryNodeSetMeshNormal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00306.py -- tests/files/web/generated/M18-GAP-00306-node-Geometry-GeometryNodeSetMeshNormal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00306", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00307", + "gapId": "node:Geometry:GeometryNodeSetNURBSOrder", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00307-node-Geometry-GeometryNodeSetNURBSOrder.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00307.py -- tests/files/web/generated/M18-GAP-00307-node-Geometry-GeometryNodeSetNURBSOrder.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00307", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00308", + "gapId": "node:Geometry:GeometryNodeSetNURBSWeight", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00308-node-Geometry-GeometryNodeSetNURBSWeight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00308.py -- tests/files/web/generated/M18-GAP-00308-node-Geometry-GeometryNodeSetNURBSWeight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00308", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00309", + "gapId": "node:Geometry:GeometryNodeSetPointRadius", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00309-node-Geometry-GeometryNodeSetPointRadius.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00309.py -- tests/files/web/generated/M18-GAP-00309-node-Geometry-GeometryNodeSetPointRadius.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00309", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00310", + "gapId": "node:Geometry:GeometryNodeSetPosition", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00310-node-Geometry-GeometryNodeSetPosition.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00310.py -- tests/files/web/generated/M18-GAP-00310-node-Geometry-GeometryNodeSetPosition.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00310", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00311", + "gapId": "node:Geometry:GeometryNodeSetShadeSmooth", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00311-node-Geometry-GeometryNodeSetShadeSmooth.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00311.py -- tests/files/web/generated/M18-GAP-00311-node-Geometry-GeometryNodeSetShadeSmooth.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00311", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00312", + "gapId": "node:Geometry:GeometryNodeSetSplineCyclic", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00312-node-Geometry-GeometryNodeSetSplineCyclic.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00312.py -- tests/files/web/generated/M18-GAP-00312-node-Geometry-GeometryNodeSetSplineCyclic.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00312", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00313", + "gapId": "node:Geometry:GeometryNodeSetSplineResolution", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00313-node-Geometry-GeometryNodeSetSplineResolution.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00313.py -- tests/files/web/generated/M18-GAP-00313-node-Geometry-GeometryNodeSetSplineResolution.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00313", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00314", + "gapId": "node:Geometry:GeometryNodeSimulationInput", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00314-node-Geometry-GeometryNodeSimulationInput.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00314.py -- tests/files/web/generated/M18-GAP-00314-node-Geometry-GeometryNodeSimulationInput.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00314", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00315", + "gapId": "node:Geometry:GeometryNodeSimulationOutput", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00315-node-Geometry-GeometryNodeSimulationOutput.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00315.py -- tests/files/web/generated/M18-GAP-00315-node-Geometry-GeometryNodeSimulationOutput.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00315", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00316", + "gapId": "node:Geometry:GeometryNodeSortElements", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00316-node-Geometry-GeometryNodeSortElements.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00316.py -- tests/files/web/generated/M18-GAP-00316-node-Geometry-GeometryNodeSortElements.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00316", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00317", + "gapId": "node:Geometry:GeometryNodeSortList", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00317-node-Geometry-GeometryNodeSortList.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00317.py -- tests/files/web/generated/M18-GAP-00317-node-Geometry-GeometryNodeSortList.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00317", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00318", + "gapId": "node:Geometry:GeometryNodeSplineLength", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00318-node-Geometry-GeometryNodeSplineLength.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00318.py -- tests/files/web/generated/M18-GAP-00318-node-Geometry-GeometryNodeSplineLength.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00318", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00319", + "gapId": "node:Geometry:GeometryNodeSplineParameter", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00319-node-Geometry-GeometryNodeSplineParameter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00319.py -- tests/files/web/generated/M18-GAP-00319-node-Geometry-GeometryNodeSplineParameter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00319", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00320", + "gapId": "node:Geometry:GeometryNodeSplitEdges", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00320-node-Geometry-GeometryNodeSplitEdges.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00320.py -- tests/files/web/generated/M18-GAP-00320-node-Geometry-GeometryNodeSplitEdges.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00320", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00321", + "gapId": "node:Geometry:GeometryNodeSplitToInstances", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00321-node-Geometry-GeometryNodeSplitToInstances.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00321.py -- tests/files/web/generated/M18-GAP-00321-node-Geometry-GeometryNodeSplitToInstances.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00321", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00322", + "gapId": "node:Geometry:GeometryNodeStoreNamedAttribute", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00322-node-Geometry-GeometryNodeStoreNamedAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00322.py -- tests/files/web/generated/M18-GAP-00322-node-Geometry-GeometryNodeStoreNamedAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00322", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00323", + "gapId": "node:Geometry:GeometryNodeStoreNamedGrid", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00323-node-Geometry-GeometryNodeStoreNamedGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00323.py -- tests/files/web/generated/M18-GAP-00323-node-Geometry-GeometryNodeStoreNamedGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00323", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00324", + "gapId": "node:Geometry:GeometryNodeStringJoin", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00324-node-Geometry-GeometryNodeStringJoin.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00324.py -- tests/files/web/generated/M18-GAP-00324-node-Geometry-GeometryNodeStringJoin.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00324", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00325", + "gapId": "node:Geometry:GeometryNodeStringToCurves", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00325-node-Geometry-GeometryNodeStringToCurves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00325.py -- tests/files/web/generated/M18-GAP-00325-node-Geometry-GeometryNodeStringToCurves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00325", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00326", + "gapId": "node:Geometry:GeometryNodeSubdivideCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00326-node-Geometry-GeometryNodeSubdivideCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00326.py -- tests/files/web/generated/M18-GAP-00326-node-Geometry-GeometryNodeSubdivideCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00326", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00327", + "gapId": "node:Geometry:GeometryNodeSubdivideMesh", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00327-node-Geometry-GeometryNodeSubdivideMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00327.py -- tests/files/web/generated/M18-GAP-00327-node-Geometry-GeometryNodeSubdivideMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00327", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00328", + "gapId": "node:Geometry:GeometryNodeSubdivisionSurface", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00328-node-Geometry-GeometryNodeSubdivisionSurface.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00328.py -- tests/files/web/generated/M18-GAP-00328-node-Geometry-GeometryNodeSubdivisionSurface.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00328", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00329", + "gapId": "node:Geometry:GeometryNodeSwitch", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00329-node-Geometry-GeometryNodeSwitch.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00329.py -- tests/files/web/generated/M18-GAP-00329-node-Geometry-GeometryNodeSwitch.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00329", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00330", + "gapId": "node:Geometry:GeometryNodeTagFilter", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00330-node-Geometry-GeometryNodeTagFilter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00330.py -- tests/files/web/generated/M18-GAP-00330-node-Geometry-GeometryNodeTagFilter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00330", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00331", + "gapId": "node:Geometry:GeometryNodeTool3DCursor", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00331-node-Geometry-GeometryNodeTool3DCursor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00331.py -- tests/files/web/generated/M18-GAP-00331-node-Geometry-GeometryNodeTool3DCursor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00331", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00332", + "gapId": "node:Geometry:GeometryNodeToolActiveElement", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00332-node-Geometry-GeometryNodeToolActiveElement.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00332.py -- tests/files/web/generated/M18-GAP-00332-node-Geometry-GeometryNodeToolActiveElement.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00332", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00333", + "gapId": "node:Geometry:GeometryNodeToolFaceSet", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00333-node-Geometry-GeometryNodeToolFaceSet.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00333.py -- tests/files/web/generated/M18-GAP-00333-node-Geometry-GeometryNodeToolFaceSet.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00333", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00334", + "gapId": "node:Geometry:GeometryNodeToolMousePosition", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00334-node-Geometry-GeometryNodeToolMousePosition.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00334.py -- tests/files/web/generated/M18-GAP-00334-node-Geometry-GeometryNodeToolMousePosition.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00334", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00335", + "gapId": "node:Geometry:GeometryNodeToolSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00335-node-Geometry-GeometryNodeToolSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00335.py -- tests/files/web/generated/M18-GAP-00335-node-Geometry-GeometryNodeToolSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00335", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00336", + "gapId": "node:Geometry:GeometryNodeToolSetFaceSet", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00336-node-Geometry-GeometryNodeToolSetFaceSet.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00336.py -- tests/files/web/generated/M18-GAP-00336-node-Geometry-GeometryNodeToolSetFaceSet.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00336", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00337", + "gapId": "node:Geometry:GeometryNodeToolSetSelection", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00337-node-Geometry-GeometryNodeToolSetSelection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00337.py -- tests/files/web/generated/M18-GAP-00337-node-Geometry-GeometryNodeToolSetSelection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00337", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00338", + "gapId": "node:Geometry:GeometryNodeTransferAttributes", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00338-node-Geometry-GeometryNodeTransferAttributes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00338.py -- tests/files/web/generated/M18-GAP-00338-node-Geometry-GeometryNodeTransferAttributes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00338", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00339", + "gapId": "node:Geometry:GeometryNodeTransform", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00339-node-Geometry-GeometryNodeTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00339.py -- tests/files/web/generated/M18-GAP-00339-node-Geometry-GeometryNodeTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00339", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00340", + "gapId": "node:Geometry:GeometryNodeTranslateInstances", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00340-node-Geometry-GeometryNodeTranslateInstances.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00340.py -- tests/files/web/generated/M18-GAP-00340-node-Geometry-GeometryNodeTranslateInstances.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00340", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00341", + "gapId": "node:Geometry:GeometryNodeTriangulate", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00341-node-Geometry-GeometryNodeTriangulate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00341.py -- tests/files/web/generated/M18-GAP-00341-node-Geometry-GeometryNodeTriangulate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00341", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00342", + "gapId": "node:Geometry:GeometryNodeTrimCurve", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00342-node-Geometry-GeometryNodeTrimCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00342.py -- tests/files/web/generated/M18-GAP-00342-node-Geometry-GeometryNodeTrimCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00342", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00343", + "gapId": "node:Geometry:GeometryNodeUVPackIslands", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00343-node-Geometry-GeometryNodeUVPackIslands.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00343.py -- tests/files/web/generated/M18-GAP-00343-node-Geometry-GeometryNodeUVPackIslands.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00343", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00344", + "gapId": "node:Geometry:GeometryNodeUVTangent", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00344-node-Geometry-GeometryNodeUVTangent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00344.py -- tests/files/web/generated/M18-GAP-00344-node-Geometry-GeometryNodeUVTangent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00344", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00345", + "gapId": "node:Geometry:GeometryNodeUVUnwrap", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00345-node-Geometry-GeometryNodeUVUnwrap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00345.py -- tests/files/web/generated/M18-GAP-00345-node-Geometry-GeometryNodeUVUnwrap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00345", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00346", + "gapId": "node:Geometry:GeometryNodeVertexOfCorner", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00346-node-Geometry-GeometryNodeVertexOfCorner.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00346.py -- tests/files/web/generated/M18-GAP-00346-node-Geometry-GeometryNodeVertexOfCorner.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00346", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00347", + "gapId": "node:Geometry:GeometryNodeViewer", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00347-node-Geometry-GeometryNodeViewer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00347.py -- tests/files/web/generated/M18-GAP-00347-node-Geometry-GeometryNodeViewer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00347", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00348", + "gapId": "node:Geometry:GeometryNodeViewportTransform", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00348-node-Geometry-GeometryNodeViewportTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00348.py -- tests/files/web/generated/M18-GAP-00348-node-Geometry-GeometryNodeViewportTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00348", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00349", + "gapId": "node:Geometry:GeometryNodeVolumeCube", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00349-node-Geometry-GeometryNodeVolumeCube.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00349.py -- tests/files/web/generated/M18-GAP-00349-node-Geometry-GeometryNodeVolumeCube.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00349", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00350", + "gapId": "node:Geometry:GeometryNodeVolumeToMesh", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00350-node-Geometry-GeometryNodeVolumeToMesh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00350.py -- tests/files/web/generated/M18-GAP-00350-node-Geometry-GeometryNodeVolumeToMesh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00350", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00351", + "gapId": "node:Geometry:GeometryNodeWarning", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00351-node-Geometry-GeometryNodeWarning.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00351.py -- tests/files/web/generated/M18-GAP-00351-node-Geometry-GeometryNodeWarning.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00351", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00352", + "gapId": "node:Geometry:GeometryNodeXPBDSolver", + "ownerFamily": "GEOMETRY_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00352-node-Geometry-GeometryNodeXPBDSolver.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00352.py -- tests/files/web/generated/M18-GAP-00352-node-Geometry-GeometryNodeXPBDSolver.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00352", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00353", + "gapId": "node:Shader:ShaderNodeAddShader", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00353-node-Shader-ShaderNodeAddShader.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00353.py -- tests/files/web/generated/M18-GAP-00353-node-Shader-ShaderNodeAddShader.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00353", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00354", + "gapId": "node:Shader:ShaderNodeAmbientOcclusion", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00354-node-Shader-ShaderNodeAmbientOcclusion.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00354.py -- tests/files/web/generated/M18-GAP-00354-node-Shader-ShaderNodeAmbientOcclusion.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00354", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00355", + "gapId": "node:Shader:ShaderNodeAttribute", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00355-node-Shader-ShaderNodeAttribute.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00355.py -- tests/files/web/generated/M18-GAP-00355-node-Shader-ShaderNodeAttribute.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00355", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00356", + "gapId": "node:Shader:ShaderNodeBackground", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00356-node-Shader-ShaderNodeBackground.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00356.py -- tests/files/web/generated/M18-GAP-00356-node-Shader-ShaderNodeBackground.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00356", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00357", + "gapId": "node:Shader:ShaderNodeBevel", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00357-node-Shader-ShaderNodeBevel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00357.py -- tests/files/web/generated/M18-GAP-00357-node-Shader-ShaderNodeBevel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00357", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00358", + "gapId": "node:Shader:ShaderNodeBlackbody", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00358-node-Shader-ShaderNodeBlackbody.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00358.py -- tests/files/web/generated/M18-GAP-00358-node-Shader-ShaderNodeBlackbody.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00358", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00359", + "gapId": "node:Shader:ShaderNodeBrightContrast", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00359-node-Shader-ShaderNodeBrightContrast.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00359.py -- tests/files/web/generated/M18-GAP-00359-node-Shader-ShaderNodeBrightContrast.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00359", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00360", + "gapId": "node:Shader:ShaderNodeBsdfAnisotropic", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00360-node-Shader-ShaderNodeBsdfAnisotropic.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00360.py -- tests/files/web/generated/M18-GAP-00360-node-Shader-ShaderNodeBsdfAnisotropic.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00360", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00361", + "gapId": "node:Shader:ShaderNodeBsdfDiffuse", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00361-node-Shader-ShaderNodeBsdfDiffuse.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00361.py -- tests/files/web/generated/M18-GAP-00361-node-Shader-ShaderNodeBsdfDiffuse.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00361", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00362", + "gapId": "node:Shader:ShaderNodeBsdfGlass", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00362-node-Shader-ShaderNodeBsdfGlass.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00362.py -- tests/files/web/generated/M18-GAP-00362-node-Shader-ShaderNodeBsdfGlass.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00362", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00363", + "gapId": "node:Shader:ShaderNodeBsdfHair", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00363-node-Shader-ShaderNodeBsdfHair.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00363.py -- tests/files/web/generated/M18-GAP-00363-node-Shader-ShaderNodeBsdfHair.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00363", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00364", + "gapId": "node:Shader:ShaderNodeBsdfHairPrincipled", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00364-node-Shader-ShaderNodeBsdfHairPrincipled.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00364.py -- tests/files/web/generated/M18-GAP-00364-node-Shader-ShaderNodeBsdfHairPrincipled.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00364", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00365", + "gapId": "node:Shader:ShaderNodeBsdfMetallic", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00365-node-Shader-ShaderNodeBsdfMetallic.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00365.py -- tests/files/web/generated/M18-GAP-00365-node-Shader-ShaderNodeBsdfMetallic.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00365", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00366", + "gapId": "node:Shader:ShaderNodeBsdfPrincipled", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00366-node-Shader-ShaderNodeBsdfPrincipled.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00366.py -- tests/files/web/generated/M18-GAP-00366-node-Shader-ShaderNodeBsdfPrincipled.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00366", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00367", + "gapId": "node:Shader:ShaderNodeBsdfRayPortal", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00367-node-Shader-ShaderNodeBsdfRayPortal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00367.py -- tests/files/web/generated/M18-GAP-00367-node-Shader-ShaderNodeBsdfRayPortal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00367", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00368", + "gapId": "node:Shader:ShaderNodeBsdfRefraction", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00368-node-Shader-ShaderNodeBsdfRefraction.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00368.py -- tests/files/web/generated/M18-GAP-00368-node-Shader-ShaderNodeBsdfRefraction.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00368", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00369", + "gapId": "node:Shader:ShaderNodeBsdfSheen", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00369-node-Shader-ShaderNodeBsdfSheen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00369.py -- tests/files/web/generated/M18-GAP-00369-node-Shader-ShaderNodeBsdfSheen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00369", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00370", + "gapId": "node:Shader:ShaderNodeBsdfToon", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00370-node-Shader-ShaderNodeBsdfToon.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00370.py -- tests/files/web/generated/M18-GAP-00370-node-Shader-ShaderNodeBsdfToon.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00370", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00371", + "gapId": "node:Shader:ShaderNodeBsdfTranslucent", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00371-node-Shader-ShaderNodeBsdfTranslucent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00371.py -- tests/files/web/generated/M18-GAP-00371-node-Shader-ShaderNodeBsdfTranslucent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00371", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00372", + "gapId": "node:Shader:ShaderNodeBsdfTransparent", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00372-node-Shader-ShaderNodeBsdfTransparent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00372.py -- tests/files/web/generated/M18-GAP-00372-node-Shader-ShaderNodeBsdfTransparent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00372", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00373", + "gapId": "node:Shader:ShaderNodeBump", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00373-node-Shader-ShaderNodeBump.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00373.py -- tests/files/web/generated/M18-GAP-00373-node-Shader-ShaderNodeBump.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00373", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00374", + "gapId": "node:Shader:ShaderNodeCameraData", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00374-node-Shader-ShaderNodeCameraData.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00374.py -- tests/files/web/generated/M18-GAP-00374-node-Shader-ShaderNodeCameraData.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00374", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00375", + "gapId": "node:Shader:ShaderNodeClamp", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00375-node-Shader-ShaderNodeClamp.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00375.py -- tests/files/web/generated/M18-GAP-00375-node-Shader-ShaderNodeClamp.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00375", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00376", + "gapId": "node:Shader:ShaderNodeCombineColor", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00376-node-Shader-ShaderNodeCombineColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00376.py -- tests/files/web/generated/M18-GAP-00376-node-Shader-ShaderNodeCombineColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00376", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00377", + "gapId": "node:Shader:ShaderNodeCombineXYZ", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00377-node-Shader-ShaderNodeCombineXYZ.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00377.py -- tests/files/web/generated/M18-GAP-00377-node-Shader-ShaderNodeCombineXYZ.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00377", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00378", + "gapId": "node:Shader:ShaderNodeDisplacement", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00378-node-Shader-ShaderNodeDisplacement.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00378.py -- tests/files/web/generated/M18-GAP-00378-node-Shader-ShaderNodeDisplacement.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00378", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00379", + "gapId": "node:Shader:ShaderNodeEeveeSpecular", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00379-node-Shader-ShaderNodeEeveeSpecular.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00379.py -- tests/files/web/generated/M18-GAP-00379-node-Shader-ShaderNodeEeveeSpecular.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00379", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00380", + "gapId": "node:Shader:ShaderNodeEmission", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00380-node-Shader-ShaderNodeEmission.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00380.py -- tests/files/web/generated/M18-GAP-00380-node-Shader-ShaderNodeEmission.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00380", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00381", + "gapId": "node:Shader:ShaderNodeFloatCurve", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00381-node-Shader-ShaderNodeFloatCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00381.py -- tests/files/web/generated/M18-GAP-00381-node-Shader-ShaderNodeFloatCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00381", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00382", + "gapId": "node:Shader:ShaderNodeFresnel", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00382-node-Shader-ShaderNodeFresnel.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00382.py -- tests/files/web/generated/M18-GAP-00382-node-Shader-ShaderNodeFresnel.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00382", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00383", + "gapId": "node:Shader:ShaderNodeGamma", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00383-node-Shader-ShaderNodeGamma.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00383.py -- tests/files/web/generated/M18-GAP-00383-node-Shader-ShaderNodeGamma.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00383", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00384", + "gapId": "node:Shader:ShaderNodeGroup", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00384-node-Shader-ShaderNodeGroup.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00384.py -- tests/files/web/generated/M18-GAP-00384-node-Shader-ShaderNodeGroup.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00384", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00385", + "gapId": "node:Shader:ShaderNodeHairInfo", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00385-node-Shader-ShaderNodeHairInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00385.py -- tests/files/web/generated/M18-GAP-00385-node-Shader-ShaderNodeHairInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00385", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00386", + "gapId": "node:Shader:ShaderNodeHoldout", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00386-node-Shader-ShaderNodeHoldout.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00386.py -- tests/files/web/generated/M18-GAP-00386-node-Shader-ShaderNodeHoldout.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00386", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00387", + "gapId": "node:Shader:ShaderNodeHueSaturation", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00387-node-Shader-ShaderNodeHueSaturation.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00387.py -- tests/files/web/generated/M18-GAP-00387-node-Shader-ShaderNodeHueSaturation.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00387", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00388", + "gapId": "node:Shader:ShaderNodeInvert", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00388-node-Shader-ShaderNodeInvert.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00388.py -- tests/files/web/generated/M18-GAP-00388-node-Shader-ShaderNodeInvert.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00388", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00389", + "gapId": "node:Shader:ShaderNodeLayerWeight", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00389-node-Shader-ShaderNodeLayerWeight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00389.py -- tests/files/web/generated/M18-GAP-00389-node-Shader-ShaderNodeLayerWeight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00389", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00390", + "gapId": "node:Shader:ShaderNodeLightFalloff", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00390-node-Shader-ShaderNodeLightFalloff.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00390.py -- tests/files/web/generated/M18-GAP-00390-node-Shader-ShaderNodeLightFalloff.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00390", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00391", + "gapId": "node:Shader:ShaderNodeLightPath", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00391-node-Shader-ShaderNodeLightPath.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00391.py -- tests/files/web/generated/M18-GAP-00391-node-Shader-ShaderNodeLightPath.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00391", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00392", + "gapId": "node:Shader:ShaderNodeMapRange", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00392-node-Shader-ShaderNodeMapRange.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00392.py -- tests/files/web/generated/M18-GAP-00392-node-Shader-ShaderNodeMapRange.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00392", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00393", + "gapId": "node:Shader:ShaderNodeMapping", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00393-node-Shader-ShaderNodeMapping.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00393.py -- tests/files/web/generated/M18-GAP-00393-node-Shader-ShaderNodeMapping.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00393", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00394", + "gapId": "node:Shader:ShaderNodeMath", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00394-node-Shader-ShaderNodeMath.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00394.py -- tests/files/web/generated/M18-GAP-00394-node-Shader-ShaderNodeMath.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00394", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00395", + "gapId": "node:Shader:ShaderNodeMix", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00395-node-Shader-ShaderNodeMix.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00395.py -- tests/files/web/generated/M18-GAP-00395-node-Shader-ShaderNodeMix.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00395", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00396", + "gapId": "node:Shader:ShaderNodeMixRGB", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00396-node-Shader-ShaderNodeMixRGB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00396.py -- tests/files/web/generated/M18-GAP-00396-node-Shader-ShaderNodeMixRGB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00396", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00397", + "gapId": "node:Shader:ShaderNodeMixShader", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00397-node-Shader-ShaderNodeMixShader.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00397.py -- tests/files/web/generated/M18-GAP-00397-node-Shader-ShaderNodeMixShader.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00397", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00398", + "gapId": "node:Shader:ShaderNodeNewGeometry", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00398-node-Shader-ShaderNodeNewGeometry.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00398.py -- tests/files/web/generated/M18-GAP-00398-node-Shader-ShaderNodeNewGeometry.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00398", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00399", + "gapId": "node:Shader:ShaderNodeNormal", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00399-node-Shader-ShaderNodeNormal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00399.py -- tests/files/web/generated/M18-GAP-00399-node-Shader-ShaderNodeNormal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00399", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00400", + "gapId": "node:Shader:ShaderNodeNormalMap", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00400-node-Shader-ShaderNodeNormalMap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00400.py -- tests/files/web/generated/M18-GAP-00400-node-Shader-ShaderNodeNormalMap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00400", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00401", + "gapId": "node:Shader:ShaderNodeObjectInfo", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00401-node-Shader-ShaderNodeObjectInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00401.py -- tests/files/web/generated/M18-GAP-00401-node-Shader-ShaderNodeObjectInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00401", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00402", + "gapId": "node:Shader:ShaderNodeOutputAOV", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00402-node-Shader-ShaderNodeOutputAOV.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00402.py -- tests/files/web/generated/M18-GAP-00402-node-Shader-ShaderNodeOutputAOV.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00402", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00403", + "gapId": "node:Shader:ShaderNodeOutputLight", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00403-node-Shader-ShaderNodeOutputLight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00403.py -- tests/files/web/generated/M18-GAP-00403-node-Shader-ShaderNodeOutputLight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00403", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00404", + "gapId": "node:Shader:ShaderNodeOutputLineStyle", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00404-node-Shader-ShaderNodeOutputLineStyle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00404.py -- tests/files/web/generated/M18-GAP-00404-node-Shader-ShaderNodeOutputLineStyle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00404", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00405", + "gapId": "node:Shader:ShaderNodeOutputMaterial", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00405-node-Shader-ShaderNodeOutputMaterial.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00405.py -- tests/files/web/generated/M18-GAP-00405-node-Shader-ShaderNodeOutputMaterial.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00405", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00406", + "gapId": "node:Shader:ShaderNodeOutputWorld", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00406-node-Shader-ShaderNodeOutputWorld.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00406.py -- tests/files/web/generated/M18-GAP-00406-node-Shader-ShaderNodeOutputWorld.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00406", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00407", + "gapId": "node:Shader:ShaderNodeParticleInfo", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00407-node-Shader-ShaderNodeParticleInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00407.py -- tests/files/web/generated/M18-GAP-00407-node-Shader-ShaderNodeParticleInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00407", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00408", + "gapId": "node:Shader:ShaderNodePointInfo", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00408-node-Shader-ShaderNodePointInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00408.py -- tests/files/web/generated/M18-GAP-00408-node-Shader-ShaderNodePointInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00408", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00409", + "gapId": "node:Shader:ShaderNodeRGB", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00409-node-Shader-ShaderNodeRGB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00409.py -- tests/files/web/generated/M18-GAP-00409-node-Shader-ShaderNodeRGB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00409", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00410", + "gapId": "node:Shader:ShaderNodeRGBCurve", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00410-node-Shader-ShaderNodeRGBCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00410.py -- tests/files/web/generated/M18-GAP-00410-node-Shader-ShaderNodeRGBCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00410", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00411", + "gapId": "node:Shader:ShaderNodeRGBToBW", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00411-node-Shader-ShaderNodeRGBToBW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00411.py -- tests/files/web/generated/M18-GAP-00411-node-Shader-ShaderNodeRGBToBW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00411", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00412", + "gapId": "node:Shader:ShaderNodeRadialTiling", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00412-node-Shader-ShaderNodeRadialTiling.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00412.py -- tests/files/web/generated/M18-GAP-00412-node-Shader-ShaderNodeRadialTiling.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00412", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00413", + "gapId": "node:Shader:ShaderNodeRaycast", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00413-node-Shader-ShaderNodeRaycast.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00413.py -- tests/files/web/generated/M18-GAP-00413-node-Shader-ShaderNodeRaycast.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00413", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00414", + "gapId": "node:Shader:ShaderNodeScript", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00414-node-Shader-ShaderNodeScript.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00414.py -- tests/files/web/generated/M18-GAP-00414-node-Shader-ShaderNodeScript.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00414", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00415", + "gapId": "node:Shader:ShaderNodeSeparateColor", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00415-node-Shader-ShaderNodeSeparateColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00415.py -- tests/files/web/generated/M18-GAP-00415-node-Shader-ShaderNodeSeparateColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00415", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00416", + "gapId": "node:Shader:ShaderNodeSeparateXYZ", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00416-node-Shader-ShaderNodeSeparateXYZ.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00416.py -- tests/files/web/generated/M18-GAP-00416-node-Shader-ShaderNodeSeparateXYZ.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00416", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00417", + "gapId": "node:Shader:ShaderNodeShaderToRGB", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00417-node-Shader-ShaderNodeShaderToRGB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00417.py -- tests/files/web/generated/M18-GAP-00417-node-Shader-ShaderNodeShaderToRGB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00417", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00418", + "gapId": "node:Shader:ShaderNodeSqueeze", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00418-node-Shader-ShaderNodeSqueeze.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00418.py -- tests/files/web/generated/M18-GAP-00418-node-Shader-ShaderNodeSqueeze.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00418", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00419", + "gapId": "node:Shader:ShaderNodeSubsurfaceScattering", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00419-node-Shader-ShaderNodeSubsurfaceScattering.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00419.py -- tests/files/web/generated/M18-GAP-00419-node-Shader-ShaderNodeSubsurfaceScattering.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00419", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00420", + "gapId": "node:Shader:ShaderNodeTangent", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00420-node-Shader-ShaderNodeTangent.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00420.py -- tests/files/web/generated/M18-GAP-00420-node-Shader-ShaderNodeTangent.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00420", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00421", + "gapId": "node:Shader:ShaderNodeTexBrick", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00421-node-Shader-ShaderNodeTexBrick.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00421.py -- tests/files/web/generated/M18-GAP-00421-node-Shader-ShaderNodeTexBrick.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00421", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00422", + "gapId": "node:Shader:ShaderNodeTexChecker", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00422-node-Shader-ShaderNodeTexChecker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00422.py -- tests/files/web/generated/M18-GAP-00422-node-Shader-ShaderNodeTexChecker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00422", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00423", + "gapId": "node:Shader:ShaderNodeTexCoord", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00423-node-Shader-ShaderNodeTexCoord.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00423.py -- tests/files/web/generated/M18-GAP-00423-node-Shader-ShaderNodeTexCoord.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00423", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00424", + "gapId": "node:Shader:ShaderNodeTexEnvironment", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00424-node-Shader-ShaderNodeTexEnvironment.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00424.py -- tests/files/web/generated/M18-GAP-00424-node-Shader-ShaderNodeTexEnvironment.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00424", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00425", + "gapId": "node:Shader:ShaderNodeTexGabor", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00425-node-Shader-ShaderNodeTexGabor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00425.py -- tests/files/web/generated/M18-GAP-00425-node-Shader-ShaderNodeTexGabor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00425", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00426", + "gapId": "node:Shader:ShaderNodeTexGradient", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00426-node-Shader-ShaderNodeTexGradient.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00426.py -- tests/files/web/generated/M18-GAP-00426-node-Shader-ShaderNodeTexGradient.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00426", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00427", + "gapId": "node:Shader:ShaderNodeTexIES", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00427-node-Shader-ShaderNodeTexIES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00427.py -- tests/files/web/generated/M18-GAP-00427-node-Shader-ShaderNodeTexIES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00427", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00428", + "gapId": "node:Shader:ShaderNodeTexImage", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00428-node-Shader-ShaderNodeTexImage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00428.py -- tests/files/web/generated/M18-GAP-00428-node-Shader-ShaderNodeTexImage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00428", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00429", + "gapId": "node:Shader:ShaderNodeTexMagic", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00429-node-Shader-ShaderNodeTexMagic.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00429.py -- tests/files/web/generated/M18-GAP-00429-node-Shader-ShaderNodeTexMagic.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00429", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00430", + "gapId": "node:Shader:ShaderNodeTexNoise", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00430-node-Shader-ShaderNodeTexNoise.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00430.py -- tests/files/web/generated/M18-GAP-00430-node-Shader-ShaderNodeTexNoise.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00430", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00431", + "gapId": "node:Shader:ShaderNodeTexSky", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00431-node-Shader-ShaderNodeTexSky.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00431.py -- tests/files/web/generated/M18-GAP-00431-node-Shader-ShaderNodeTexSky.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00431", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00432", + "gapId": "node:Shader:ShaderNodeTexVoronoi", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00432-node-Shader-ShaderNodeTexVoronoi.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00432.py -- tests/files/web/generated/M18-GAP-00432-node-Shader-ShaderNodeTexVoronoi.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00432", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00433", + "gapId": "node:Shader:ShaderNodeTexWave", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00433-node-Shader-ShaderNodeTexWave.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00433.py -- tests/files/web/generated/M18-GAP-00433-node-Shader-ShaderNodeTexWave.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00433", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00434", + "gapId": "node:Shader:ShaderNodeTexWhiteNoise", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00434-node-Shader-ShaderNodeTexWhiteNoise.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00434.py -- tests/files/web/generated/M18-GAP-00434-node-Shader-ShaderNodeTexWhiteNoise.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00434", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00435", + "gapId": "node:Shader:ShaderNodeUVAlongStroke", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00435-node-Shader-ShaderNodeUVAlongStroke.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00435.py -- tests/files/web/generated/M18-GAP-00435-node-Shader-ShaderNodeUVAlongStroke.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00435", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00436", + "gapId": "node:Shader:ShaderNodeUVMap", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00436-node-Shader-ShaderNodeUVMap.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00436.py -- tests/files/web/generated/M18-GAP-00436-node-Shader-ShaderNodeUVMap.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00436", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00437", + "gapId": "node:Shader:ShaderNodeValToRGB", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00437-node-Shader-ShaderNodeValToRGB.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00437.py -- tests/files/web/generated/M18-GAP-00437-node-Shader-ShaderNodeValToRGB.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00437", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00438", + "gapId": "node:Shader:ShaderNodeValue", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00438-node-Shader-ShaderNodeValue.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00438.py -- tests/files/web/generated/M18-GAP-00438-node-Shader-ShaderNodeValue.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00438", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00439", + "gapId": "node:Shader:ShaderNodeVectorCurve", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00439-node-Shader-ShaderNodeVectorCurve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00439.py -- tests/files/web/generated/M18-GAP-00439-node-Shader-ShaderNodeVectorCurve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00439", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00440", + "gapId": "node:Shader:ShaderNodeVectorDisplacement", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00440-node-Shader-ShaderNodeVectorDisplacement.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00440.py -- tests/files/web/generated/M18-GAP-00440-node-Shader-ShaderNodeVectorDisplacement.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00440", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00441", + "gapId": "node:Shader:ShaderNodeVectorMath", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00441-node-Shader-ShaderNodeVectorMath.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00441.py -- tests/files/web/generated/M18-GAP-00441-node-Shader-ShaderNodeVectorMath.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00441", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00442", + "gapId": "node:Shader:ShaderNodeVectorRotate", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00442-node-Shader-ShaderNodeVectorRotate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00442.py -- tests/files/web/generated/M18-GAP-00442-node-Shader-ShaderNodeVectorRotate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00442", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00443", + "gapId": "node:Shader:ShaderNodeVectorTransform", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00443-node-Shader-ShaderNodeVectorTransform.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00443.py -- tests/files/web/generated/M18-GAP-00443-node-Shader-ShaderNodeVectorTransform.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00443", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00444", + "gapId": "node:Shader:ShaderNodeVertexColor", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00444-node-Shader-ShaderNodeVertexColor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00444.py -- tests/files/web/generated/M18-GAP-00444-node-Shader-ShaderNodeVertexColor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00444", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00445", + "gapId": "node:Shader:ShaderNodeVolumeAbsorption", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00445-node-Shader-ShaderNodeVolumeAbsorption.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00445.py -- tests/files/web/generated/M18-GAP-00445-node-Shader-ShaderNodeVolumeAbsorption.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00445", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00446", + "gapId": "node:Shader:ShaderNodeVolumeCoefficients", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00446-node-Shader-ShaderNodeVolumeCoefficients.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00446.py -- tests/files/web/generated/M18-GAP-00446-node-Shader-ShaderNodeVolumeCoefficients.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00446", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00447", + "gapId": "node:Shader:ShaderNodeVolumeInfo", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00447-node-Shader-ShaderNodeVolumeInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00447.py -- tests/files/web/generated/M18-GAP-00447-node-Shader-ShaderNodeVolumeInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00447", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00448", + "gapId": "node:Shader:ShaderNodeVolumePrincipled", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00448-node-Shader-ShaderNodeVolumePrincipled.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00448.py -- tests/files/web/generated/M18-GAP-00448-node-Shader-ShaderNodeVolumePrincipled.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00448", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00449", + "gapId": "node:Shader:ShaderNodeVolumeScatter", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00449-node-Shader-ShaderNodeVolumeScatter.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00449.py -- tests/files/web/generated/M18-GAP-00449-node-Shader-ShaderNodeVolumeScatter.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00449", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00450", + "gapId": "node:Shader:ShaderNodeWavelength", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00450-node-Shader-ShaderNodeWavelength.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00450.py -- tests/files/web/generated/M18-GAP-00450-node-Shader-ShaderNodeWavelength.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00450", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M18-GAP-00451", + "gapId": "node:Shader:ShaderNodeWireframe", + "ownerFamily": "SHADER_NODE", + "sourceTask": "M15-01C", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M18-GAP-00451-node-Shader-ShaderNodeWireframe.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M18-GAP-00451.py -- tests/files/web/generated/M18-GAP-00451-node-Shader-ShaderNodeWireframe.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M18-GAP-00451", + "comparator": "node tools/web/check-generated-gap.mjs --task M18-GAP-00451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00001", + "gapId": "rna:Core:Action", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00001-rna-Core-Action.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00001.py -- tests/files/web/generated/M19-GAP-00001-rna-Core-Action.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00002", + "gapId": "rna:Core:Armature", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00002-rna-Core-Armature.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00002.py -- tests/files/web/generated/M19-GAP-00002-rna-Core-Armature.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00003", + "gapId": "rna:Core:Brush", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00003-rna-Core-Brush.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00003.py -- tests/files/web/generated/M19-GAP-00003-rna-Core-Brush.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00004", + "gapId": "rna:Core:Curve", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00004-rna-Core-Curve.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00004.py -- tests/files/web/generated/M19-GAP-00004-rna-Core-Curve.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00005", + "gapId": "rna:Core:Curves", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00005-rna-Core-Curves.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00005.py -- tests/files/web/generated/M19-GAP-00005-rna-Core-Curves.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00006", + "gapId": "rna:Core:GreasePencil", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00006-rna-Core-GreasePencil.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00006.py -- tests/files/web/generated/M19-GAP-00006-rna-Core-GreasePencil.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00007", + "gapId": "rna:Core:ID", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00007-rna-Core-ID.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00007.py -- tests/files/web/generated/M19-GAP-00007-rna-Core-ID.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00008", + "gapId": "rna:Core:Image", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00008-rna-Core-Image.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00008.py -- tests/files/web/generated/M19-GAP-00008-rna-Core-Image.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00009", + "gapId": "rna:Core:Key", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00009-rna-Core-Key.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00009.py -- tests/files/web/generated/M19-GAP-00009-rna-Core-Key.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00010", + "gapId": "rna:Core:Lattice", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00010-rna-Core-Lattice.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00010.py -- tests/files/web/generated/M19-GAP-00010-rna-Core-Lattice.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00011", + "gapId": "rna:Core:Mask", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00011-rna-Core-Mask.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00011.py -- tests/files/web/generated/M19-GAP-00011-rna-Core-Mask.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00012", + "gapId": "rna:Core:MetaBall", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00012-rna-Core-MetaBall.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00012.py -- tests/files/web/generated/M19-GAP-00012-rna-Core-MetaBall.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00013", + "gapId": "rna:Core:MovieClip", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00013-rna-Core-MovieClip.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00013.py -- tests/files/web/generated/M19-GAP-00013-rna-Core-MovieClip.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00014", + "gapId": "rna:Core:Palette", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00014-rna-Core-Palette.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00014.py -- tests/files/web/generated/M19-GAP-00014-rna-Core-Palette.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00015", + "gapId": "rna:Core:ParticleSettings", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00015-rna-Core-ParticleSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00015.py -- tests/files/web/generated/M19-GAP-00015-rna-Core-ParticleSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00016", + "gapId": "rna:Core:PointCloud", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00016-rna-Core-PointCloud.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00016.py -- tests/files/web/generated/M19-GAP-00016-rna-Core-PointCloud.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00017", + "gapId": "rna:Core:Sound", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00017-rna-Core-Sound.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00017.py -- tests/files/web/generated/M19-GAP-00017-rna-Core-Sound.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00018", + "gapId": "rna:Core:Speaker", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00018-rna-Core-Speaker.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00018.py -- tests/files/web/generated/M19-GAP-00018-rna-Core-Speaker.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00019", + "gapId": "rna:Core:Text", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00019-rna-Core-Text.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00019.py -- tests/files/web/generated/M19-GAP-00019-rna-Core-Text.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M19-GAP-00020", + "gapId": "rna:Core:Volume", + "ownerFamily": "Core", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M19-GAP-00020-rna-Core-Volume.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M19-GAP-00020.py -- tests/files/web/generated/M19-GAP-00020-rna-Core-Volume.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M19-GAP-00020", + "comparator": "node tools/web/check-generated-gap.mjs --task M19-GAP-00020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00001", + "gapId": "physics:BakeSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00001-physics-BakeSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00001.py -- tests/files/web/generated/M20-GAP-00001-physics-BakeSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00002", + "gapId": "physics:BlendDataParticles", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00002-physics-BlendDataParticles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00002.py -- tests/files/web/generated/M20-GAP-00002-physics-BlendDataParticles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00003", + "gapId": "physics:BoidRule", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00003-physics-BoidRule.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00003.py -- tests/files/web/generated/M20-GAP-00003-physics-BoidRule.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00004", + "gapId": "physics:BoidRuleAverageSpeed", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00004-physics-BoidRuleAverageSpeed.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00004.py -- tests/files/web/generated/M20-GAP-00004-physics-BoidRuleAverageSpeed.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00005", + "gapId": "physics:BoidRuleAvoid", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00005-physics-BoidRuleAvoid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00005.py -- tests/files/web/generated/M20-GAP-00005-physics-BoidRuleAvoid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00006", + "gapId": "physics:BoidRuleAvoidCollision", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00006-physics-BoidRuleAvoidCollision.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00006.py -- tests/files/web/generated/M20-GAP-00006-physics-BoidRuleAvoidCollision.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00007", + "gapId": "physics:BoidRuleFight", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00007-physics-BoidRuleFight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00007.py -- tests/files/web/generated/M20-GAP-00007-physics-BoidRuleFight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00008", + "gapId": "physics:BoidRuleFollowLeader", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00008-physics-BoidRuleFollowLeader.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00008.py -- tests/files/web/generated/M20-GAP-00008-physics-BoidRuleFollowLeader.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00009", + "gapId": "physics:BoidRuleGoal", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00009-physics-BoidRuleGoal.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00009.py -- tests/files/web/generated/M20-GAP-00009-physics-BoidRuleGoal.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00010", + "gapId": "physics:BoidSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00010-physics-BoidSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00010.py -- tests/files/web/generated/M20-GAP-00010-physics-BoidSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00011", + "gapId": "physics:BoidState", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00011-physics-BoidState.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00011.py -- tests/files/web/generated/M20-GAP-00011-physics-BoidState.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00012", + "gapId": "physics:ChildParticle", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00012-physics-ChildParticle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00012.py -- tests/files/web/generated/M20-GAP-00012-physics-ChildParticle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00013", + "gapId": "physics:ClothCollisionSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00013-physics-ClothCollisionSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00013.py -- tests/files/web/generated/M20-GAP-00013-physics-ClothCollisionSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00014", + "gapId": "physics:ClothModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00014-physics-ClothModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00014.py -- tests/files/web/generated/M20-GAP-00014-physics-ClothModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00015", + "gapId": "physics:ClothSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00015-physics-ClothSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00015.py -- tests/files/web/generated/M20-GAP-00015-physics-ClothSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00016", + "gapId": "physics:ClothSolverResult", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00016-physics-ClothSolverResult.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00016.py -- tests/files/web/generated/M20-GAP-00016-physics-ClothSolverResult.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00017", + "gapId": "physics:CollisionModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00017-physics-CollisionModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00017.py -- tests/files/web/generated/M20-GAP-00017-physics-CollisionModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00018", + "gapId": "physics:CollisionSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00018-physics-CollisionSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00018.py -- tests/files/web/generated/M20-GAP-00018-physics-CollisionSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00019", + "gapId": "physics:DynamicPaintBrushSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00019-physics-DynamicPaintBrushSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00019.py -- tests/files/web/generated/M20-GAP-00019-physics-DynamicPaintBrushSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00020", + "gapId": "physics:DynamicPaintCanvasSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00020-physics-DynamicPaintCanvasSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00020.py -- tests/files/web/generated/M20-GAP-00020-physics-DynamicPaintCanvasSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00020", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00021", + "gapId": "physics:DynamicPaintModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00021-physics-DynamicPaintModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00021.py -- tests/files/web/generated/M20-GAP-00021-physics-DynamicPaintModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00021", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00022", + "gapId": "physics:DynamicPaintSurface", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00022-physics-DynamicPaintSurface.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00022.py -- tests/files/web/generated/M20-GAP-00022-physics-DynamicPaintSurface.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00022", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00023", + "gapId": "physics:DynamicPaintSurfaces", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00023-physics-DynamicPaintSurfaces.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00023.py -- tests/files/web/generated/M20-GAP-00023-physics-DynamicPaintSurfaces.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00023", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00024", + "gapId": "physics:EffectorWeights", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00024-physics-EffectorWeights.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00024.py -- tests/files/web/generated/M20-GAP-00024-physics-EffectorWeights.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00024", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00025", + "gapId": "physics:FieldSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00025-physics-FieldSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00025.py -- tests/files/web/generated/M20-GAP-00025-physics-FieldSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00025", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00026", + "gapId": "physics:FluidDomainSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00026-physics-FluidDomainSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00026.py -- tests/files/web/generated/M20-GAP-00026-physics-FluidDomainSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00026", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00027", + "gapId": "physics:FluidEffectorSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00027-physics-FluidEffectorSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00027.py -- tests/files/web/generated/M20-GAP-00027-physics-FluidEffectorSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00027", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00028", + "gapId": "physics:FluidFlowSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00028-physics-FluidFlowSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00028.py -- tests/files/web/generated/M20-GAP-00028-physics-FluidFlowSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00028", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00029", + "gapId": "physics:FluidModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00029-physics-FluidModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00029.py -- tests/files/web/generated/M20-GAP-00029-physics-FluidModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00029", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00030", + "gapId": "physics:GeometryNodeAccumulateField", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00030-physics-GeometryNodeAccumulateField.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00030.py -- tests/files/web/generated/M20-GAP-00030-physics-GeometryNodeAccumulateField.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00030", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00031", + "gapId": "physics:GeometryNodeFieldAtIndex", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00031-physics-GeometryNodeFieldAtIndex.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00031.py -- tests/files/web/generated/M20-GAP-00031-physics-GeometryNodeFieldAtIndex.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00031", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00032", + "gapId": "physics:GeometryNodeFieldAverage", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00032-physics-GeometryNodeFieldAverage.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00032.py -- tests/files/web/generated/M20-GAP-00032-physics-GeometryNodeFieldAverage.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00032", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00033", + "gapId": "physics:GeometryNodeFieldMinAndMax", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00033-physics-GeometryNodeFieldMinAndMax.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00033.py -- tests/files/web/generated/M20-GAP-00033-physics-GeometryNodeFieldMinAndMax.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00033", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00034", + "gapId": "physics:GeometryNodeFieldOnDomain", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00034-physics-GeometryNodeFieldOnDomain.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00034.py -- tests/files/web/generated/M20-GAP-00034-physics-GeometryNodeFieldOnDomain.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00034", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00035", + "gapId": "physics:GeometryNodeFieldToGrid", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00035-physics-GeometryNodeFieldToGrid.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00035.py -- tests/files/web/generated/M20-GAP-00035-physics-GeometryNodeFieldToGrid.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00035", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00036", + "gapId": "physics:GeometryNodeFieldToGridItem", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00036-physics-GeometryNodeFieldToGridItem.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00036.py -- tests/files/web/generated/M20-GAP-00036-physics-GeometryNodeFieldToGridItem.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00036", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00037", + "gapId": "physics:GeometryNodeFieldToGridItems", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00037-physics-GeometryNodeFieldToGridItems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00037.py -- tests/files/web/generated/M20-GAP-00037-physics-GeometryNodeFieldToGridItems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00037", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00038", + "gapId": "physics:GeometryNodeFieldToList", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00038-physics-GeometryNodeFieldToList.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00038.py -- tests/files/web/generated/M20-GAP-00038-physics-GeometryNodeFieldToList.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00038", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00039", + "gapId": "physics:GeometryNodeFieldToListItem", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00039-physics-GeometryNodeFieldToListItem.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00039.py -- tests/files/web/generated/M20-GAP-00039-physics-GeometryNodeFieldToListItem.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00039", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00040", + "gapId": "physics:GeometryNodeFieldToListItems", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00040-physics-GeometryNodeFieldToListItems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00040.py -- tests/files/web/generated/M20-GAP-00040-physics-GeometryNodeFieldToListItems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00040", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00041", + "gapId": "physics:GeometryNodeFieldVariance", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00041-physics-GeometryNodeFieldVariance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00041.py -- tests/files/web/generated/M20-GAP-00041-physics-GeometryNodeFieldVariance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00041", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00042", + "gapId": "physics:Particle", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00042-physics-Particle.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00042.py -- tests/files/web/generated/M20-GAP-00042-physics-Particle.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00042", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00043", + "gapId": "physics:ParticleBrush", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00043-physics-ParticleBrush.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00043.py -- tests/files/web/generated/M20-GAP-00043-physics-ParticleBrush.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00043", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00044", + "gapId": "physics:ParticleDupliWeight", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00044-physics-ParticleDupliWeight.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00044.py -- tests/files/web/generated/M20-GAP-00044-physics-ParticleDupliWeight.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00044", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00045", + "gapId": "physics:ParticleEdit", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00045-physics-ParticleEdit.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00045.py -- tests/files/web/generated/M20-GAP-00045-physics-ParticleEdit.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00045", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00046", + "gapId": "physics:ParticleHairKey", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00046-physics-ParticleHairKey.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00046.py -- tests/files/web/generated/M20-GAP-00046-physics-ParticleHairKey.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00046", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00047", + "gapId": "physics:ParticleInstanceModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00047-physics-ParticleInstanceModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00047.py -- tests/files/web/generated/M20-GAP-00047-physics-ParticleInstanceModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00047", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00048", + "gapId": "physics:ParticleKey", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00048-physics-ParticleKey.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00048.py -- tests/files/web/generated/M20-GAP-00048-physics-ParticleKey.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00048", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00049", + "gapId": "physics:ParticleSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00049-physics-ParticleSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00049.py -- tests/files/web/generated/M20-GAP-00049-physics-ParticleSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00049", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00050", + "gapId": "physics:ParticleSettingsTextureSlot", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00050-physics-ParticleSettingsTextureSlot.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00050.py -- tests/files/web/generated/M20-GAP-00050-physics-ParticleSettingsTextureSlot.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00050", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00051", + "gapId": "physics:ParticleSettingsTextureSlots", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00051-physics-ParticleSettingsTextureSlots.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00051.py -- tests/files/web/generated/M20-GAP-00051-physics-ParticleSettingsTextureSlots.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00051", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00052", + "gapId": "physics:ParticleSystem", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00052-physics-ParticleSystem.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00052.py -- tests/files/web/generated/M20-GAP-00052-physics-ParticleSystem.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00052", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00053", + "gapId": "physics:ParticleSystemModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00053-physics-ParticleSystemModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00053.py -- tests/files/web/generated/M20-GAP-00053-physics-ParticleSystemModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00053", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00054", + "gapId": "physics:ParticleSystems", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00054-physics-ParticleSystems.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00054.py -- tests/files/web/generated/M20-GAP-00054-physics-ParticleSystems.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00054", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00055", + "gapId": "physics:ParticleTarget", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00055-physics-ParticleTarget.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00055.py -- tests/files/web/generated/M20-GAP-00055-physics-ParticleTarget.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00055", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00056", + "gapId": "physics:PointCache", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00056-physics-PointCache.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00056.py -- tests/files/web/generated/M20-GAP-00056-physics-PointCache.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00056", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00057", + "gapId": "physics:PointCacheItem", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00057-physics-PointCacheItem.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00057.py -- tests/files/web/generated/M20-GAP-00057-physics-PointCacheItem.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00057", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00058", + "gapId": "physics:PointCaches", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00058-physics-PointCaches.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00058.py -- tests/files/web/generated/M20-GAP-00058-physics-PointCaches.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00058", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00059", + "gapId": "physics:RigidBodyConstraint", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00059-physics-RigidBodyConstraint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00059.py -- tests/files/web/generated/M20-GAP-00059-physics-RigidBodyConstraint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00059", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00060", + "gapId": "physics:RigidBodyObject", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00060-physics-RigidBodyObject.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00060.py -- tests/files/web/generated/M20-GAP-00060-physics-RigidBodyObject.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00060", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00061", + "gapId": "physics:RigidBodyWorld", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00061-physics-RigidBodyWorld.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00061.py -- tests/files/web/generated/M20-GAP-00061-physics-RigidBodyWorld.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00061", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00062", + "gapId": "physics:SPHFluidSettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00062-physics-SPHFluidSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00062.py -- tests/files/web/generated/M20-GAP-00062-physics-SPHFluidSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00062", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00063", + "gapId": "physics:ShaderNodeParticleInfo", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00063-physics-ShaderNodeParticleInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00063.py -- tests/files/web/generated/M20-GAP-00063-physics-ShaderNodeParticleInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00063", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00064", + "gapId": "physics:SoftBodyModifier", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00064-physics-SoftBodyModifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00064.py -- tests/files/web/generated/M20-GAP-00064-physics-SoftBodyModifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00064", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00065", + "gapId": "physics:SoftBodySettings", + "ownerFamily": "PHYSICS", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00065-physics-SoftBodySettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00065.py -- tests/files/web/generated/M20-GAP-00065-physics-SoftBodySettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00065", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00066", + "gapId": "strip:ADD", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00066-strip-ADD.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00066.py -- tests/files/web/generated/M20-GAP-00066-strip-ADD.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00066", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00067", + "gapId": "strip:ADJUSTMENT", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00067-strip-ADJUSTMENT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00067.py -- tests/files/web/generated/M20-GAP-00067-strip-ADJUSTMENT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00067", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00068", + "gapId": "strip:ALPHA_OVER", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00068-strip-ALPHA_OVER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00068.py -- tests/files/web/generated/M20-GAP-00068-strip-ALPHA_OVER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00068", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00069", + "gapId": "strip:ALPHA_UNDER", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00069-strip-ALPHA_UNDER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00069.py -- tests/files/web/generated/M20-GAP-00069-strip-ALPHA_UNDER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00069", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00070", + "gapId": "strip:COLOR", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00070-strip-COLOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00070.py -- tests/files/web/generated/M20-GAP-00070-strip-COLOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00070", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00071", + "gapId": "strip:COLORMIX", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00071-strip-COLORMIX.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00071.py -- tests/files/web/generated/M20-GAP-00071-strip-COLORMIX.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00071", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00072", + "gapId": "strip:COMPOSITOR", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00072-strip-COMPOSITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00072.py -- tests/files/web/generated/M20-GAP-00072-strip-COMPOSITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00072", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00073", + "gapId": "strip:CROSS", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00073-strip-CROSS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00073.py -- tests/files/web/generated/M20-GAP-00073-strip-CROSS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00073", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00074", + "gapId": "strip:GAMMA_CROSS", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00074-strip-GAMMA_CROSS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00074.py -- tests/files/web/generated/M20-GAP-00074-strip-GAMMA_CROSS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00074", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00075", + "gapId": "strip:GAUSSIAN_BLUR", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00075-strip-GAUSSIAN_BLUR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00075.py -- tests/files/web/generated/M20-GAP-00075-strip-GAUSSIAN_BLUR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00075", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00076", + "gapId": "strip:GLOW", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00076-strip-GLOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00076.py -- tests/files/web/generated/M20-GAP-00076-strip-GLOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00076", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00077", + "gapId": "strip:IMAGE", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00077-strip-IMAGE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00077.py -- tests/files/web/generated/M20-GAP-00077-strip-IMAGE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00077", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00078", + "gapId": "strip:MASK", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00078-strip-MASK.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00078.py -- tests/files/web/generated/M20-GAP-00078-strip-MASK.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00078", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00079", + "gapId": "strip:META", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00079-strip-META.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00079.py -- tests/files/web/generated/M20-GAP-00079-strip-META.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00079", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00080", + "gapId": "strip:MOVIE", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00080-strip-MOVIE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00080.py -- tests/files/web/generated/M20-GAP-00080-strip-MOVIE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00080", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00081", + "gapId": "strip:MOVIECLIP", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00081-strip-MOVIECLIP.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00081.py -- tests/files/web/generated/M20-GAP-00081-strip-MOVIECLIP.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00081", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00082", + "gapId": "strip:MULTICAM", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00082-strip-MULTICAM.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00082.py -- tests/files/web/generated/M20-GAP-00082-strip-MULTICAM.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00082", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00083", + "gapId": "strip:MULTIPLY", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00083-strip-MULTIPLY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00083.py -- tests/files/web/generated/M20-GAP-00083-strip-MULTIPLY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00083", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00084", + "gapId": "strip:SCENE", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00084-strip-SCENE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00084.py -- tests/files/web/generated/M20-GAP-00084-strip-SCENE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00084", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00085", + "gapId": "strip:SOUND", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00085-strip-SOUND.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00085.py -- tests/files/web/generated/M20-GAP-00085-strip-SOUND.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00085", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00086", + "gapId": "strip:SPEED", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00086-strip-SPEED.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00086.py -- tests/files/web/generated/M20-GAP-00086-strip-SPEED.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00086", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00087", + "gapId": "strip:SUBTRACT", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00087-strip-SUBTRACT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00087.py -- tests/files/web/generated/M20-GAP-00087-strip-SUBTRACT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00087", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00088", + "gapId": "strip:TEXT", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00088-strip-TEXT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00088.py -- tests/files/web/generated/M20-GAP-00088-strip-TEXT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00088", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M20-GAP-00089", + "gapId": "strip:WIPE", + "ownerFamily": "SEQUENCER", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M20-GAP-00089-strip-WIPE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M20-GAP-00089.py -- tests/files/web/generated/M20-GAP-00089-strip-WIPE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M20-GAP-00089", + "comparator": "node tools/web/check-generated-gap.mjs --task M20-GAP-00089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00001", + "gapId": "area:CLIP_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00001-area-CLIP_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00001.py -- tests/files/web/generated/M21-GAP-00001-area-CLIP_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00002", + "gapId": "area:CONSOLE", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00002-area-CONSOLE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00002.py -- tests/files/web/generated/M21-GAP-00002-area-CONSOLE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00003", + "gapId": "area:DOPESHEET_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00003-area-DOPESHEET_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00003.py -- tests/files/web/generated/M21-GAP-00003-area-DOPESHEET_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00004", + "gapId": "area:EMPTY", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00004-area-EMPTY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00004.py -- tests/files/web/generated/M21-GAP-00004-area-EMPTY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00005", + "gapId": "area:FILE_BROWSER", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00005-area-FILE_BROWSER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00005.py -- tests/files/web/generated/M21-GAP-00005-area-FILE_BROWSER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00006", + "gapId": "area:GRAPH_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00006-area-GRAPH_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00006.py -- tests/files/web/generated/M21-GAP-00006-area-GRAPH_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00007", + "gapId": "area:IMAGE_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00007-area-IMAGE_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00007.py -- tests/files/web/generated/M21-GAP-00007-area-IMAGE_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00008", + "gapId": "area:INFO", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00008-area-INFO.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00008.py -- tests/files/web/generated/M21-GAP-00008-area-INFO.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00009", + "gapId": "area:NLA_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00009-area-NLA_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00009.py -- tests/files/web/generated/M21-GAP-00009-area-NLA_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00010", + "gapId": "area:NODE_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00010-area-NODE_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00010.py -- tests/files/web/generated/M21-GAP-00010-area-NODE_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00011", + "gapId": "area:OUTLINER", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00011-area-OUTLINER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00011.py -- tests/files/web/generated/M21-GAP-00011-area-OUTLINER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00012", + "gapId": "area:PREFERENCES", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00012-area-PREFERENCES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00012.py -- tests/files/web/generated/M21-GAP-00012-area-PREFERENCES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00013", + "gapId": "area:PROPERTIES", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00013-area-PROPERTIES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00013.py -- tests/files/web/generated/M21-GAP-00013-area-PROPERTIES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00014", + "gapId": "area:SEQUENCE_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00014-area-SEQUENCE_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00014.py -- tests/files/web/generated/M21-GAP-00014-area-SEQUENCE_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00015", + "gapId": "area:SPREADSHEET", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00015-area-SPREADSHEET.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00015.py -- tests/files/web/generated/M21-GAP-00015-area-SPREADSHEET.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00016", + "gapId": "area:STATUSBAR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00016-area-STATUSBAR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00016.py -- tests/files/web/generated/M21-GAP-00016-area-STATUSBAR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00017", + "gapId": "area:TEXT_EDITOR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00017-area-TEXT_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00017.py -- tests/files/web/generated/M21-GAP-00017-area-TEXT_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00018", + "gapId": "area:TOPBAR", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00018-area-TOPBAR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00018.py -- tests/files/web/generated/M21-GAP-00018-area-TOPBAR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00019", + "gapId": "area:VIEW_3D", + "ownerFamily": "EDITOR", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00019-area-VIEW_3D.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00019.py -- tests/files/web/generated/M21-GAP-00019-area-VIEW_3D.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00020", + "gapId": "io:anim.keying_set_export", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00020-io-anim.keying_set_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00020.py -- tests/files/web/generated/M21-GAP-00020-io-anim.keying_set_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00020", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00021", + "gapId": "io:collection.export_all", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00021-io-collection.export_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00021.py -- tests/files/web/generated/M21-GAP-00021-io-collection.export_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00021", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00022", + "gapId": "io:collection.exporter_add", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00022-io-collection.exporter_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00022.py -- tests/files/web/generated/M21-GAP-00022-io-collection.exporter_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00022", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00023", + "gapId": "io:collection.exporter_export", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00023-io-collection.exporter_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00023.py -- tests/files/web/generated/M21-GAP-00023-io-collection.exporter_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00023", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00024", + "gapId": "io:collection.exporter_move", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00024-io-collection.exporter_move.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00024.py -- tests/files/web/generated/M21-GAP-00024-io-collection.exporter_move.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00024", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00025", + "gapId": "io:collection.exporter_remove", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00025-io-collection.exporter_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00025.py -- tests/files/web/generated/M21-GAP-00025-io-collection.exporter_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00025", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00026", + "gapId": "io:collection.importer_add", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00026-io-collection.importer_add.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00026.py -- tests/files/web/generated/M21-GAP-00026-io-collection.importer_add.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00026", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00027", + "gapId": "io:collection.importer_remove", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00027-io-collection.importer_remove.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00027.py -- tests/files/web/generated/M21-GAP-00027-io-collection.importer_remove.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00027", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00028", + "gapId": "io:export_anim.bvh", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00028-io-export_anim.bvh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00028.py -- tests/files/web/generated/M21-GAP-00028-io-export_anim.bvh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00028", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00029", + "gapId": "io:export_scene.fbx", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00029-io-export_scene.fbx.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00029.py -- tests/files/web/generated/M21-GAP-00029-io-export_scene.fbx.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00029", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00030", + "gapId": "io:export_scene.gltf", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00030-io-export_scene.gltf.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00030.py -- tests/files/web/generated/M21-GAP-00030-io-export_scene.gltf.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00030", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00031", + "gapId": "io:image.import_as_mesh_planes", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00031-io-image.import_as_mesh_planes.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00031.py -- tests/files/web/generated/M21-GAP-00031-io-image.import_as_mesh_planes.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00031", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00032", + "gapId": "io:import_anim.bvh", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00032-io-import_anim.bvh.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00032.py -- tests/files/web/generated/M21-GAP-00032-io-import_anim.bvh.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00032", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00033", + "gapId": "io:import_curve.svg", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00033-io-import_curve.svg.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00033.py -- tests/files/web/generated/M21-GAP-00033-io-import_curve.svg.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00033", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00034", + "gapId": "io:import_scene.fbx", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00034-io-import_scene.fbx.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00034.py -- tests/files/web/generated/M21-GAP-00034-io-import_scene.fbx.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00034", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00035", + "gapId": "io:import_scene.gltf", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00035-io-import_scene.gltf.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00035.py -- tests/files/web/generated/M21-GAP-00035-io-import_scene.gltf.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00035", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00036", + "gapId": "io:node.add_import_node", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00036-io-node.add_import_node.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00036.py -- tests/files/web/generated/M21-GAP-00036-io-node.add_import_node.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00036", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00037", + "gapId": "io:object.volume_import", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00037-io-object.volume_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00037.py -- tests/files/web/generated/M21-GAP-00037-io-object.volume_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00037", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00038", + "gapId": "io:preferences.keyconfig_export", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00038-io-preferences.keyconfig_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00038.py -- tests/files/web/generated/M21-GAP-00038-io-preferences.keyconfig_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00038", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00039", + "gapId": "io:preferences.keyconfig_import", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00039-io-preferences.keyconfig_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00039.py -- tests/files/web/generated/M21-GAP-00039-io-preferences.keyconfig_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00039", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00040", + "gapId": "io:sequencer.export_subtitles", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00040-io-sequencer.export_subtitles.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00040.py -- tests/files/web/generated/M21-GAP-00040-io-sequencer.export_subtitles.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00040", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00041", + "gapId": "io:uv.export_layout", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00041-io-uv.export_layout.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00041.py -- tests/files/web/generated/M21-GAP-00041-io-uv.export_layout.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00041", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00042", + "gapId": "io:wm.collection_export_all", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00042-io-wm.collection_export_all.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00042.py -- tests/files/web/generated/M21-GAP-00042-io-wm.collection_export_all.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00042", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00043", + "gapId": "io:wm.drop_import_file", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00043-io-wm.drop_import_file.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00043.py -- tests/files/web/generated/M21-GAP-00043-io-wm.drop_import_file.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00043", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00044", + "gapId": "io:wm.fbx_import", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00044-io-wm.fbx_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00044.py -- tests/files/web/generated/M21-GAP-00044-io-wm.fbx_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00044", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00045", + "gapId": "io:wm.grease_pencil_export_svg", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00045-io-wm.grease_pencil_export_svg.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00045.py -- tests/files/web/generated/M21-GAP-00045-io-wm.grease_pencil_export_svg.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00045", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00046", + "gapId": "io:wm.grease_pencil_import_svg", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00046-io-wm.grease_pencil_import_svg.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00046.py -- tests/files/web/generated/M21-GAP-00046-io-wm.grease_pencil_import_svg.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00046", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00047", + "gapId": "io:wm.obj_export", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00047-io-wm.obj_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00047.py -- tests/files/web/generated/M21-GAP-00047-io-wm.obj_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00047", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00048", + "gapId": "io:wm.obj_import", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00048-io-wm.obj_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00048.py -- tests/files/web/generated/M21-GAP-00048-io-wm.obj_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00048", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00049", + "gapId": "io:wm.ply_export", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00049-io-wm.ply_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00049.py -- tests/files/web/generated/M21-GAP-00049-io-wm.ply_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00049", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00050", + "gapId": "io:wm.ply_import", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00050-io-wm.ply_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00050.py -- tests/files/web/generated/M21-GAP-00050-io-wm.ply_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00050", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00051", + "gapId": "io:wm.stl_export", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00051-io-wm.stl_export.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00051.py -- tests/files/web/generated/M21-GAP-00051-io-wm.stl_export.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00051", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00052", + "gapId": "io:wm.stl_import", + "ownerFamily": "IMPORT_EXPORT", + "sourceTask": "M15-01D", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00052-io-wm.stl_import.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00052.py -- tests/files/web/generated/M21-GAP-00052-io-wm.stl_import.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00052", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00053", + "gapId": "keymap-item:3D View Generic:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00053-keymap-item-3D-View-Generic-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00053.py -- tests/files/web/generated/M21-GAP-00053-keymap-item-3D-View-Generic-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00053", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00054", + "gapId": "keymap-item:3D View Generic:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00054-keymap-item-3D-View-Generic-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00054.py -- tests/files/web/generated/M21-GAP-00054-keymap-item-3D-View-Generic-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00054", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00055", + "gapId": "keymap-item:3D View Tool: Bend:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00055-keymap-item-3D-View-Tool-Bend-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00055.py -- tests/files/web/generated/M21-GAP-00055-keymap-item-3D-View-Tool-Bend-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00055", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00056", + "gapId": "keymap-item:3D View Tool: Breakdowner:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00056-keymap-item-3D-View-Tool-Breakdowner-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00056.py -- tests/files/web/generated/M21-GAP-00056-keymap-item-3D-View-Tool-Breakdowner-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00056", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00057", + "gapId": "keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00057-keymap-item-3D-View-Tool-Cursor-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00057.py -- tests/files/web/generated/M21-GAP-00057-keymap-item-3D-View-Tool-Cursor-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00057", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00058", + "gapId": "keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00058-keymap-item-3D-View-Tool-Cursor-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00058.py -- tests/files/web/generated/M21-GAP-00058-keymap-item-3D-View-Tool-Cursor-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00058", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00059", + "gapId": "keymap-item:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00059-keymap-item-3D-View-Tool-Edit-Armature-B-Bone-Size-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00059.py -- tests/files/web/generated/M21-GAP-00059-keymap-item-3D-View-Tool-Edit-Armature-B-Bone-Size-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00059", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00060", + "gapId": "keymap-item:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00060-keymap-item-3D-View-Tool-Edit-Armature-Bone-Envelope-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00060.py -- tests/files/web/generated/M21-GAP-00060-keymap-item-3D-View-Tool-Edit-Armature-Bone-Envelope-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00060", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00061", + "gapId": "keymap-item:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00061-keymap-item-3D-View-Tool-Edit-Armature-Extrude-to-Cursor-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00061.py -- tests/files/web/generated/M21-GAP-00061-keymap-item-3D-View-Tool-Edit-Armature-Extrude-to-Cursor-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00061", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00062", + "gapId": "keymap-item:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00062-keymap-item-3D-View-Tool-Edit-Armature-Extrude-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00062.py -- tests/files/web/generated/M21-GAP-00062-keymap-item-3D-View-Tool-Edit-Armature-Extrude-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00062", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00063", + "gapId": "keymap-item:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00063-keymap-item-3D-View-Tool-Edit-Armature-Roll-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00063.py -- tests/files/web/generated/M21-GAP-00063-keymap-item-3D-View-Tool-Edit-Armature-Roll-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00063", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00064", + "gapId": "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00064-keymap-item-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00064.py -- tests/files/web/generated/M21-GAP-00064-keymap-item-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00064", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00065", + "gapId": "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00065-keymap-item-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00065.py -- tests/files/web/generated/M21-GAP-00065-keymap-item-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00065", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00066", + "gapId": "keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00066-keymap-item-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00066.py -- tests/files/web/generated/M21-GAP-00066-keymap-item-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00066", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00067", + "gapId": "keymap-item:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00067-keymap-item-3D-View-Tool-Edit-Curve-Draw-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00067.py -- tests/files/web/generated/M21-GAP-00067-keymap-item-3D-View-Tool-Edit-Curve-Draw-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00067", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00068", + "gapId": "keymap-item:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00068-keymap-item-3D-View-Tool-Edit-Curve-Extrude-to-Cursor-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00068.py -- tests/files/web/generated/M21-GAP-00068-keymap-item-3D-View-Tool-Edit-Curve-Extrude-to-Cursor-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00068", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00069", + "gapId": "keymap-item:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00069-keymap-item-3D-View-Tool-Edit-Curve-Extrude-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00069.py -- tests/files/web/generated/M21-GAP-00069-keymap-item-3D-View-Tool-Edit-Curve-Extrude-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00069", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00070", + "gapId": "keymap-item:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00070-keymap-item-3D-View-Tool-Edit-Curve-Radius-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00070.py -- tests/files/web/generated/M21-GAP-00070-keymap-item-3D-View-Tool-Edit-Curve-Radius-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00070", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00071", + "gapId": "keymap-item:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00071-keymap-item-3D-View-Tool-Edit-Curve-Randomize-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00071.py -- tests/files/web/generated/M21-GAP-00071-keymap-item-3D-View-Tool-Edit-Curve-Randomize-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00071", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00072", + "gapId": "keymap-item:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00072-keymap-item-3D-View-Tool-Edit-Curve-Tilt-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00072.py -- tests/files/web/generated/M21-GAP-00072-keymap-item-3D-View-Tool-Edit-Curve-Tilt-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00072", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00073", + "gapId": "keymap-item:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00073-keymap-item-3D-View-Tool-Edit-Curves-Draw-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00073.py -- tests/files/web/generated/M21-GAP-00073-keymap-item-3D-View-Tool-Edit-Curves-Draw-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00073", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00074", + "gapId": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00074-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00074.py -- tests/files/web/generated/M21-GAP-00074-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00074", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00075", + "gapId": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00075-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00075.py -- tests/files/web/generated/M21-GAP-00075-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00075", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00076", + "gapId": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00076-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00076.py -- tests/files/web/generated/M21-GAP-00076-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00076", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00077", + "gapId": "keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00077-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00077.py -- tests/files/web/generated/M21-GAP-00077-keymap-item-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00077", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00078", + "gapId": "keymap-item:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00078-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Gradient-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00078.py -- tests/files/web/generated/M21-GAP-00078-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Gradient-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00078", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00079", + "gapId": "keymap-item:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00079-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Interpolate-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00079.py -- tests/files/web/generated/M21-GAP-00079-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Interpolate-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00079", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00080", + "gapId": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00080-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00080.py -- tests/files/web/generated/M21-GAP-00080-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00080", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00081", + "gapId": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00081-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00081.py -- tests/files/web/generated/M21-GAP-00081-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00081", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00082", + "gapId": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00082-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00082.py -- tests/files/web/generated/M21-GAP-00082-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00082", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00083", + "gapId": "keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00083-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00083.py -- tests/files/web/generated/M21-GAP-00083-keymap-item-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00083", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00084", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00084-keymap-item-3D-View-Tool-Edit-Mesh-Bevel-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00084.py -- tests/files/web/generated/M21-GAP-00084-keymap-item-3D-View-Tool-Edit-Mesh-Bevel-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00084", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00085", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00085-keymap-item-3D-View-Tool-Edit-Mesh-Bisect-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00085.py -- tests/files/web/generated/M21-GAP-00085-keymap-item-3D-View-Tool-Edit-Mesh-Bisect-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00085", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00086", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00086-keymap-item-3D-View-Tool-Edit-Mesh-Edge-Slide-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00086.py -- tests/files/web/generated/M21-GAP-00086-keymap-item-3D-View-Tool-Edit-Mesh-Edge-Slide-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00086", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00087", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00087-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Along-Normals-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00087.py -- tests/files/web/generated/M21-GAP-00087-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Along-Normals-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00087", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00088", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00088-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Individual-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00088.py -- tests/files/web/generated/M21-GAP-00088-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Individual-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00088", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00089", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00089-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Manifold-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00089.py -- tests/files/web/generated/M21-GAP-00089-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Manifold-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00089", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00090", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00090-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Region-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00090.py -- tests/files/web/generated/M21-GAP-00090-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-Region-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00090", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00091", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00091-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-to-Cursor-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00091.py -- tests/files/web/generated/M21-GAP-00091-keymap-item-3D-View-Tool-Edit-Mesh-Extrude-to-Cursor-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00091", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00092", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00092-keymap-item-3D-View-Tool-Edit-Mesh-Inset-Faces-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00092.py -- tests/files/web/generated/M21-GAP-00092-keymap-item-3D-View-Tool-Edit-Mesh-Inset-Faces-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00092", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00093", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00093-keymap-item-3D-View-Tool-Edit-Mesh-Knife-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00093.py -- tests/files/web/generated/M21-GAP-00093-keymap-item-3D-View-Tool-Edit-Mesh-Knife-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00093", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00094", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00094-keymap-item-3D-View-Tool-Edit-Mesh-Loop-Cut-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00094.py -- tests/files/web/generated/M21-GAP-00094-keymap-item-3D-View-Tool-Edit-Mesh-Loop-Cut-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00094", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00095", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00095-keymap-item-3D-View-Tool-Edit-Mesh-Offset-Edge-Loop-Cut-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00095.py -- tests/files/web/generated/M21-GAP-00095-keymap-item-3D-View-Tool-Edit-Mesh-Offset-Edge-Loop-Cut-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00095", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00096", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00096-keymap-item-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00096.py -- tests/files/web/generated/M21-GAP-00096-keymap-item-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00096", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00097", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00097-keymap-item-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00097.py -- tests/files/web/generated/M21-GAP-00097-keymap-item-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00097", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00098", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00098-keymap-item-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00098.py -- tests/files/web/generated/M21-GAP-00098-keymap-item-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00098", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00099", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00099-keymap-item-3D-View-Tool-Edit-Mesh-Push-Pull-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00099.py -- tests/files/web/generated/M21-GAP-00099-keymap-item-3D-View-Tool-Edit-Mesh-Push-Pull-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00099", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00100", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00100-keymap-item-3D-View-Tool-Edit-Mesh-Randomize-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00100.py -- tests/files/web/generated/M21-GAP-00100-keymap-item-3D-View-Tool-Edit-Mesh-Randomize-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00100", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00101", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00101-keymap-item-3D-View-Tool-Edit-Mesh-Rip-Edge-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00101.py -- tests/files/web/generated/M21-GAP-00101-keymap-item-3D-View-Tool-Edit-Mesh-Rip-Edge-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00101", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00102", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00102-keymap-item-3D-View-Tool-Edit-Mesh-Rip-Region-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00102.py -- tests/files/web/generated/M21-GAP-00102-keymap-item-3D-View-Tool-Edit-Mesh-Rip-Region-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00102", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00103", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00103-keymap-item-3D-View-Tool-Edit-Mesh-Shrink-Fatten-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00103.py -- tests/files/web/generated/M21-GAP-00103-keymap-item-3D-View-Tool-Edit-Mesh-Shrink-Fatten-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00103", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00104", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00104-keymap-item-3D-View-Tool-Edit-Mesh-Smooth-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00104.py -- tests/files/web/generated/M21-GAP-00104-keymap-item-3D-View-Tool-Edit-Mesh-Smooth-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00104", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00105", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00105-keymap-item-3D-View-Tool-Edit-Mesh-Spin-Duplicates-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00105.py -- tests/files/web/generated/M21-GAP-00105-keymap-item-3D-View-Tool-Edit-Mesh-Spin-Duplicates-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00105", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00106", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00106-keymap-item-3D-View-Tool-Edit-Mesh-Spin-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00106.py -- tests/files/web/generated/M21-GAP-00106-keymap-item-3D-View-Tool-Edit-Mesh-Spin-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00106", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00107", + "gapId": "keymap-item:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00107-keymap-item-3D-View-Tool-Edit-Mesh-To-Sphere-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00107.py -- tests/files/web/generated/M21-GAP-00107-keymap-item-3D-View-Tool-Edit-Mesh-To-Sphere-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00107", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00108", + "gapId": "keymap-item:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00108-keymap-item-3D-View-Tool-Edit-Mesh-Vertex-Slide-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00108.py -- tests/files/web/generated/M21-GAP-00108-keymap-item-3D-View-Tool-Edit-Mesh-Vertex-Slide-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00108", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00109", + "gapId": "keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00109-keymap-item-3D-View-Tool-Edit-Text-Select-Text-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00109.py -- tests/files/web/generated/M21-GAP-00109-keymap-item-3D-View-Tool-Edit-Text-Select-Text-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00109", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00110", + "gapId": "keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00110-keymap-item-3D-View-Tool-Edit-Text-Select-Text-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00110.py -- tests/files/web/generated/M21-GAP-00110-keymap-item-3D-View-Tool-Edit-Text-Select-Text-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00110", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00111", + "gapId": "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00111-keymap-item-3D-View-Tool-Measure-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00111.py -- tests/files/web/generated/M21-GAP-00111-keymap-item-3D-View-Tool-Measure-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00111", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00112", + "gapId": "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00112-keymap-item-3D-View-Tool-Measure-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00112.py -- tests/files/web/generated/M21-GAP-00112-keymap-item-3D-View-Tool-Measure-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00112", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00113", + "gapId": "keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00113-keymap-item-3D-View-Tool-Measure-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00113.py -- tests/files/web/generated/M21-GAP-00113-keymap-item-3D-View-Tool-Measure-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00113", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00114", + "gapId": "keymap-item:3D View Tool: Move:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00114-keymap-item-3D-View-Tool-Move-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00114.py -- tests/files/web/generated/M21-GAP-00114-keymap-item-3D-View-Tool-Move-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00114", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00115", + "gapId": "keymap-item:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00115-keymap-item-3D-View-Tool-Object-Add-Primitive-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00115.py -- tests/files/web/generated/M21-GAP-00115-keymap-item-3D-View-Tool-Object-Add-Primitive-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00115", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00116", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00116-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00116.py -- tests/files/web/generated/M21-GAP-00116-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00116", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00117", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00117-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00117.py -- tests/files/web/generated/M21-GAP-00117-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00117", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00118", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00118-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00118.py -- tests/files/web/generated/M21-GAP-00118-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00118", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00119", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00119-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00119.py -- tests/files/web/generated/M21-GAP-00119-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00119", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00120", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00120-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00120.py -- tests/files/web/generated/M21-GAP-00120-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00120", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00121", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00121-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00121.py -- tests/files/web/generated/M21-GAP-00121-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00121", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00122", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00122-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00122.py -- tests/files/web/generated/M21-GAP-00122-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00122", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00123", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00123-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00123.py -- tests/files/web/generated/M21-GAP-00123-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00123", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00124", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00124-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00124.py -- tests/files/web/generated/M21-GAP-00124-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00124", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00125", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00125-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Curve-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00125.py -- tests/files/web/generated/M21-GAP-00125-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Curve-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00125", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00126", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00126-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00126.py -- tests/files/web/generated/M21-GAP-00126-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00126", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00127", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00127-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00127.py -- tests/files/web/generated/M21-GAP-00127-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00127", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00128", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00128-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00128.py -- tests/files/web/generated/M21-GAP-00128-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00128", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00129", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00129-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00129.py -- tests/files/web/generated/M21-GAP-00129-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00129", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00130", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00130-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Interpolate-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00130.py -- tests/files/web/generated/M21-GAP-00130-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Interpolate-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00130", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00131", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00131-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00131.py -- tests/files/web/generated/M21-GAP-00131-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00131", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00132", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00132-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00132.py -- tests/files/web/generated/M21-GAP-00132-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00132", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00133", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00133-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00133.py -- tests/files/web/generated/M21-GAP-00133-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00133", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00134", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00134-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Polyline-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00134.py -- tests/files/web/generated/M21-GAP-00134-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Polyline-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00134", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00135", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00135-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Polyline-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00135.py -- tests/files/web/generated/M21-GAP-00135-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Polyline-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00135", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00136", + "gapId": "keymap-item:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00136-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Trim-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00136.py -- tests/files/web/generated/M21-GAP-00136-keymap-item-3D-View-Tool-Paint-Grease-Pencil-Trim-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00136", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00137", + "gapId": "keymap-item:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00137-keymap-item-3D-View-Tool-Paint-Weight-Gradient-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00137.py -- tests/files/web/generated/M21-GAP-00137-keymap-item-3D-View-Tool-Paint-Weight-Gradient-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00137", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00138", + "gapId": "keymap-item:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00138-keymap-item-3D-View-Tool-Paint-Weight-Sample-Vertex-Group-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00138.py -- tests/files/web/generated/M21-GAP-00138-keymap-item-3D-View-Tool-Paint-Weight-Sample-Vertex-Group-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00138", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00139", + "gapId": "keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00139-keymap-item-3D-View-Tool-Paint-Weight-Sample-Weight-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00139.py -- tests/files/web/generated/M21-GAP-00139-keymap-item-3D-View-Tool-Paint-Weight-Sample-Weight-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00139", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00140", + "gapId": "keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00140-keymap-item-3D-View-Tool-Paint-Weight-Sample-Weight-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00140.py -- tests/files/web/generated/M21-GAP-00140-keymap-item-3D-View-Tool-Paint-Weight-Sample-Weight-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00140", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00141", + "gapId": "keymap-item:3D View Tool: Push:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00141-keymap-item-3D-View-Tool-Push-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00141.py -- tests/files/web/generated/M21-GAP-00141-keymap-item-3D-View-Tool-Push-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00141", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00142", + "gapId": "keymap-item:3D View Tool: Relax:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00142-keymap-item-3D-View-Tool-Relax-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00142.py -- tests/files/web/generated/M21-GAP-00142-keymap-item-3D-View-Tool-Relax-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00142", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00143", + "gapId": "keymap-item:3D View Tool: Rotate:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00143-keymap-item-3D-View-Tool-Rotate-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00143.py -- tests/files/web/generated/M21-GAP-00143-keymap-item-3D-View-Tool-Rotate-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00143", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00144", + "gapId": "keymap-item:3D View Tool: Scale:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00144-keymap-item-3D-View-Tool-Scale-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00144.py -- tests/files/web/generated/M21-GAP-00144-keymap-item-3D-View-Tool-Scale-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00144", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00145", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00145-keymap-item-3D-View-Tool-Sculpt-Box-Face-Set-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00145.py -- tests/files/web/generated/M21-GAP-00145-keymap-item-3D-View-Tool-Sculpt-Box-Face-Set-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00145", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00146", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00146-keymap-item-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00146.py -- tests/files/web/generated/M21-GAP-00146-keymap-item-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00146", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00147", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00147-keymap-item-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00147.py -- tests/files/web/generated/M21-GAP-00147-keymap-item-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00147", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00148", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00148-keymap-item-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00148.py -- tests/files/web/generated/M21-GAP-00148-keymap-item-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00148", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00149", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00149-keymap-item-3D-View-Tool-Sculpt-Box-Mask-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00149.py -- tests/files/web/generated/M21-GAP-00149-keymap-item-3D-View-Tool-Sculpt-Box-Mask-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00149", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00150", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00150-keymap-item-3D-View-Tool-Sculpt-Box-Mask-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00150.py -- tests/files/web/generated/M21-GAP-00150-keymap-item-3D-View-Tool-Sculpt-Box-Mask-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00150", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00151", + "gapId": "keymap-item:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00151-keymap-item-3D-View-Tool-Sculpt-Box-Trim-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00151.py -- tests/files/web/generated/M21-GAP-00151-keymap-item-3D-View-Tool-Sculpt-Box-Trim-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00151", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00152", + "gapId": "keymap-item:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00152-keymap-item-3D-View-Tool-Sculpt-Cloth-Filter-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00152.py -- tests/files/web/generated/M21-GAP-00152-keymap-item-3D-View-Tool-Sculpt-Cloth-Filter-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00152", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00153", + "gapId": "keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00153-keymap-item-3D-View-Tool-Sculpt-Color-Filter-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00153.py -- tests/files/web/generated/M21-GAP-00153-keymap-item-3D-View-Tool-Sculpt-Color-Filter-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00153", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00154", + "gapId": "keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00154-keymap-item-3D-View-Tool-Sculpt-Color-Filter-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00154.py -- tests/files/web/generated/M21-GAP-00154-keymap-item-3D-View-Tool-Sculpt-Color-Filter-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00154", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00155", + "gapId": "keymap-item:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00155-keymap-item-3D-View-Tool-Sculpt-Face-Set-Edit-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00155.py -- tests/files/web/generated/M21-GAP-00155-keymap-item-3D-View-Tool-Sculpt-Face-Set-Edit-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00155", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00156", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00156-keymap-item-3D-View-Tool-Sculpt-Lasso-Face-Set-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00156.py -- tests/files/web/generated/M21-GAP-00156-keymap-item-3D-View-Tool-Sculpt-Lasso-Face-Set-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00156", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00157", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00157-keymap-item-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00157.py -- tests/files/web/generated/M21-GAP-00157-keymap-item-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00157", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00158", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00158-keymap-item-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00158.py -- tests/files/web/generated/M21-GAP-00158-keymap-item-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00158", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00159", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00159-keymap-item-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00159.py -- tests/files/web/generated/M21-GAP-00159-keymap-item-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00159", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00160", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00160-keymap-item-3D-View-Tool-Sculpt-Lasso-Mask-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00160.py -- tests/files/web/generated/M21-GAP-00160-keymap-item-3D-View-Tool-Sculpt-Lasso-Mask-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00160", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00161", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00161-keymap-item-3D-View-Tool-Sculpt-Lasso-Mask-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00161.py -- tests/files/web/generated/M21-GAP-00161-keymap-item-3D-View-Tool-Sculpt-Lasso-Mask-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00161", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00162", + "gapId": "keymap-item:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00162-keymap-item-3D-View-Tool-Sculpt-Lasso-Trim-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00162.py -- tests/files/web/generated/M21-GAP-00162-keymap-item-3D-View-Tool-Sculpt-Lasso-Trim-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00162", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00163", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00163-keymap-item-3D-View-Tool-Sculpt-Line-Face-Set-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00163.py -- tests/files/web/generated/M21-GAP-00163-keymap-item-3D-View-Tool-Sculpt-Line-Face-Set-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00163", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00164", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00164-keymap-item-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00164.py -- tests/files/web/generated/M21-GAP-00164-keymap-item-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00164", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00165", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00165-keymap-item-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00165.py -- tests/files/web/generated/M21-GAP-00165-keymap-item-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00165", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00166", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00166-keymap-item-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00166.py -- tests/files/web/generated/M21-GAP-00166-keymap-item-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00166", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00167", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00167-keymap-item-3D-View-Tool-Sculpt-Line-Mask-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00167.py -- tests/files/web/generated/M21-GAP-00167-keymap-item-3D-View-Tool-Sculpt-Line-Mask-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00167", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00168", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00168-keymap-item-3D-View-Tool-Sculpt-Line-Mask-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00168.py -- tests/files/web/generated/M21-GAP-00168-keymap-item-3D-View-Tool-Sculpt-Line-Mask-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00168", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00169", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00169-keymap-item-3D-View-Tool-Sculpt-Line-Project-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00169.py -- tests/files/web/generated/M21-GAP-00169-keymap-item-3D-View-Tool-Sculpt-Line-Project-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00169", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00170", + "gapId": "keymap-item:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00170-keymap-item-3D-View-Tool-Sculpt-Line-Trim-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00170.py -- tests/files/web/generated/M21-GAP-00170-keymap-item-3D-View-Tool-Sculpt-Line-Trim-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00170", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00171", + "gapId": "keymap-item:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00171-keymap-item-3D-View-Tool-Sculpt-Mask-by-Color-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00171.py -- tests/files/web/generated/M21-GAP-00171-keymap-item-3D-View-Tool-Sculpt-Mask-by-Color-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00171", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00172", + "gapId": "keymap-item:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00172-keymap-item-3D-View-Tool-Sculpt-Mesh-Filter-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00172.py -- tests/files/web/generated/M21-GAP-00172-keymap-item-3D-View-Tool-Sculpt-Mesh-Filter-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00172", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00173", + "gapId": "keymap-item:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00173-keymap-item-3D-View-Tool-Sculpt-Polyline-Face-Set-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00173.py -- tests/files/web/generated/M21-GAP-00173-keymap-item-3D-View-Tool-Sculpt-Polyline-Face-Set-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00173", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00174", + "gapId": "keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00174-keymap-item-3D-View-Tool-Sculpt-Polyline-Hide-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00174.py -- tests/files/web/generated/M21-GAP-00174-keymap-item-3D-View-Tool-Sculpt-Polyline-Hide-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00174", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00175", + "gapId": "keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00175-keymap-item-3D-View-Tool-Sculpt-Polyline-Hide-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00175.py -- tests/files/web/generated/M21-GAP-00175-keymap-item-3D-View-Tool-Sculpt-Polyline-Hide-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00175", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00176", + "gapId": "keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00176-keymap-item-3D-View-Tool-Sculpt-Polyline-Mask-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00176.py -- tests/files/web/generated/M21-GAP-00176-keymap-item-3D-View-Tool-Sculpt-Polyline-Mask-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00176", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00177", + "gapId": "keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00177-keymap-item-3D-View-Tool-Sculpt-Polyline-Mask-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00177.py -- tests/files/web/generated/M21-GAP-00177-keymap-item-3D-View-Tool-Sculpt-Polyline-Mask-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00177", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00178", + "gapId": "keymap-item:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00178-keymap-item-3D-View-Tool-Sculpt-Polyline-Trim-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00178.py -- tests/files/web/generated/M21-GAP-00178-keymap-item-3D-View-Tool-Sculpt-Polyline-Trim-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00178", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00179", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00179-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00179.py -- tests/files/web/generated/M21-GAP-00179-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00179", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00180", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00180-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00180.py -- tests/files/web/generated/M21-GAP-00180-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00180", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00181", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00181-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00181.py -- tests/files/web/generated/M21-GAP-00181-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00181", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00182", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00182-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00182.py -- tests/files/web/generated/M21-GAP-00182-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00182", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00183", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00183-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00183.py -- tests/files/web/generated/M21-GAP-00183-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00183", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00184", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00184-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00184.py -- tests/files/web/generated/M21-GAP-00184-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00184", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00185", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00185-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00185.py -- tests/files/web/generated/M21-GAP-00185-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00185", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00186", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00186-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00186.py -- tests/files/web/generated/M21-GAP-00186-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00186", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00187", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00187-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00187.py -- tests/files/web/generated/M21-GAP-00187-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00187", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00188", + "gapId": "keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00188-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00188.py -- tests/files/web/generated/M21-GAP-00188-keymap-item-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00188", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00189", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00189-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00189.py -- tests/files/web/generated/M21-GAP-00189-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00189", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00190", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00190-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00190.py -- tests/files/web/generated/M21-GAP-00190-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00190", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00191", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00191-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00191.py -- tests/files/web/generated/M21-GAP-00191-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00191", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00192", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00192-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00192.py -- tests/files/web/generated/M21-GAP-00192-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00192", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00193", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00193-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00193.py -- tests/files/web/generated/M21-GAP-00193-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00193", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00194", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00194-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00194.py -- tests/files/web/generated/M21-GAP-00194-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00194", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00195", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00195-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00195.py -- tests/files/web/generated/M21-GAP-00195-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00195", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00196", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00196-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00196.py -- tests/files/web/generated/M21-GAP-00196-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00196", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00197", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00197-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00197.py -- tests/files/web/generated/M21-GAP-00197-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00197", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00198", + "gapId": "keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00198-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00198.py -- tests/files/web/generated/M21-GAP-00198-keymap-item-3D-View-Tool-Select-Box-VIEW_3D-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00198", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00199", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00199-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00199.py -- tests/files/web/generated/M21-GAP-00199-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00199", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00200", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00200-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00200.py -- tests/files/web/generated/M21-GAP-00200-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00200", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00201", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00201-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00201.py -- tests/files/web/generated/M21-GAP-00201-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00201", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00202", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00202-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00202.py -- tests/files/web/generated/M21-GAP-00202-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00202", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00203", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00203-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00203.py -- tests/files/web/generated/M21-GAP-00203-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00203", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00204", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00204-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00204.py -- tests/files/web/generated/M21-GAP-00204-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00204", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00205", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00205-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00205.py -- tests/files/web/generated/M21-GAP-00205-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00205", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00206", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00206-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00206.py -- tests/files/web/generated/M21-GAP-00206-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00206", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00207", + "gapId": "keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00207-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00207.py -- tests/files/web/generated/M21-GAP-00207-keymap-item-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00207", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00208", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00208-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00208.py -- tests/files/web/generated/M21-GAP-00208-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00208", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00209", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00209-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00209.py -- tests/files/web/generated/M21-GAP-00209-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00209", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00210", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00210-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00210.py -- tests/files/web/generated/M21-GAP-00210-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00210", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00211", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00211-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00211.py -- tests/files/web/generated/M21-GAP-00211-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00211", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00212", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00212-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00212.py -- tests/files/web/generated/M21-GAP-00212-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00212", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00213", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00213-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00213.py -- tests/files/web/generated/M21-GAP-00213-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00213", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00214", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00214-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00214.py -- tests/files/web/generated/M21-GAP-00214-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00214", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00215", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00215-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00215.py -- tests/files/web/generated/M21-GAP-00215-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00215", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00216", + "gapId": "keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00216-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00216.py -- tests/files/web/generated/M21-GAP-00216-keymap-item-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00216", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00217", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00217-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00217.py -- tests/files/web/generated/M21-GAP-00217-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00217", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00218", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00218-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00218.py -- tests/files/web/generated/M21-GAP-00218-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00218", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00219", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00219-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00219.py -- tests/files/web/generated/M21-GAP-00219-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00219", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00220", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00220-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00220.py -- tests/files/web/generated/M21-GAP-00220-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00220", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00221", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00221-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00221.py -- tests/files/web/generated/M21-GAP-00221-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00221", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00222", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00222-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00222.py -- tests/files/web/generated/M21-GAP-00222-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00222", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00223", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00223-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00223.py -- tests/files/web/generated/M21-GAP-00223-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00223", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00224", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00224-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00224.py -- tests/files/web/generated/M21-GAP-00224-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00224", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00225", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00225-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00225.py -- tests/files/web/generated/M21-GAP-00225-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00225", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00226", + "gapId": "keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00226-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00226.py -- tests/files/web/generated/M21-GAP-00226-keymap-item-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00226", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00227", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00227-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00227.py -- tests/files/web/generated/M21-GAP-00227-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00227", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00228", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00228-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00228.py -- tests/files/web/generated/M21-GAP-00228-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00228", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00229", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00229-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00229.py -- tests/files/web/generated/M21-GAP-00229-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00229", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00230", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00230-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00230.py -- tests/files/web/generated/M21-GAP-00230-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00230", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00231", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00231-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00231.py -- tests/files/web/generated/M21-GAP-00231-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00231", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00232", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00232-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00232.py -- tests/files/web/generated/M21-GAP-00232-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00232", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00233", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00233-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00233.py -- tests/files/web/generated/M21-GAP-00233-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00233", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00234", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00234-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00234.py -- tests/files/web/generated/M21-GAP-00234-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00234", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00235", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00235-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00235.py -- tests/files/web/generated/M21-GAP-00235-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00235", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00236", + "gapId": "keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00236-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00236.py -- tests/files/web/generated/M21-GAP-00236-keymap-item-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00236", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00237", + "gapId": "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00237-keymap-item-3D-View-Tool-Shear-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00237.py -- tests/files/web/generated/M21-GAP-00237-keymap-item-3D-View-Tool-Shear-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00237", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00238", + "gapId": "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00238-keymap-item-3D-View-Tool-Shear-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00238.py -- tests/files/web/generated/M21-GAP-00238-keymap-item-3D-View-Tool-Shear-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00238", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00239", + "gapId": "keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00239-keymap-item-3D-View-Tool-Shear-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00239.py -- tests/files/web/generated/M21-GAP-00239-keymap-item-3D-View-Tool-Shear-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00239", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00240", + "gapId": "keymap-item:3D View Tool: Transform:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00240-keymap-item-3D-View-Tool-Transform-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00240.py -- tests/files/web/generated/M21-GAP-00240-keymap-item-3D-View-Tool-Transform-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00240", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00241", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00241-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00241.py -- tests/files/web/generated/M21-GAP-00241-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00241", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00242", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00242-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00242.py -- tests/files/web/generated/M21-GAP-00242-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00242", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00243", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00243-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00243.py -- tests/files/web/generated/M21-GAP-00243-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00243", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00244", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00244-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00244.py -- tests/files/web/generated/M21-GAP-00244-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00244", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00245", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00245-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00245.py -- tests/files/web/generated/M21-GAP-00245-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00245", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00246", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00246-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00246.py -- tests/files/web/generated/M21-GAP-00246-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00246", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00247", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00247-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00247.py -- tests/files/web/generated/M21-GAP-00247-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00247", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00248", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00248-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00248.py -- tests/files/web/generated/M21-GAP-00248-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00248", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00249", + "gapId": "keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00249-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00249.py -- tests/files/web/generated/M21-GAP-00249-keymap-item-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00249", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00250", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00250-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00250.py -- tests/files/web/generated/M21-GAP-00250-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00250", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00251", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00251-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00251.py -- tests/files/web/generated/M21-GAP-00251-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00251", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00252", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00252-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00252.py -- tests/files/web/generated/M21-GAP-00252-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00252", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00253", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00253-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00253.py -- tests/files/web/generated/M21-GAP-00253-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00253", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00254", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00254-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00254.py -- tests/files/web/generated/M21-GAP-00254-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00254", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00255", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00255-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00255.py -- tests/files/web/generated/M21-GAP-00255-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00255", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00256", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00256-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00256.py -- tests/files/web/generated/M21-GAP-00256-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00256", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00257", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00257-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00257.py -- tests/files/web/generated/M21-GAP-00257-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00257", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00258", + "gapId": "keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00258-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00258.py -- tests/files/web/generated/M21-GAP-00258-keymap-item-3D-View-Tool-Tweak-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00258", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00259", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00259-keymap-item-3D-View-VIEW_3D-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00259.py -- tests/files/web/generated/M21-GAP-00259-keymap-item-3D-View-VIEW_3D-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00259", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00260", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00260-keymap-item-3D-View-VIEW_3D-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00260.py -- tests/files/web/generated/M21-GAP-00260-keymap-item-3D-View-VIEW_3D-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00260", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00261", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00261-keymap-item-3D-View-VIEW_3D-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00261.py -- tests/files/web/generated/M21-GAP-00261-keymap-item-3D-View-VIEW_3D-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00261", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00262", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:100", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00262-keymap-item-3D-View-VIEW_3D-WINDOW-100.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00262.py -- tests/files/web/generated/M21-GAP-00262-keymap-item-3D-View-VIEW_3D-WINDOW-100.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00262", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00263", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:101", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00263-keymap-item-3D-View-VIEW_3D-WINDOW-101.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00263.py -- tests/files/web/generated/M21-GAP-00263-keymap-item-3D-View-VIEW_3D-WINDOW-101.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00263", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00264", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:102", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00264-keymap-item-3D-View-VIEW_3D-WINDOW-102.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00264.py -- tests/files/web/generated/M21-GAP-00264-keymap-item-3D-View-VIEW_3D-WINDOW-102.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00264", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00265", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:103", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00265-keymap-item-3D-View-VIEW_3D-WINDOW-103.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00265.py -- tests/files/web/generated/M21-GAP-00265-keymap-item-3D-View-VIEW_3D-WINDOW-103.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00265", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00266", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:104", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00266-keymap-item-3D-View-VIEW_3D-WINDOW-104.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00266.py -- tests/files/web/generated/M21-GAP-00266-keymap-item-3D-View-VIEW_3D-WINDOW-104.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00266", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00267", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:105", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00267-keymap-item-3D-View-VIEW_3D-WINDOW-105.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00267.py -- tests/files/web/generated/M21-GAP-00267-keymap-item-3D-View-VIEW_3D-WINDOW-105.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00267", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00268", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:106", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00268-keymap-item-3D-View-VIEW_3D-WINDOW-106.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00268.py -- tests/files/web/generated/M21-GAP-00268-keymap-item-3D-View-VIEW_3D-WINDOW-106.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00268", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00269", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:107", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00269-keymap-item-3D-View-VIEW_3D-WINDOW-107.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00269.py -- tests/files/web/generated/M21-GAP-00269-keymap-item-3D-View-VIEW_3D-WINDOW-107.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00269", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00270", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:108", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00270-keymap-item-3D-View-VIEW_3D-WINDOW-108.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00270.py -- tests/files/web/generated/M21-GAP-00270-keymap-item-3D-View-VIEW_3D-WINDOW-108.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00270", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00271", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:109", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00271-keymap-item-3D-View-VIEW_3D-WINDOW-109.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00271.py -- tests/files/web/generated/M21-GAP-00271-keymap-item-3D-View-VIEW_3D-WINDOW-109.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00271", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00272", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00272-keymap-item-3D-View-VIEW_3D-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00272.py -- tests/files/web/generated/M21-GAP-00272-keymap-item-3D-View-VIEW_3D-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00272", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00273", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:110", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00273-keymap-item-3D-View-VIEW_3D-WINDOW-110.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00273.py -- tests/files/web/generated/M21-GAP-00273-keymap-item-3D-View-VIEW_3D-WINDOW-110.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00273", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00274", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:111", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00274-keymap-item-3D-View-VIEW_3D-WINDOW-111.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00274.py -- tests/files/web/generated/M21-GAP-00274-keymap-item-3D-View-VIEW_3D-WINDOW-111.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00274", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00275", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:112", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00275-keymap-item-3D-View-VIEW_3D-WINDOW-112.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00275.py -- tests/files/web/generated/M21-GAP-00275-keymap-item-3D-View-VIEW_3D-WINDOW-112.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00275", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00276", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:113", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00276-keymap-item-3D-View-VIEW_3D-WINDOW-113.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00276.py -- tests/files/web/generated/M21-GAP-00276-keymap-item-3D-View-VIEW_3D-WINDOW-113.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00276", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00277", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:114", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00277-keymap-item-3D-View-VIEW_3D-WINDOW-114.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00277.py -- tests/files/web/generated/M21-GAP-00277-keymap-item-3D-View-VIEW_3D-WINDOW-114.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00277", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00278", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:115", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00278-keymap-item-3D-View-VIEW_3D-WINDOW-115.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00278.py -- tests/files/web/generated/M21-GAP-00278-keymap-item-3D-View-VIEW_3D-WINDOW-115.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00278", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00279", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00279-keymap-item-3D-View-VIEW_3D-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00279.py -- tests/files/web/generated/M21-GAP-00279-keymap-item-3D-View-VIEW_3D-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00279", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00280", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00280-keymap-item-3D-View-VIEW_3D-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00280.py -- tests/files/web/generated/M21-GAP-00280-keymap-item-3D-View-VIEW_3D-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00280", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00281", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00281-keymap-item-3D-View-VIEW_3D-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00281.py -- tests/files/web/generated/M21-GAP-00281-keymap-item-3D-View-VIEW_3D-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00281", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00282", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00282-keymap-item-3D-View-VIEW_3D-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00282.py -- tests/files/web/generated/M21-GAP-00282-keymap-item-3D-View-VIEW_3D-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00282", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00283", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00283-keymap-item-3D-View-VIEW_3D-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00283.py -- tests/files/web/generated/M21-GAP-00283-keymap-item-3D-View-VIEW_3D-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00283", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00284", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00284-keymap-item-3D-View-VIEW_3D-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00284.py -- tests/files/web/generated/M21-GAP-00284-keymap-item-3D-View-VIEW_3D-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00284", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00285", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00285-keymap-item-3D-View-VIEW_3D-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00285.py -- tests/files/web/generated/M21-GAP-00285-keymap-item-3D-View-VIEW_3D-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00285", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00286", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00286-keymap-item-3D-View-VIEW_3D-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00286.py -- tests/files/web/generated/M21-GAP-00286-keymap-item-3D-View-VIEW_3D-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00286", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00287", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00287-keymap-item-3D-View-VIEW_3D-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00287.py -- tests/files/web/generated/M21-GAP-00287-keymap-item-3D-View-VIEW_3D-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00287", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00288", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00288-keymap-item-3D-View-VIEW_3D-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00288.py -- tests/files/web/generated/M21-GAP-00288-keymap-item-3D-View-VIEW_3D-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00288", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00289", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00289-keymap-item-3D-View-VIEW_3D-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00289.py -- tests/files/web/generated/M21-GAP-00289-keymap-item-3D-View-VIEW_3D-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00289", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00290", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00290-keymap-item-3D-View-VIEW_3D-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00290.py -- tests/files/web/generated/M21-GAP-00290-keymap-item-3D-View-VIEW_3D-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00290", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00291", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00291-keymap-item-3D-View-VIEW_3D-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00291.py -- tests/files/web/generated/M21-GAP-00291-keymap-item-3D-View-VIEW_3D-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00291", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00292", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00292-keymap-item-3D-View-VIEW_3D-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00292.py -- tests/files/web/generated/M21-GAP-00292-keymap-item-3D-View-VIEW_3D-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00292", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00293", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00293-keymap-item-3D-View-VIEW_3D-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00293.py -- tests/files/web/generated/M21-GAP-00293-keymap-item-3D-View-VIEW_3D-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00293", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00294", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00294-keymap-item-3D-View-VIEW_3D-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00294.py -- tests/files/web/generated/M21-GAP-00294-keymap-item-3D-View-VIEW_3D-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00294", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00295", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00295-keymap-item-3D-View-VIEW_3D-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00295.py -- tests/files/web/generated/M21-GAP-00295-keymap-item-3D-View-VIEW_3D-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00295", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00296", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00296-keymap-item-3D-View-VIEW_3D-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00296.py -- tests/files/web/generated/M21-GAP-00296-keymap-item-3D-View-VIEW_3D-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00296", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00297", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00297-keymap-item-3D-View-VIEW_3D-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00297.py -- tests/files/web/generated/M21-GAP-00297-keymap-item-3D-View-VIEW_3D-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00297", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00298", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00298-keymap-item-3D-View-VIEW_3D-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00298.py -- tests/files/web/generated/M21-GAP-00298-keymap-item-3D-View-VIEW_3D-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00298", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00299", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00299-keymap-item-3D-View-VIEW_3D-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00299.py -- tests/files/web/generated/M21-GAP-00299-keymap-item-3D-View-VIEW_3D-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00299", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00300", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00300-keymap-item-3D-View-VIEW_3D-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00300.py -- tests/files/web/generated/M21-GAP-00300-keymap-item-3D-View-VIEW_3D-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00300", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00301", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00301-keymap-item-3D-View-VIEW_3D-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00301.py -- tests/files/web/generated/M21-GAP-00301-keymap-item-3D-View-VIEW_3D-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00301", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00302", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00302-keymap-item-3D-View-VIEW_3D-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00302.py -- tests/files/web/generated/M21-GAP-00302-keymap-item-3D-View-VIEW_3D-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00302", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00303", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00303-keymap-item-3D-View-VIEW_3D-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00303.py -- tests/files/web/generated/M21-GAP-00303-keymap-item-3D-View-VIEW_3D-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00303", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00304", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00304-keymap-item-3D-View-VIEW_3D-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00304.py -- tests/files/web/generated/M21-GAP-00304-keymap-item-3D-View-VIEW_3D-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00304", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00305", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00305-keymap-item-3D-View-VIEW_3D-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00305.py -- tests/files/web/generated/M21-GAP-00305-keymap-item-3D-View-VIEW_3D-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00305", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00306", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00306-keymap-item-3D-View-VIEW_3D-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00306.py -- tests/files/web/generated/M21-GAP-00306-keymap-item-3D-View-VIEW_3D-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00306", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00307", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00307-keymap-item-3D-View-VIEW_3D-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00307.py -- tests/files/web/generated/M21-GAP-00307-keymap-item-3D-View-VIEW_3D-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00307", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00308", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00308-keymap-item-3D-View-VIEW_3D-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00308.py -- tests/files/web/generated/M21-GAP-00308-keymap-item-3D-View-VIEW_3D-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00308", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00309", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00309-keymap-item-3D-View-VIEW_3D-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00309.py -- tests/files/web/generated/M21-GAP-00309-keymap-item-3D-View-VIEW_3D-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00309", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00310", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00310-keymap-item-3D-View-VIEW_3D-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00310.py -- tests/files/web/generated/M21-GAP-00310-keymap-item-3D-View-VIEW_3D-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00310", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00311", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00311-keymap-item-3D-View-VIEW_3D-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00311.py -- tests/files/web/generated/M21-GAP-00311-keymap-item-3D-View-VIEW_3D-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00311", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00312", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00312-keymap-item-3D-View-VIEW_3D-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00312.py -- tests/files/web/generated/M21-GAP-00312-keymap-item-3D-View-VIEW_3D-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00312", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00313", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00313-keymap-item-3D-View-VIEW_3D-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00313.py -- tests/files/web/generated/M21-GAP-00313-keymap-item-3D-View-VIEW_3D-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00313", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00314", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00314-keymap-item-3D-View-VIEW_3D-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00314.py -- tests/files/web/generated/M21-GAP-00314-keymap-item-3D-View-VIEW_3D-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00314", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00315", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00315-keymap-item-3D-View-VIEW_3D-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00315.py -- tests/files/web/generated/M21-GAP-00315-keymap-item-3D-View-VIEW_3D-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00315", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00316", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00316-keymap-item-3D-View-VIEW_3D-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00316.py -- tests/files/web/generated/M21-GAP-00316-keymap-item-3D-View-VIEW_3D-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00316", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00317", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00317-keymap-item-3D-View-VIEW_3D-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00317.py -- tests/files/web/generated/M21-GAP-00317-keymap-item-3D-View-VIEW_3D-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00317", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00318", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00318-keymap-item-3D-View-VIEW_3D-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00318.py -- tests/files/web/generated/M21-GAP-00318-keymap-item-3D-View-VIEW_3D-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00318", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00319", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00319-keymap-item-3D-View-VIEW_3D-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00319.py -- tests/files/web/generated/M21-GAP-00319-keymap-item-3D-View-VIEW_3D-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00319", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00320", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00320-keymap-item-3D-View-VIEW_3D-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00320.py -- tests/files/web/generated/M21-GAP-00320-keymap-item-3D-View-VIEW_3D-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00320", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00321", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00321-keymap-item-3D-View-VIEW_3D-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00321.py -- tests/files/web/generated/M21-GAP-00321-keymap-item-3D-View-VIEW_3D-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00321", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00322", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00322-keymap-item-3D-View-VIEW_3D-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00322.py -- tests/files/web/generated/M21-GAP-00322-keymap-item-3D-View-VIEW_3D-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00322", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00323", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00323-keymap-item-3D-View-VIEW_3D-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00323.py -- tests/files/web/generated/M21-GAP-00323-keymap-item-3D-View-VIEW_3D-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00323", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00324", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00324-keymap-item-3D-View-VIEW_3D-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00324.py -- tests/files/web/generated/M21-GAP-00324-keymap-item-3D-View-VIEW_3D-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00324", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00325", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00325-keymap-item-3D-View-VIEW_3D-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00325.py -- tests/files/web/generated/M21-GAP-00325-keymap-item-3D-View-VIEW_3D-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00325", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00326", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00326-keymap-item-3D-View-VIEW_3D-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00326.py -- tests/files/web/generated/M21-GAP-00326-keymap-item-3D-View-VIEW_3D-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00326", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00327", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00327-keymap-item-3D-View-VIEW_3D-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00327.py -- tests/files/web/generated/M21-GAP-00327-keymap-item-3D-View-VIEW_3D-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00327", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00328", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00328-keymap-item-3D-View-VIEW_3D-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00328.py -- tests/files/web/generated/M21-GAP-00328-keymap-item-3D-View-VIEW_3D-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00328", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00329", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00329-keymap-item-3D-View-VIEW_3D-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00329.py -- tests/files/web/generated/M21-GAP-00329-keymap-item-3D-View-VIEW_3D-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00329", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00330", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00330-keymap-item-3D-View-VIEW_3D-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00330.py -- tests/files/web/generated/M21-GAP-00330-keymap-item-3D-View-VIEW_3D-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00330", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00331", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00331-keymap-item-3D-View-VIEW_3D-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00331.py -- tests/files/web/generated/M21-GAP-00331-keymap-item-3D-View-VIEW_3D-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00331", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00332", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00332-keymap-item-3D-View-VIEW_3D-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00332.py -- tests/files/web/generated/M21-GAP-00332-keymap-item-3D-View-VIEW_3D-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00332", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00333", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00333-keymap-item-3D-View-VIEW_3D-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00333.py -- tests/files/web/generated/M21-GAP-00333-keymap-item-3D-View-VIEW_3D-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00333", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00334", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00334-keymap-item-3D-View-VIEW_3D-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00334.py -- tests/files/web/generated/M21-GAP-00334-keymap-item-3D-View-VIEW_3D-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00334", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00335", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00335-keymap-item-3D-View-VIEW_3D-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00335.py -- tests/files/web/generated/M21-GAP-00335-keymap-item-3D-View-VIEW_3D-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00335", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00336", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00336-keymap-item-3D-View-VIEW_3D-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00336.py -- tests/files/web/generated/M21-GAP-00336-keymap-item-3D-View-VIEW_3D-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00336", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00337", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00337-keymap-item-3D-View-VIEW_3D-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00337.py -- tests/files/web/generated/M21-GAP-00337-keymap-item-3D-View-VIEW_3D-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00337", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00338", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00338-keymap-item-3D-View-VIEW_3D-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00338.py -- tests/files/web/generated/M21-GAP-00338-keymap-item-3D-View-VIEW_3D-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00338", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00339", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00339-keymap-item-3D-View-VIEW_3D-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00339.py -- tests/files/web/generated/M21-GAP-00339-keymap-item-3D-View-VIEW_3D-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00339", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00340", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00340-keymap-item-3D-View-VIEW_3D-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00340.py -- tests/files/web/generated/M21-GAP-00340-keymap-item-3D-View-VIEW_3D-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00340", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00341", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00341-keymap-item-3D-View-VIEW_3D-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00341.py -- tests/files/web/generated/M21-GAP-00341-keymap-item-3D-View-VIEW_3D-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00341", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00342", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00342-keymap-item-3D-View-VIEW_3D-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00342.py -- tests/files/web/generated/M21-GAP-00342-keymap-item-3D-View-VIEW_3D-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00342", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00343", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00343-keymap-item-3D-View-VIEW_3D-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00343.py -- tests/files/web/generated/M21-GAP-00343-keymap-item-3D-View-VIEW_3D-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00343", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00344", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00344-keymap-item-3D-View-VIEW_3D-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00344.py -- tests/files/web/generated/M21-GAP-00344-keymap-item-3D-View-VIEW_3D-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00344", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00345", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00345-keymap-item-3D-View-VIEW_3D-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00345.py -- tests/files/web/generated/M21-GAP-00345-keymap-item-3D-View-VIEW_3D-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00345", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00346", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00346-keymap-item-3D-View-VIEW_3D-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00346.py -- tests/files/web/generated/M21-GAP-00346-keymap-item-3D-View-VIEW_3D-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00346", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00347", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00347-keymap-item-3D-View-VIEW_3D-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00347.py -- tests/files/web/generated/M21-GAP-00347-keymap-item-3D-View-VIEW_3D-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00347", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00348", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00348-keymap-item-3D-View-VIEW_3D-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00348.py -- tests/files/web/generated/M21-GAP-00348-keymap-item-3D-View-VIEW_3D-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00348", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00349", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00349-keymap-item-3D-View-VIEW_3D-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00349.py -- tests/files/web/generated/M21-GAP-00349-keymap-item-3D-View-VIEW_3D-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00349", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00350", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00350-keymap-item-3D-View-VIEW_3D-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00350.py -- tests/files/web/generated/M21-GAP-00350-keymap-item-3D-View-VIEW_3D-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00350", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00351", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00351-keymap-item-3D-View-VIEW_3D-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00351.py -- tests/files/web/generated/M21-GAP-00351-keymap-item-3D-View-VIEW_3D-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00351", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00352", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00352-keymap-item-3D-View-VIEW_3D-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00352.py -- tests/files/web/generated/M21-GAP-00352-keymap-item-3D-View-VIEW_3D-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00352", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00353", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00353-keymap-item-3D-View-VIEW_3D-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00353.py -- tests/files/web/generated/M21-GAP-00353-keymap-item-3D-View-VIEW_3D-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00353", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00354", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00354-keymap-item-3D-View-VIEW_3D-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00354.py -- tests/files/web/generated/M21-GAP-00354-keymap-item-3D-View-VIEW_3D-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00354", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00355", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00355-keymap-item-3D-View-VIEW_3D-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00355.py -- tests/files/web/generated/M21-GAP-00355-keymap-item-3D-View-VIEW_3D-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00355", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00356", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00356-keymap-item-3D-View-VIEW_3D-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00356.py -- tests/files/web/generated/M21-GAP-00356-keymap-item-3D-View-VIEW_3D-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00356", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00357", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00357-keymap-item-3D-View-VIEW_3D-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00357.py -- tests/files/web/generated/M21-GAP-00357-keymap-item-3D-View-VIEW_3D-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00357", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00358", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00358-keymap-item-3D-View-VIEW_3D-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00358.py -- tests/files/web/generated/M21-GAP-00358-keymap-item-3D-View-VIEW_3D-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00358", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00359", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00359-keymap-item-3D-View-VIEW_3D-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00359.py -- tests/files/web/generated/M21-GAP-00359-keymap-item-3D-View-VIEW_3D-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00359", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00360", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00360-keymap-item-3D-View-VIEW_3D-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00360.py -- tests/files/web/generated/M21-GAP-00360-keymap-item-3D-View-VIEW_3D-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00360", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00361", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00361-keymap-item-3D-View-VIEW_3D-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00361.py -- tests/files/web/generated/M21-GAP-00361-keymap-item-3D-View-VIEW_3D-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00361", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00362", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:88", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00362-keymap-item-3D-View-VIEW_3D-WINDOW-88.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00362.py -- tests/files/web/generated/M21-GAP-00362-keymap-item-3D-View-VIEW_3D-WINDOW-88.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00362", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00363", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:89", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00363-keymap-item-3D-View-VIEW_3D-WINDOW-89.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00363.py -- tests/files/web/generated/M21-GAP-00363-keymap-item-3D-View-VIEW_3D-WINDOW-89.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00363", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00364", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00364-keymap-item-3D-View-VIEW_3D-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00364.py -- tests/files/web/generated/M21-GAP-00364-keymap-item-3D-View-VIEW_3D-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00364", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00365", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:90", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00365-keymap-item-3D-View-VIEW_3D-WINDOW-90.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00365.py -- tests/files/web/generated/M21-GAP-00365-keymap-item-3D-View-VIEW_3D-WINDOW-90.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00365", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00366", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:91", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00366-keymap-item-3D-View-VIEW_3D-WINDOW-91.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00366.py -- tests/files/web/generated/M21-GAP-00366-keymap-item-3D-View-VIEW_3D-WINDOW-91.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00366", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00367", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:92", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00367-keymap-item-3D-View-VIEW_3D-WINDOW-92.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00367.py -- tests/files/web/generated/M21-GAP-00367-keymap-item-3D-View-VIEW_3D-WINDOW-92.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00367", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00368", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:93", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00368-keymap-item-3D-View-VIEW_3D-WINDOW-93.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00368.py -- tests/files/web/generated/M21-GAP-00368-keymap-item-3D-View-VIEW_3D-WINDOW-93.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00368", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00369", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:94", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00369-keymap-item-3D-View-VIEW_3D-WINDOW-94.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00369.py -- tests/files/web/generated/M21-GAP-00369-keymap-item-3D-View-VIEW_3D-WINDOW-94.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00369", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00370", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:95", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00370-keymap-item-3D-View-VIEW_3D-WINDOW-95.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00370.py -- tests/files/web/generated/M21-GAP-00370-keymap-item-3D-View-VIEW_3D-WINDOW-95.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00370", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00371", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:96", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00371-keymap-item-3D-View-VIEW_3D-WINDOW-96.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00371.py -- tests/files/web/generated/M21-GAP-00371-keymap-item-3D-View-VIEW_3D-WINDOW-96.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00371", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00372", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:97", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00372-keymap-item-3D-View-VIEW_3D-WINDOW-97.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00372.py -- tests/files/web/generated/M21-GAP-00372-keymap-item-3D-View-VIEW_3D-WINDOW-97.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00372", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00373", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:98", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00373-keymap-item-3D-View-VIEW_3D-WINDOW-98.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00373.py -- tests/files/web/generated/M21-GAP-00373-keymap-item-3D-View-VIEW_3D-WINDOW-98.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00373", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00374", + "gapId": "keymap-item:3D View:VIEW_3D:WINDOW:99", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00374-keymap-item-3D-View-VIEW_3D-WINDOW-99.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00374.py -- tests/files/web/generated/M21-GAP-00374-keymap-item-3D-View-VIEW_3D-WINDOW-99.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00374", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00375", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00375-keymap-item-Animation-Channels-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00375.py -- tests/files/web/generated/M21-GAP-00375-keymap-item-Animation-Channels-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00375", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00376", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00376-keymap-item-Animation-Channels-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00376.py -- tests/files/web/generated/M21-GAP-00376-keymap-item-Animation-Channels-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00376", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00377", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00377-keymap-item-Animation-Channels-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00377.py -- tests/files/web/generated/M21-GAP-00377-keymap-item-Animation-Channels-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00377", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00378", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00378-keymap-item-Animation-Channels-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00378.py -- tests/files/web/generated/M21-GAP-00378-keymap-item-Animation-Channels-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00378", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00379", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00379-keymap-item-Animation-Channels-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00379.py -- tests/files/web/generated/M21-GAP-00379-keymap-item-Animation-Channels-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00379", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00380", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00380-keymap-item-Animation-Channels-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00380.py -- tests/files/web/generated/M21-GAP-00380-keymap-item-Animation-Channels-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00380", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00381", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00381-keymap-item-Animation-Channels-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00381.py -- tests/files/web/generated/M21-GAP-00381-keymap-item-Animation-Channels-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00381", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00382", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00382-keymap-item-Animation-Channels-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00382.py -- tests/files/web/generated/M21-GAP-00382-keymap-item-Animation-Channels-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00382", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00383", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00383-keymap-item-Animation-Channels-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00383.py -- tests/files/web/generated/M21-GAP-00383-keymap-item-Animation-Channels-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00383", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00384", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00384-keymap-item-Animation-Channels-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00384.py -- tests/files/web/generated/M21-GAP-00384-keymap-item-Animation-Channels-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00384", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00385", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00385-keymap-item-Animation-Channels-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00385.py -- tests/files/web/generated/M21-GAP-00385-keymap-item-Animation-Channels-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00385", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00386", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00386-keymap-item-Animation-Channels-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00386.py -- tests/files/web/generated/M21-GAP-00386-keymap-item-Animation-Channels-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00386", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00387", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00387-keymap-item-Animation-Channels-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00387.py -- tests/files/web/generated/M21-GAP-00387-keymap-item-Animation-Channels-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00387", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00388", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00388-keymap-item-Animation-Channels-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00388.py -- tests/files/web/generated/M21-GAP-00388-keymap-item-Animation-Channels-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00388", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00389", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00389-keymap-item-Animation-Channels-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00389.py -- tests/files/web/generated/M21-GAP-00389-keymap-item-Animation-Channels-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00389", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00390", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00390-keymap-item-Animation-Channels-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00390.py -- tests/files/web/generated/M21-GAP-00390-keymap-item-Animation-Channels-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00390", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00391", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00391-keymap-item-Animation-Channels-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00391.py -- tests/files/web/generated/M21-GAP-00391-keymap-item-Animation-Channels-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00391", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00392", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00392-keymap-item-Animation-Channels-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00392.py -- tests/files/web/generated/M21-GAP-00392-keymap-item-Animation-Channels-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00392", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00393", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00393-keymap-item-Animation-Channels-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00393.py -- tests/files/web/generated/M21-GAP-00393-keymap-item-Animation-Channels-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00393", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00394", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00394-keymap-item-Animation-Channels-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00394.py -- tests/files/web/generated/M21-GAP-00394-keymap-item-Animation-Channels-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00394", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00395", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00395-keymap-item-Animation-Channels-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00395.py -- tests/files/web/generated/M21-GAP-00395-keymap-item-Animation-Channels-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00395", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00396", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00396-keymap-item-Animation-Channels-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00396.py -- tests/files/web/generated/M21-GAP-00396-keymap-item-Animation-Channels-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00396", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00397", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00397-keymap-item-Animation-Channels-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00397.py -- tests/files/web/generated/M21-GAP-00397-keymap-item-Animation-Channels-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00397", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00398", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00398-keymap-item-Animation-Channels-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00398.py -- tests/files/web/generated/M21-GAP-00398-keymap-item-Animation-Channels-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00398", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00399", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00399-keymap-item-Animation-Channels-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00399.py -- tests/files/web/generated/M21-GAP-00399-keymap-item-Animation-Channels-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00399", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00400", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00400-keymap-item-Animation-Channels-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00400.py -- tests/files/web/generated/M21-GAP-00400-keymap-item-Animation-Channels-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00400", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00401", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00401-keymap-item-Animation-Channels-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00401.py -- tests/files/web/generated/M21-GAP-00401-keymap-item-Animation-Channels-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00401", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00402", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00402-keymap-item-Animation-Channels-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00402.py -- tests/files/web/generated/M21-GAP-00402-keymap-item-Animation-Channels-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00402", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00403", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00403-keymap-item-Animation-Channels-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00403.py -- tests/files/web/generated/M21-GAP-00403-keymap-item-Animation-Channels-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00403", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00404", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00404-keymap-item-Animation-Channels-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00404.py -- tests/files/web/generated/M21-GAP-00404-keymap-item-Animation-Channels-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00404", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00405", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00405-keymap-item-Animation-Channels-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00405.py -- tests/files/web/generated/M21-GAP-00405-keymap-item-Animation-Channels-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00405", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00406", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00406-keymap-item-Animation-Channels-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00406.py -- tests/files/web/generated/M21-GAP-00406-keymap-item-Animation-Channels-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00406", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00407", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00407-keymap-item-Animation-Channels-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00407.py -- tests/files/web/generated/M21-GAP-00407-keymap-item-Animation-Channels-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00407", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00408", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00408-keymap-item-Animation-Channels-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00408.py -- tests/files/web/generated/M21-GAP-00408-keymap-item-Animation-Channels-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00408", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00409", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00409-keymap-item-Animation-Channels-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00409.py -- tests/files/web/generated/M21-GAP-00409-keymap-item-Animation-Channels-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00409", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00410", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00410-keymap-item-Animation-Channels-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00410.py -- tests/files/web/generated/M21-GAP-00410-keymap-item-Animation-Channels-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00410", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00411", + "gapId": "keymap-item:Animation Channels:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00411-keymap-item-Animation-Channels-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00411.py -- tests/files/web/generated/M21-GAP-00411-keymap-item-Animation-Channels-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00411", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00412", + "gapId": "keymap-item:Animation:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00412-keymap-item-Animation-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00412.py -- tests/files/web/generated/M21-GAP-00412-keymap-item-Animation-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00412", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00413", + "gapId": "keymap-item:Animation:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00413-keymap-item-Animation-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00413.py -- tests/files/web/generated/M21-GAP-00413-keymap-item-Animation-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00413", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00414", + "gapId": "keymap-item:Animation:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00414-keymap-item-Animation-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00414.py -- tests/files/web/generated/M21-GAP-00414-keymap-item-Animation-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00414", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00415", + "gapId": "keymap-item:Animation:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00415-keymap-item-Animation-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00415.py -- tests/files/web/generated/M21-GAP-00415-keymap-item-Animation-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00415", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00416", + "gapId": "keymap-item:Animation:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00416-keymap-item-Animation-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00416.py -- tests/files/web/generated/M21-GAP-00416-keymap-item-Animation-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00416", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00417", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00417-keymap-item-Armature-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00417.py -- tests/files/web/generated/M21-GAP-00417-keymap-item-Armature-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00417", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00418", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00418-keymap-item-Armature-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00418.py -- tests/files/web/generated/M21-GAP-00418-keymap-item-Armature-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00418", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00419", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00419-keymap-item-Armature-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00419.py -- tests/files/web/generated/M21-GAP-00419-keymap-item-Armature-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00419", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00420", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00420-keymap-item-Armature-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00420.py -- tests/files/web/generated/M21-GAP-00420-keymap-item-Armature-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00420", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00421", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00421-keymap-item-Armature-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00421.py -- tests/files/web/generated/M21-GAP-00421-keymap-item-Armature-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00421", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00422", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00422-keymap-item-Armature-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00422.py -- tests/files/web/generated/M21-GAP-00422-keymap-item-Armature-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00422", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00423", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00423-keymap-item-Armature-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00423.py -- tests/files/web/generated/M21-GAP-00423-keymap-item-Armature-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00423", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00424", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00424-keymap-item-Armature-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00424.py -- tests/files/web/generated/M21-GAP-00424-keymap-item-Armature-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00424", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00425", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00425-keymap-item-Armature-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00425.py -- tests/files/web/generated/M21-GAP-00425-keymap-item-Armature-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00425", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00426", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00426-keymap-item-Armature-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00426.py -- tests/files/web/generated/M21-GAP-00426-keymap-item-Armature-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00426", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00427", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00427-keymap-item-Armature-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00427.py -- tests/files/web/generated/M21-GAP-00427-keymap-item-Armature-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00427", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00428", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00428-keymap-item-Armature-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00428.py -- tests/files/web/generated/M21-GAP-00428-keymap-item-Armature-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00428", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00429", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00429-keymap-item-Armature-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00429.py -- tests/files/web/generated/M21-GAP-00429-keymap-item-Armature-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00429", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00430", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00430-keymap-item-Armature-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00430.py -- tests/files/web/generated/M21-GAP-00430-keymap-item-Armature-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00430", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00431", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00431-keymap-item-Armature-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00431.py -- tests/files/web/generated/M21-GAP-00431-keymap-item-Armature-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00431", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00432", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00432-keymap-item-Armature-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00432.py -- tests/files/web/generated/M21-GAP-00432-keymap-item-Armature-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00432", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00433", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00433-keymap-item-Armature-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00433.py -- tests/files/web/generated/M21-GAP-00433-keymap-item-Armature-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00433", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00434", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00434-keymap-item-Armature-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00434.py -- tests/files/web/generated/M21-GAP-00434-keymap-item-Armature-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00434", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00435", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00435-keymap-item-Armature-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00435.py -- tests/files/web/generated/M21-GAP-00435-keymap-item-Armature-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00435", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00436", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00436-keymap-item-Armature-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00436.py -- tests/files/web/generated/M21-GAP-00436-keymap-item-Armature-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00436", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00437", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00437-keymap-item-Armature-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00437.py -- tests/files/web/generated/M21-GAP-00437-keymap-item-Armature-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00437", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00438", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00438-keymap-item-Armature-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00438.py -- tests/files/web/generated/M21-GAP-00438-keymap-item-Armature-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00438", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00439", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00439-keymap-item-Armature-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00439.py -- tests/files/web/generated/M21-GAP-00439-keymap-item-Armature-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00439", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00440", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00440-keymap-item-Armature-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00440.py -- tests/files/web/generated/M21-GAP-00440-keymap-item-Armature-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00440", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00441", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00441-keymap-item-Armature-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00441.py -- tests/files/web/generated/M21-GAP-00441-keymap-item-Armature-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00441", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00442", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00442-keymap-item-Armature-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00442.py -- tests/files/web/generated/M21-GAP-00442-keymap-item-Armature-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00442", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00443", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00443-keymap-item-Armature-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00443.py -- tests/files/web/generated/M21-GAP-00443-keymap-item-Armature-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00443", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00444", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00444-keymap-item-Armature-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00444.py -- tests/files/web/generated/M21-GAP-00444-keymap-item-Armature-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00444", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00445", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00445-keymap-item-Armature-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00445.py -- tests/files/web/generated/M21-GAP-00445-keymap-item-Armature-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00445", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00446", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00446-keymap-item-Armature-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00446.py -- tests/files/web/generated/M21-GAP-00446-keymap-item-Armature-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00446", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00447", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00447-keymap-item-Armature-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00447.py -- tests/files/web/generated/M21-GAP-00447-keymap-item-Armature-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00447", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00448", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00448-keymap-item-Armature-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00448.py -- tests/files/web/generated/M21-GAP-00448-keymap-item-Armature-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00448", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00449", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00449-keymap-item-Armature-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00449.py -- tests/files/web/generated/M21-GAP-00449-keymap-item-Armature-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00449", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00450", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00450-keymap-item-Armature-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00450.py -- tests/files/web/generated/M21-GAP-00450-keymap-item-Armature-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00450", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00451", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00451-keymap-item-Armature-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00451.py -- tests/files/web/generated/M21-GAP-00451-keymap-item-Armature-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00451", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00452", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00452-keymap-item-Armature-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00452.py -- tests/files/web/generated/M21-GAP-00452-keymap-item-Armature-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00452", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00453", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00453-keymap-item-Armature-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00453.py -- tests/files/web/generated/M21-GAP-00453-keymap-item-Armature-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00453", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00454", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00454-keymap-item-Armature-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00454.py -- tests/files/web/generated/M21-GAP-00454-keymap-item-Armature-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00454", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00455", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00455-keymap-item-Armature-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00455.py -- tests/files/web/generated/M21-GAP-00455-keymap-item-Armature-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00455", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00456", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00456-keymap-item-Armature-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00456.py -- tests/files/web/generated/M21-GAP-00456-keymap-item-Armature-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00456", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00457", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00457-keymap-item-Armature-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00457.py -- tests/files/web/generated/M21-GAP-00457-keymap-item-Armature-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00457", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00458", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00458-keymap-item-Armature-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00458.py -- tests/files/web/generated/M21-GAP-00458-keymap-item-Armature-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00458", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00459", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00459-keymap-item-Armature-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00459.py -- tests/files/web/generated/M21-GAP-00459-keymap-item-Armature-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00459", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00460", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00460-keymap-item-Armature-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00460.py -- tests/files/web/generated/M21-GAP-00460-keymap-item-Armature-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00460", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00461", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00461-keymap-item-Armature-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00461.py -- tests/files/web/generated/M21-GAP-00461-keymap-item-Armature-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00461", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00462", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00462-keymap-item-Armature-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00462.py -- tests/files/web/generated/M21-GAP-00462-keymap-item-Armature-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00462", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00463", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00463-keymap-item-Armature-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00463.py -- tests/files/web/generated/M21-GAP-00463-keymap-item-Armature-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00463", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00464", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00464-keymap-item-Armature-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00464.py -- tests/files/web/generated/M21-GAP-00464-keymap-item-Armature-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00464", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00465", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00465-keymap-item-Armature-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00465.py -- tests/files/web/generated/M21-GAP-00465-keymap-item-Armature-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00465", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00466", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00466-keymap-item-Armature-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00466.py -- tests/files/web/generated/M21-GAP-00466-keymap-item-Armature-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00466", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00467", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00467-keymap-item-Armature-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00467.py -- tests/files/web/generated/M21-GAP-00467-keymap-item-Armature-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00467", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00468", + "gapId": "keymap-item:Armature:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00468-keymap-item-Armature-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00468.py -- tests/files/web/generated/M21-GAP-00468-keymap-item-Armature-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00468", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00469", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00469-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00469.py -- tests/files/web/generated/M21-GAP-00469-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00469", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00470", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00470-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00470.py -- tests/files/web/generated/M21-GAP-00470-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00470", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00471", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00471-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00471.py -- tests/files/web/generated/M21-GAP-00471-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00471", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00472", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00472-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00472.py -- tests/files/web/generated/M21-GAP-00472-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00472", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00473", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00473-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00473.py -- tests/files/web/generated/M21-GAP-00473-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00473", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00474", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00474-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00474.py -- tests/files/web/generated/M21-GAP-00474-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00474", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00475", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00475-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00475.py -- tests/files/web/generated/M21-GAP-00475-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00475", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00476", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00476-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00476.py -- tests/files/web/generated/M21-GAP-00476-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00476", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00477", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00477-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00477.py -- tests/files/web/generated/M21-GAP-00477-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00477", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00478", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00478-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00478.py -- tests/files/web/generated/M21-GAP-00478-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00478", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00479", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00479-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00479.py -- tests/files/web/generated/M21-GAP-00479-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00479", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00480", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00480-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00480.py -- tests/files/web/generated/M21-GAP-00480-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00480", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00481", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00481-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00481.py -- tests/files/web/generated/M21-GAP-00481-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00481", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00482", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00482-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00482.py -- tests/files/web/generated/M21-GAP-00482-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00482", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00483", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00483-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00483.py -- tests/files/web/generated/M21-GAP-00483-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00483", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00484", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00484-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00484.py -- tests/files/web/generated/M21-GAP-00484-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00484", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00485", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00485-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00485.py -- tests/files/web/generated/M21-GAP-00485-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00485", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00486", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00486-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00486.py -- tests/files/web/generated/M21-GAP-00486-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00486", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00487", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00487-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00487.py -- tests/files/web/generated/M21-GAP-00487-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00487", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00488", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00488-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00488.py -- tests/files/web/generated/M21-GAP-00488-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00488", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00489", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00489-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00489.py -- tests/files/web/generated/M21-GAP-00489-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00489", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00490", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00490-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00490.py -- tests/files/web/generated/M21-GAP-00490-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00490", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00491", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00491-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00491.py -- tests/files/web/generated/M21-GAP-00491-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00491", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00492", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00492-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00492.py -- tests/files/web/generated/M21-GAP-00492-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00492", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00493", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00493-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00493.py -- tests/files/web/generated/M21-GAP-00493-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00493", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00494", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00494-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00494.py -- tests/files/web/generated/M21-GAP-00494-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00494", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00495", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00495-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00495.py -- tests/files/web/generated/M21-GAP-00495-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00495", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00496", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00496-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00496.py -- tests/files/web/generated/M21-GAP-00496-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00496", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00497", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00497-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00497.py -- tests/files/web/generated/M21-GAP-00497-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00497", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00498", + "gapId": "keymap-item:Bevel Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00498-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00498.py -- tests/files/web/generated/M21-GAP-00498-keymap-item-Bevel-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00498", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00499", + "gapId": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00499-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00499.py -- tests/files/web/generated/M21-GAP-00499-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00499", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00500", + "gapId": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00500-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00500.py -- tests/files/web/generated/M21-GAP-00500-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00500", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00501", + "gapId": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00501-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00501.py -- tests/files/web/generated/M21-GAP-00501-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00501", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00502", + "gapId": "keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00502-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00502.py -- tests/files/web/generated/M21-GAP-00502-keymap-item-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00502", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00503", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00503-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00503.py -- tests/files/web/generated/M21-GAP-00503-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00503", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00504", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00504-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00504.py -- tests/files/web/generated/M21-GAP-00504-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00504", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00505", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00505-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00505.py -- tests/files/web/generated/M21-GAP-00505-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00505", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00506", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00506-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00506.py -- tests/files/web/generated/M21-GAP-00506-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00506", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00507", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00507-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00507.py -- tests/files/web/generated/M21-GAP-00507-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00507", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00508", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00508-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00508.py -- tests/files/web/generated/M21-GAP-00508-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00508", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00509", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00509-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00509.py -- tests/files/web/generated/M21-GAP-00509-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00509", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00510", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00510-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00510.py -- tests/files/web/generated/M21-GAP-00510-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00510", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00511", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00511-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00511.py -- tests/files/web/generated/M21-GAP-00511-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00511", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00512", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00512-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00512.py -- tests/files/web/generated/M21-GAP-00512-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00512", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00513", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00513-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00513.py -- tests/files/web/generated/M21-GAP-00513-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00513", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00514", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00514-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00514.py -- tests/files/web/generated/M21-GAP-00514-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00514", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00515", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00515-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00515.py -- tests/files/web/generated/M21-GAP-00515-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00515", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00516", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00516-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00516.py -- tests/files/web/generated/M21-GAP-00516-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00516", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00517", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00517-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00517.py -- tests/files/web/generated/M21-GAP-00517-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00517", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00518", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00518-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00518.py -- tests/files/web/generated/M21-GAP-00518-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00518", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00519", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00519-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00519.py -- tests/files/web/generated/M21-GAP-00519-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00519", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00520", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00520-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00520.py -- tests/files/web/generated/M21-GAP-00520-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00520", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00521", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00521-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00521.py -- tests/files/web/generated/M21-GAP-00521-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00521", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00522", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00522-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00522.py -- tests/files/web/generated/M21-GAP-00522-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00522", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00523", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00523-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00523.py -- tests/files/web/generated/M21-GAP-00523-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00523", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00524", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00524-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00524.py -- tests/files/web/generated/M21-GAP-00524-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00524", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00525", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00525-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00525.py -- tests/files/web/generated/M21-GAP-00525-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00525", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00526", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00526-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00526.py -- tests/files/web/generated/M21-GAP-00526-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00526", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00527", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00527-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00527.py -- tests/files/web/generated/M21-GAP-00527-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00527", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00528", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00528-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00528.py -- tests/files/web/generated/M21-GAP-00528-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00528", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00529", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00529-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00529.py -- tests/files/web/generated/M21-GAP-00529-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00529", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00530", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00530-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00530.py -- tests/files/web/generated/M21-GAP-00530-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00530", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00531", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00531-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00531.py -- tests/files/web/generated/M21-GAP-00531-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00531", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00532", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00532-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00532.py -- tests/files/web/generated/M21-GAP-00532-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00532", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00533", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00533-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00533.py -- tests/files/web/generated/M21-GAP-00533-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00533", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00534", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00534-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00534.py -- tests/files/web/generated/M21-GAP-00534-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00534", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00535", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00535-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00535.py -- tests/files/web/generated/M21-GAP-00535-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00535", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00536", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00536-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00536.py -- tests/files/web/generated/M21-GAP-00536-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00536", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00537", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00537-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00537.py -- tests/files/web/generated/M21-GAP-00537-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00537", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00538", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00538-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00538.py -- tests/files/web/generated/M21-GAP-00538-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00538", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00539", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00539-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00539.py -- tests/files/web/generated/M21-GAP-00539-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00539", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00540", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00540-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00540.py -- tests/files/web/generated/M21-GAP-00540-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00540", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00541", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00541-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00541.py -- tests/files/web/generated/M21-GAP-00541-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00541", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00542", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00542-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00542.py -- tests/files/web/generated/M21-GAP-00542-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00542", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00543", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00543-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00543.py -- tests/files/web/generated/M21-GAP-00543-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00543", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00544", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00544-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00544.py -- tests/files/web/generated/M21-GAP-00544-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00544", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00545", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00545-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00545.py -- tests/files/web/generated/M21-GAP-00545-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00545", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00546", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00546-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00546.py -- tests/files/web/generated/M21-GAP-00546-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00546", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00547", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00547-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00547.py -- tests/files/web/generated/M21-GAP-00547-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00547", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00548", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00548-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00548.py -- tests/files/web/generated/M21-GAP-00548-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00548", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00549", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00549-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00549.py -- tests/files/web/generated/M21-GAP-00549-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00549", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00550", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00550-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00550.py -- tests/files/web/generated/M21-GAP-00550-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00550", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00551", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00551-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00551.py -- tests/files/web/generated/M21-GAP-00551-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00551", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00552", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00552-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00552.py -- tests/files/web/generated/M21-GAP-00552-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00552", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00553", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00553-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00553.py -- tests/files/web/generated/M21-GAP-00553-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00553", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00554", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00554-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00554.py -- tests/files/web/generated/M21-GAP-00554-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00554", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00555", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00555-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00555.py -- tests/files/web/generated/M21-GAP-00555-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00555", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00556", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00556-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00556.py -- tests/files/web/generated/M21-GAP-00556-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00556", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00557", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00557-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00557.py -- tests/files/web/generated/M21-GAP-00557-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00557", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00558", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00558-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00558.py -- tests/files/web/generated/M21-GAP-00558-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00558", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00559", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00559-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00559.py -- tests/files/web/generated/M21-GAP-00559-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00559", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00560", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00560-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00560.py -- tests/files/web/generated/M21-GAP-00560-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00560", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00561", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00561-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00561.py -- tests/files/web/generated/M21-GAP-00561-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00561", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00562", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00562-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00562.py -- tests/files/web/generated/M21-GAP-00562-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00562", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00563", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00563-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00563.py -- tests/files/web/generated/M21-GAP-00563-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00563", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00564", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00564-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00564.py -- tests/files/web/generated/M21-GAP-00564-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00564", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00565", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00565-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00565.py -- tests/files/web/generated/M21-GAP-00565-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00565", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00566", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00566-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00566.py -- tests/files/web/generated/M21-GAP-00566-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00566", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00567", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00567-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00567.py -- tests/files/web/generated/M21-GAP-00567-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00567", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00568", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00568-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00568.py -- tests/files/web/generated/M21-GAP-00568-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00568", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00569", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00569-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00569.py -- tests/files/web/generated/M21-GAP-00569-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00569", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00570", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00570-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00570.py -- tests/files/web/generated/M21-GAP-00570-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00570", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00571", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00571-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00571.py -- tests/files/web/generated/M21-GAP-00571-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00571", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00572", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00572-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00572.py -- tests/files/web/generated/M21-GAP-00572-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00572", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00573", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00573-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00573.py -- tests/files/web/generated/M21-GAP-00573-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00573", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00574", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00574-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00574.py -- tests/files/web/generated/M21-GAP-00574-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00574", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00575", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00575-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00575.py -- tests/files/web/generated/M21-GAP-00575-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00575", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00576", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00576-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00576.py -- tests/files/web/generated/M21-GAP-00576-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00576", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00577", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00577-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00577.py -- tests/files/web/generated/M21-GAP-00577-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00577", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00578", + "gapId": "keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00578-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00578.py -- tests/files/web/generated/M21-GAP-00578-keymap-item-Clip-Editor-CLIP_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00578", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00579", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00579-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00579.py -- tests/files/web/generated/M21-GAP-00579-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00579", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00580", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00580-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00580.py -- tests/files/web/generated/M21-GAP-00580-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00580", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00581", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00581-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00581.py -- tests/files/web/generated/M21-GAP-00581-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00581", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00582", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00582-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00582.py -- tests/files/web/generated/M21-GAP-00582-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00582", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00583", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00583-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00583.py -- tests/files/web/generated/M21-GAP-00583-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00583", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00584", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00584-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00584.py -- tests/files/web/generated/M21-GAP-00584-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00584", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00585", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00585-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00585.py -- tests/files/web/generated/M21-GAP-00585-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00585", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00586", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00586-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00586.py -- tests/files/web/generated/M21-GAP-00586-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00586", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00587", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00587-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00587.py -- tests/files/web/generated/M21-GAP-00587-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00587", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00588", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00588-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00588.py -- tests/files/web/generated/M21-GAP-00588-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00588", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00589", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00589-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00589.py -- tests/files/web/generated/M21-GAP-00589-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00589", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00590", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00590-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00590.py -- tests/files/web/generated/M21-GAP-00590-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00590", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00591", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00591-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00591.py -- tests/files/web/generated/M21-GAP-00591-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00591", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00592", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00592-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00592.py -- tests/files/web/generated/M21-GAP-00592-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00592", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00593", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00593-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00593.py -- tests/files/web/generated/M21-GAP-00593-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00593", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00594", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00594-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00594.py -- tests/files/web/generated/M21-GAP-00594-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00594", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00595", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00595-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00595.py -- tests/files/web/generated/M21-GAP-00595-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00595", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00596", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00596-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00596.py -- tests/files/web/generated/M21-GAP-00596-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00596", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00597", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00597-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00597.py -- tests/files/web/generated/M21-GAP-00597-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00597", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00598", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00598-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00598.py -- tests/files/web/generated/M21-GAP-00598-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00598", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00599", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00599-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00599.py -- tests/files/web/generated/M21-GAP-00599-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00599", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00600", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00600-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00600.py -- tests/files/web/generated/M21-GAP-00600-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00600", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00601", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00601-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00601.py -- tests/files/web/generated/M21-GAP-00601-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00601", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00602", + "gapId": "keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00602-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00602.py -- tests/files/web/generated/M21-GAP-00602-keymap-item-Clip-Graph-Editor-CLIP_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00602", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00603", + "gapId": "keymap-item:Clip Time Scrub:CLIP_EDITOR:PREVIEW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00603-keymap-item-Clip-Time-Scrub-CLIP_EDITOR-PREVIEW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00603.py -- tests/files/web/generated/M21-GAP-00603-keymap-item-Clip-Time-Scrub-CLIP_EDITOR-PREVIEW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00603", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00604", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00604-keymap-item-Clip-CLIP_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00604.py -- tests/files/web/generated/M21-GAP-00604-keymap-item-Clip-CLIP_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00604", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00605", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00605-keymap-item-Clip-CLIP_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00605.py -- tests/files/web/generated/M21-GAP-00605-keymap-item-Clip-CLIP_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00605", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00606", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00606-keymap-item-Clip-CLIP_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00606.py -- tests/files/web/generated/M21-GAP-00606-keymap-item-Clip-CLIP_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00606", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00607", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00607-keymap-item-Clip-CLIP_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00607.py -- tests/files/web/generated/M21-GAP-00607-keymap-item-Clip-CLIP_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00607", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00608", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00608-keymap-item-Clip-CLIP_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00608.py -- tests/files/web/generated/M21-GAP-00608-keymap-item-Clip-CLIP_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00608", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00609", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00609-keymap-item-Clip-CLIP_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00609.py -- tests/files/web/generated/M21-GAP-00609-keymap-item-Clip-CLIP_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00609", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00610", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00610-keymap-item-Clip-CLIP_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00610.py -- tests/files/web/generated/M21-GAP-00610-keymap-item-Clip-CLIP_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00610", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00611", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00611-keymap-item-Clip-CLIP_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00611.py -- tests/files/web/generated/M21-GAP-00611-keymap-item-Clip-CLIP_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00611", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00612", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00612-keymap-item-Clip-CLIP_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00612.py -- tests/files/web/generated/M21-GAP-00612-keymap-item-Clip-CLIP_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00612", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00613", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00613-keymap-item-Clip-CLIP_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00613.py -- tests/files/web/generated/M21-GAP-00613-keymap-item-Clip-CLIP_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00613", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00614", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00614-keymap-item-Clip-CLIP_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00614.py -- tests/files/web/generated/M21-GAP-00614-keymap-item-Clip-CLIP_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00614", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00615", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00615-keymap-item-Clip-CLIP_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00615.py -- tests/files/web/generated/M21-GAP-00615-keymap-item-Clip-CLIP_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00615", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00616", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00616-keymap-item-Clip-CLIP_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00616.py -- tests/files/web/generated/M21-GAP-00616-keymap-item-Clip-CLIP_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00616", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00617", + "gapId": "keymap-item:Clip:CLIP_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00617-keymap-item-Clip-CLIP_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00617.py -- tests/files/web/generated/M21-GAP-00617-keymap-item-Clip-CLIP_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00617", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00618", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00618-keymap-item-Console-CONSOLE-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00618.py -- tests/files/web/generated/M21-GAP-00618-keymap-item-Console-CONSOLE-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00618", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00619", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00619-keymap-item-Console-CONSOLE-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00619.py -- tests/files/web/generated/M21-GAP-00619-keymap-item-Console-CONSOLE-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00619", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00620", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00620-keymap-item-Console-CONSOLE-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00620.py -- tests/files/web/generated/M21-GAP-00620-keymap-item-Console-CONSOLE-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00620", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00621", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00621-keymap-item-Console-CONSOLE-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00621.py -- tests/files/web/generated/M21-GAP-00621-keymap-item-Console-CONSOLE-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00621", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00622", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00622-keymap-item-Console-CONSOLE-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00622.py -- tests/files/web/generated/M21-GAP-00622-keymap-item-Console-CONSOLE-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00622", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00623", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00623-keymap-item-Console-CONSOLE-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00623.py -- tests/files/web/generated/M21-GAP-00623-keymap-item-Console-CONSOLE-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00623", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00624", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00624-keymap-item-Console-CONSOLE-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00624.py -- tests/files/web/generated/M21-GAP-00624-keymap-item-Console-CONSOLE-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00624", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00625", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00625-keymap-item-Console-CONSOLE-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00625.py -- tests/files/web/generated/M21-GAP-00625-keymap-item-Console-CONSOLE-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00625", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00626", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00626-keymap-item-Console-CONSOLE-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00626.py -- tests/files/web/generated/M21-GAP-00626-keymap-item-Console-CONSOLE-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00626", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00626", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00627", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00627-keymap-item-Console-CONSOLE-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00627.py -- tests/files/web/generated/M21-GAP-00627-keymap-item-Console-CONSOLE-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00627", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00627", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00628", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00628-keymap-item-Console-CONSOLE-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00628.py -- tests/files/web/generated/M21-GAP-00628-keymap-item-Console-CONSOLE-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00628", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00628", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00629", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00629-keymap-item-Console-CONSOLE-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00629.py -- tests/files/web/generated/M21-GAP-00629-keymap-item-Console-CONSOLE-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00629", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00629", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00630", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00630-keymap-item-Console-CONSOLE-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00630.py -- tests/files/web/generated/M21-GAP-00630-keymap-item-Console-CONSOLE-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00630", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00630", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00631", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00631-keymap-item-Console-CONSOLE-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00631.py -- tests/files/web/generated/M21-GAP-00631-keymap-item-Console-CONSOLE-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00631", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00631", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00632", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00632-keymap-item-Console-CONSOLE-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00632.py -- tests/files/web/generated/M21-GAP-00632-keymap-item-Console-CONSOLE-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00632", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00632", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00633", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00633-keymap-item-Console-CONSOLE-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00633.py -- tests/files/web/generated/M21-GAP-00633-keymap-item-Console-CONSOLE-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00633", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00633", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00634", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00634-keymap-item-Console-CONSOLE-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00634.py -- tests/files/web/generated/M21-GAP-00634-keymap-item-Console-CONSOLE-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00634", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00634", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00635", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00635-keymap-item-Console-CONSOLE-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00635.py -- tests/files/web/generated/M21-GAP-00635-keymap-item-Console-CONSOLE-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00635", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00635", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00636", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00636-keymap-item-Console-CONSOLE-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00636.py -- tests/files/web/generated/M21-GAP-00636-keymap-item-Console-CONSOLE-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00636", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00636", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00637", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00637-keymap-item-Console-CONSOLE-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00637.py -- tests/files/web/generated/M21-GAP-00637-keymap-item-Console-CONSOLE-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00637", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00637", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00638", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00638-keymap-item-Console-CONSOLE-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00638.py -- tests/files/web/generated/M21-GAP-00638-keymap-item-Console-CONSOLE-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00638", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00638", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00639", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00639-keymap-item-Console-CONSOLE-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00639.py -- tests/files/web/generated/M21-GAP-00639-keymap-item-Console-CONSOLE-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00639", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00639", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00640", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00640-keymap-item-Console-CONSOLE-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00640.py -- tests/files/web/generated/M21-GAP-00640-keymap-item-Console-CONSOLE-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00640", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00640", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00641", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00641-keymap-item-Console-CONSOLE-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00641.py -- tests/files/web/generated/M21-GAP-00641-keymap-item-Console-CONSOLE-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00641", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00641", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00642", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00642-keymap-item-Console-CONSOLE-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00642.py -- tests/files/web/generated/M21-GAP-00642-keymap-item-Console-CONSOLE-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00642", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00642", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00643", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00643-keymap-item-Console-CONSOLE-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00643.py -- tests/files/web/generated/M21-GAP-00643-keymap-item-Console-CONSOLE-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00643", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00643", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00644", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00644-keymap-item-Console-CONSOLE-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00644.py -- tests/files/web/generated/M21-GAP-00644-keymap-item-Console-CONSOLE-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00644", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00644", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00645", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00645-keymap-item-Console-CONSOLE-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00645.py -- tests/files/web/generated/M21-GAP-00645-keymap-item-Console-CONSOLE-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00645", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00645", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00646", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00646-keymap-item-Console-CONSOLE-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00646.py -- tests/files/web/generated/M21-GAP-00646-keymap-item-Console-CONSOLE-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00646", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00646", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00647", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00647-keymap-item-Console-CONSOLE-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00647.py -- tests/files/web/generated/M21-GAP-00647-keymap-item-Console-CONSOLE-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00647", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00647", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00648", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00648-keymap-item-Console-CONSOLE-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00648.py -- tests/files/web/generated/M21-GAP-00648-keymap-item-Console-CONSOLE-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00648", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00648", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00649", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00649-keymap-item-Console-CONSOLE-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00649.py -- tests/files/web/generated/M21-GAP-00649-keymap-item-Console-CONSOLE-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00649", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00649", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00650", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00650-keymap-item-Console-CONSOLE-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00650.py -- tests/files/web/generated/M21-GAP-00650-keymap-item-Console-CONSOLE-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00650", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00650", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00651", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00651-keymap-item-Console-CONSOLE-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00651.py -- tests/files/web/generated/M21-GAP-00651-keymap-item-Console-CONSOLE-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00651", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00651", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00652", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00652-keymap-item-Console-CONSOLE-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00652.py -- tests/files/web/generated/M21-GAP-00652-keymap-item-Console-CONSOLE-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00652", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00652", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00653", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00653-keymap-item-Console-CONSOLE-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00653.py -- tests/files/web/generated/M21-GAP-00653-keymap-item-Console-CONSOLE-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00653", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00653", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00654", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00654-keymap-item-Console-CONSOLE-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00654.py -- tests/files/web/generated/M21-GAP-00654-keymap-item-Console-CONSOLE-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00654", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00654", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00655", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00655-keymap-item-Console-CONSOLE-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00655.py -- tests/files/web/generated/M21-GAP-00655-keymap-item-Console-CONSOLE-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00655", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00655", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00656", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00656-keymap-item-Console-CONSOLE-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00656.py -- tests/files/web/generated/M21-GAP-00656-keymap-item-Console-CONSOLE-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00656", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00656", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00657", + "gapId": "keymap-item:Console:CONSOLE:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00657-keymap-item-Console-CONSOLE-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00657.py -- tests/files/web/generated/M21-GAP-00657-keymap-item-Console-CONSOLE-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00657", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00657", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00658", + "gapId": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00658-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00658.py -- tests/files/web/generated/M21-GAP-00658-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00658", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00658", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00659", + "gapId": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00659-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00659.py -- tests/files/web/generated/M21-GAP-00659-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00659", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00659", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00660", + "gapId": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00660-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00660.py -- tests/files/web/generated/M21-GAP-00660-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00660", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00660", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00661", + "gapId": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00661-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00661.py -- tests/files/web/generated/M21-GAP-00661-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00661", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00661", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00662", + "gapId": "keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00662-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00662.py -- tests/files/web/generated/M21-GAP-00662-keymap-item-Curve-Pen-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00662", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00662", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00663", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00663-keymap-item-Curve-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00663.py -- tests/files/web/generated/M21-GAP-00663-keymap-item-Curve-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00663", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00663", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00664", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00664-keymap-item-Curve-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00664.py -- tests/files/web/generated/M21-GAP-00664-keymap-item-Curve-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00664", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00664", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00665", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00665-keymap-item-Curve-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00665.py -- tests/files/web/generated/M21-GAP-00665-keymap-item-Curve-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00665", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00665", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00666", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00666-keymap-item-Curve-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00666.py -- tests/files/web/generated/M21-GAP-00666-keymap-item-Curve-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00666", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00666", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00667", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00667-keymap-item-Curve-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00667.py -- tests/files/web/generated/M21-GAP-00667-keymap-item-Curve-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00667", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00667", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00668", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00668-keymap-item-Curve-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00668.py -- tests/files/web/generated/M21-GAP-00668-keymap-item-Curve-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00668", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00668", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00669", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00669-keymap-item-Curve-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00669.py -- tests/files/web/generated/M21-GAP-00669-keymap-item-Curve-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00669", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00669", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00670", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00670-keymap-item-Curve-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00670.py -- tests/files/web/generated/M21-GAP-00670-keymap-item-Curve-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00670", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00670", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00671", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00671-keymap-item-Curve-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00671.py -- tests/files/web/generated/M21-GAP-00671-keymap-item-Curve-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00671", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00671", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00672", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00672-keymap-item-Curve-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00672.py -- tests/files/web/generated/M21-GAP-00672-keymap-item-Curve-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00672", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00672", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00673", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00673-keymap-item-Curve-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00673.py -- tests/files/web/generated/M21-GAP-00673-keymap-item-Curve-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00673", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00673", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00674", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00674-keymap-item-Curve-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00674.py -- tests/files/web/generated/M21-GAP-00674-keymap-item-Curve-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00674", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00674", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00675", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00675-keymap-item-Curve-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00675.py -- tests/files/web/generated/M21-GAP-00675-keymap-item-Curve-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00675", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00675", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00676", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00676-keymap-item-Curve-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00676.py -- tests/files/web/generated/M21-GAP-00676-keymap-item-Curve-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00676", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00676", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00677", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00677-keymap-item-Curve-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00677.py -- tests/files/web/generated/M21-GAP-00677-keymap-item-Curve-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00677", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00677", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00678", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00678-keymap-item-Curve-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00678.py -- tests/files/web/generated/M21-GAP-00678-keymap-item-Curve-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00678", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00678", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00679", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00679-keymap-item-Curve-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00679.py -- tests/files/web/generated/M21-GAP-00679-keymap-item-Curve-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00679", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00679", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00680", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00680-keymap-item-Curve-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00680.py -- tests/files/web/generated/M21-GAP-00680-keymap-item-Curve-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00680", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00680", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00681", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00681-keymap-item-Curve-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00681.py -- tests/files/web/generated/M21-GAP-00681-keymap-item-Curve-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00681", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00681", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00682", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00682-keymap-item-Curve-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00682.py -- tests/files/web/generated/M21-GAP-00682-keymap-item-Curve-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00682", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00682", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00683", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00683-keymap-item-Curve-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00683.py -- tests/files/web/generated/M21-GAP-00683-keymap-item-Curve-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00683", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00683", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00684", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00684-keymap-item-Curve-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00684.py -- tests/files/web/generated/M21-GAP-00684-keymap-item-Curve-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00684", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00684", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00685", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00685-keymap-item-Curve-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00685.py -- tests/files/web/generated/M21-GAP-00685-keymap-item-Curve-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00685", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00685", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00686", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00686-keymap-item-Curve-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00686.py -- tests/files/web/generated/M21-GAP-00686-keymap-item-Curve-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00686", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00686", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00687", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00687-keymap-item-Curve-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00687.py -- tests/files/web/generated/M21-GAP-00687-keymap-item-Curve-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00687", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00687", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00688", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00688-keymap-item-Curve-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00688.py -- tests/files/web/generated/M21-GAP-00688-keymap-item-Curve-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00688", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00688", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00689", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00689-keymap-item-Curve-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00689.py -- tests/files/web/generated/M21-GAP-00689-keymap-item-Curve-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00689", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00689", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00690", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00690-keymap-item-Curve-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00690.py -- tests/files/web/generated/M21-GAP-00690-keymap-item-Curve-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00690", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00690", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00691", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00691-keymap-item-Curve-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00691.py -- tests/files/web/generated/M21-GAP-00691-keymap-item-Curve-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00691", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00691", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00692", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00692-keymap-item-Curve-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00692.py -- tests/files/web/generated/M21-GAP-00692-keymap-item-Curve-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00692", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00692", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00693", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00693-keymap-item-Curve-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00693.py -- tests/files/web/generated/M21-GAP-00693-keymap-item-Curve-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00693", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00693", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00694", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00694-keymap-item-Curve-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00694.py -- tests/files/web/generated/M21-GAP-00694-keymap-item-Curve-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00694", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00694", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00695", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00695-keymap-item-Curve-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00695.py -- tests/files/web/generated/M21-GAP-00695-keymap-item-Curve-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00695", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00695", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00696", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00696-keymap-item-Curve-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00696.py -- tests/files/web/generated/M21-GAP-00696-keymap-item-Curve-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00696", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00696", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00697", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00697-keymap-item-Curve-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00697.py -- tests/files/web/generated/M21-GAP-00697-keymap-item-Curve-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00697", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00697", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00698", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00698-keymap-item-Curve-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00698.py -- tests/files/web/generated/M21-GAP-00698-keymap-item-Curve-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00698", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00698", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00699", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00699-keymap-item-Curve-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00699.py -- tests/files/web/generated/M21-GAP-00699-keymap-item-Curve-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00699", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00699", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00700", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00700-keymap-item-Curve-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00700.py -- tests/files/web/generated/M21-GAP-00700-keymap-item-Curve-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00700", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00700", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00701", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00701-keymap-item-Curve-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00701.py -- tests/files/web/generated/M21-GAP-00701-keymap-item-Curve-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00701", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00701", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00702", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00702-keymap-item-Curve-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00702.py -- tests/files/web/generated/M21-GAP-00702-keymap-item-Curve-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00702", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00702", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00703", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00703-keymap-item-Curve-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00703.py -- tests/files/web/generated/M21-GAP-00703-keymap-item-Curve-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00703", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00703", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00704", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00704-keymap-item-Curve-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00704.py -- tests/files/web/generated/M21-GAP-00704-keymap-item-Curve-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00704", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00704", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00705", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00705-keymap-item-Curve-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00705.py -- tests/files/web/generated/M21-GAP-00705-keymap-item-Curve-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00705", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00705", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00706", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00706-keymap-item-Curve-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00706.py -- tests/files/web/generated/M21-GAP-00706-keymap-item-Curve-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00706", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00706", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00707", + "gapId": "keymap-item:Curve:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00707-keymap-item-Curve-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00707.py -- tests/files/web/generated/M21-GAP-00707-keymap-item-Curve-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00707", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00707", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00708", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00708-keymap-item-Curves-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00708.py -- tests/files/web/generated/M21-GAP-00708-keymap-item-Curves-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00708", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00708", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00709", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00709-keymap-item-Curves-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00709.py -- tests/files/web/generated/M21-GAP-00709-keymap-item-Curves-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00709", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00709", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00710", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00710-keymap-item-Curves-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00710.py -- tests/files/web/generated/M21-GAP-00710-keymap-item-Curves-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00710", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00710", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00711", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00711-keymap-item-Curves-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00711.py -- tests/files/web/generated/M21-GAP-00711-keymap-item-Curves-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00711", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00711", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00712", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00712-keymap-item-Curves-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00712.py -- tests/files/web/generated/M21-GAP-00712-keymap-item-Curves-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00712", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00712", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00713", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00713-keymap-item-Curves-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00713.py -- tests/files/web/generated/M21-GAP-00713-keymap-item-Curves-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00713", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00713", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00714", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00714-keymap-item-Curves-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00714.py -- tests/files/web/generated/M21-GAP-00714-keymap-item-Curves-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00714", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00714", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00715", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00715-keymap-item-Curves-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00715.py -- tests/files/web/generated/M21-GAP-00715-keymap-item-Curves-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00715", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00715", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00716", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00716-keymap-item-Curves-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00716.py -- tests/files/web/generated/M21-GAP-00716-keymap-item-Curves-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00716", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00716", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00717", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00717-keymap-item-Curves-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00717.py -- tests/files/web/generated/M21-GAP-00717-keymap-item-Curves-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00717", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00717", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00718", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00718-keymap-item-Curves-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00718.py -- tests/files/web/generated/M21-GAP-00718-keymap-item-Curves-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00718", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00718", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00719", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00719-keymap-item-Curves-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00719.py -- tests/files/web/generated/M21-GAP-00719-keymap-item-Curves-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00719", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00719", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00720", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00720-keymap-item-Curves-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00720.py -- tests/files/web/generated/M21-GAP-00720-keymap-item-Curves-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00720", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00720", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00721", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00721-keymap-item-Curves-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00721.py -- tests/files/web/generated/M21-GAP-00721-keymap-item-Curves-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00721", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00721", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00722", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00722-keymap-item-Curves-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00722.py -- tests/files/web/generated/M21-GAP-00722-keymap-item-Curves-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00722", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00722", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00723", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00723-keymap-item-Curves-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00723.py -- tests/files/web/generated/M21-GAP-00723-keymap-item-Curves-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00723", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00723", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00724", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00724-keymap-item-Curves-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00724.py -- tests/files/web/generated/M21-GAP-00724-keymap-item-Curves-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00724", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00724", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00725", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00725-keymap-item-Curves-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00725.py -- tests/files/web/generated/M21-GAP-00725-keymap-item-Curves-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00725", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00725", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00726", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00726-keymap-item-Curves-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00726.py -- tests/files/web/generated/M21-GAP-00726-keymap-item-Curves-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00726", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00726", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00727", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00727-keymap-item-Curves-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00727.py -- tests/files/web/generated/M21-GAP-00727-keymap-item-Curves-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00727", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00727", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00728", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00728-keymap-item-Curves-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00728.py -- tests/files/web/generated/M21-GAP-00728-keymap-item-Curves-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00728", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00728", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00729", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00729-keymap-item-Curves-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00729.py -- tests/files/web/generated/M21-GAP-00729-keymap-item-Curves-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00729", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00729", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00730", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00730-keymap-item-Curves-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00730.py -- tests/files/web/generated/M21-GAP-00730-keymap-item-Curves-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00730", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00730", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00731", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00731-keymap-item-Curves-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00731.py -- tests/files/web/generated/M21-GAP-00731-keymap-item-Curves-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00731", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00731", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00732", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00732-keymap-item-Curves-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00732.py -- tests/files/web/generated/M21-GAP-00732-keymap-item-Curves-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00732", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00732", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00733", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00733-keymap-item-Curves-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00733.py -- tests/files/web/generated/M21-GAP-00733-keymap-item-Curves-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00733", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00733", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00734", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00734-keymap-item-Curves-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00734.py -- tests/files/web/generated/M21-GAP-00734-keymap-item-Curves-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00734", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00734", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00735", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00735-keymap-item-Curves-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00735.py -- tests/files/web/generated/M21-GAP-00735-keymap-item-Curves-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00735", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00735", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00736", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00736-keymap-item-Curves-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00736.py -- tests/files/web/generated/M21-GAP-00736-keymap-item-Curves-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00736", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00736", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00737", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00737-keymap-item-Curves-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00737.py -- tests/files/web/generated/M21-GAP-00737-keymap-item-Curves-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00737", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00737", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00738", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00738-keymap-item-Curves-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00738.py -- tests/files/web/generated/M21-GAP-00738-keymap-item-Curves-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00738", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00738", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00739", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00739-keymap-item-Curves-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00739.py -- tests/files/web/generated/M21-GAP-00739-keymap-item-Curves-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00739", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00739", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00740", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00740-keymap-item-Curves-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00740.py -- tests/files/web/generated/M21-GAP-00740-keymap-item-Curves-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00740", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00740", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00741", + "gapId": "keymap-item:Curves:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00741-keymap-item-Curves-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00741.py -- tests/files/web/generated/M21-GAP-00741-keymap-item-Curves-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00741", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00741", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00742", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00742-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00742.py -- tests/files/web/generated/M21-GAP-00742-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00742", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00742", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00743", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00743-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00743.py -- tests/files/web/generated/M21-GAP-00743-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00743", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00743", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00744", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00744-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00744.py -- tests/files/web/generated/M21-GAP-00744-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00744", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00744", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00745", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00745-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00745.py -- tests/files/web/generated/M21-GAP-00745-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00745", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00745", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00746", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00746-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00746.py -- tests/files/web/generated/M21-GAP-00746-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00746", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00746", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00747", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00747-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00747.py -- tests/files/web/generated/M21-GAP-00747-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00747", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00747", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00748", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00748-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00748.py -- tests/files/web/generated/M21-GAP-00748-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00748", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00748", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00749", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00749-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00749.py -- tests/files/web/generated/M21-GAP-00749-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00749", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00749", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00750", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00750-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00750.py -- tests/files/web/generated/M21-GAP-00750-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00750", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00750", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00751", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00751-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00751.py -- tests/files/web/generated/M21-GAP-00751-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00751", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00751", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00752", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00752-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00752.py -- tests/files/web/generated/M21-GAP-00752-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00752", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00752", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00753", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00753-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00753.py -- tests/files/web/generated/M21-GAP-00753-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00753", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00753", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00754", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00754-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00754.py -- tests/files/web/generated/M21-GAP-00754-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00754", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00754", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00755", + "gapId": "keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00755-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00755.py -- tests/files/web/generated/M21-GAP-00755-keymap-item-Custom-Normals-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00755", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00755", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00756", + "gapId": "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00756-keymap-item-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00756.py -- tests/files/web/generated/M21-GAP-00756-keymap-item-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00756", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00756", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00757", + "gapId": "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00757-keymap-item-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00757.py -- tests/files/web/generated/M21-GAP-00757-keymap-item-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00757", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00757", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00758", + "gapId": "keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00758-keymap-item-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00758.py -- tests/files/web/generated/M21-GAP-00758-keymap-item-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00758", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00758", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00759", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00759-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00759.py -- tests/files/web/generated/M21-GAP-00759-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00759", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00759", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00760", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00760-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00760.py -- tests/files/web/generated/M21-GAP-00760-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00760", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00760", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00761", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00761-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00761.py -- tests/files/web/generated/M21-GAP-00761-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00761", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00761", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00762", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00762-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00762.py -- tests/files/web/generated/M21-GAP-00762-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00762", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00762", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00763", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00763-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00763.py -- tests/files/web/generated/M21-GAP-00763-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00763", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00763", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00764", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00764-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00764.py -- tests/files/web/generated/M21-GAP-00764-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00764", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00764", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00765", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00765-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00765.py -- tests/files/web/generated/M21-GAP-00765-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00765", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00765", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00766", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00766-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00766.py -- tests/files/web/generated/M21-GAP-00766-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00766", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00766", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00767", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00767-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00767.py -- tests/files/web/generated/M21-GAP-00767-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00767", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00767", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00768", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00768-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00768.py -- tests/files/web/generated/M21-GAP-00768-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00768", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00768", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00769", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00769-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00769.py -- tests/files/web/generated/M21-GAP-00769-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00769", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00769", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00770", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00770-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00770.py -- tests/files/web/generated/M21-GAP-00770-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00770", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00770", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00771", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00771-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00771.py -- tests/files/web/generated/M21-GAP-00771-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00771", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00771", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00772", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00772-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00772.py -- tests/files/web/generated/M21-GAP-00772-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00772", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00772", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00773", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00773-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00773.py -- tests/files/web/generated/M21-GAP-00773-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00773", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00773", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00774", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00774-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00774.py -- tests/files/web/generated/M21-GAP-00774-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00774", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00774", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00775", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00775-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00775.py -- tests/files/web/generated/M21-GAP-00775-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00775", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00775", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00776", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00776-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00776.py -- tests/files/web/generated/M21-GAP-00776-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00776", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00776", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00777", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00777-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00777.py -- tests/files/web/generated/M21-GAP-00777-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00777", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00777", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00778", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00778-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00778.py -- tests/files/web/generated/M21-GAP-00778-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00778", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00778", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00779", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00779-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00779.py -- tests/files/web/generated/M21-GAP-00779-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00779", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00779", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00780", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00780-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00780.py -- tests/files/web/generated/M21-GAP-00780-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00780", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00780", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00781", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00781-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00781.py -- tests/files/web/generated/M21-GAP-00781-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00781", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00781", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00782", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00782-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00782.py -- tests/files/web/generated/M21-GAP-00782-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00782", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00782", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00783", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00783-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00783.py -- tests/files/web/generated/M21-GAP-00783-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00783", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00783", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00784", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00784-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00784.py -- tests/files/web/generated/M21-GAP-00784-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00784", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00784", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00785", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00785-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00785.py -- tests/files/web/generated/M21-GAP-00785-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00785", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00785", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00786", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00786-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00786.py -- tests/files/web/generated/M21-GAP-00786-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00786", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00786", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00787", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00787-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00787.py -- tests/files/web/generated/M21-GAP-00787-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00787", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00787", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00788", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00788-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00788.py -- tests/files/web/generated/M21-GAP-00788-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00788", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00788", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00789", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00789-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00789.py -- tests/files/web/generated/M21-GAP-00789-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00789", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00789", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00790", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00790-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00790.py -- tests/files/web/generated/M21-GAP-00790-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00790", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00790", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00791", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00791-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00791.py -- tests/files/web/generated/M21-GAP-00791-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00791", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00791", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00792", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00792-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00792.py -- tests/files/web/generated/M21-GAP-00792-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00792", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00792", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00793", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00793-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00793.py -- tests/files/web/generated/M21-GAP-00793-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00793", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00793", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00794", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00794-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00794.py -- tests/files/web/generated/M21-GAP-00794-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00794", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00794", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00795", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00795-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00795.py -- tests/files/web/generated/M21-GAP-00795-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00795", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00795", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00796", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00796-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00796.py -- tests/files/web/generated/M21-GAP-00796-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00796", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00796", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00797", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00797-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00797.py -- tests/files/web/generated/M21-GAP-00797-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00797", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00797", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00798", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00798-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00798.py -- tests/files/web/generated/M21-GAP-00798-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00798", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00798", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00799", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00799-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00799.py -- tests/files/web/generated/M21-GAP-00799-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00799", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00799", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00800", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00800-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00800.py -- tests/files/web/generated/M21-GAP-00800-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00800", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00800", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00801", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00801-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00801.py -- tests/files/web/generated/M21-GAP-00801-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00801", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00801", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00802", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00802-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00802.py -- tests/files/web/generated/M21-GAP-00802-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00802", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00802", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00803", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00803-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00803.py -- tests/files/web/generated/M21-GAP-00803-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00803", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00803", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00804", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00804-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00804.py -- tests/files/web/generated/M21-GAP-00804-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00804", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00804", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00805", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00805-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00805.py -- tests/files/web/generated/M21-GAP-00805-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00805", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00805", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00806", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00806-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00806.py -- tests/files/web/generated/M21-GAP-00806-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00806", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00806", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00807", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00807-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00807.py -- tests/files/web/generated/M21-GAP-00807-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00807", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00807", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00808", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00808-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00808.py -- tests/files/web/generated/M21-GAP-00808-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00808", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00808", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00809", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00809-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00809.py -- tests/files/web/generated/M21-GAP-00809-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00809", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00809", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00810", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00810-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00810.py -- tests/files/web/generated/M21-GAP-00810-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00810", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00810", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00811", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00811-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00811.py -- tests/files/web/generated/M21-GAP-00811-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00811", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00811", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00812", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00812-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00812.py -- tests/files/web/generated/M21-GAP-00812-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00812", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00812", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00813", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00813-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00813.py -- tests/files/web/generated/M21-GAP-00813-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00813", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00813", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00814", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00814-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00814.py -- tests/files/web/generated/M21-GAP-00814-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00814", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00814", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00815", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00815-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00815.py -- tests/files/web/generated/M21-GAP-00815-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00815", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00815", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00816", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00816-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00816.py -- tests/files/web/generated/M21-GAP-00816-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00816", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00816", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00817", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00817-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00817.py -- tests/files/web/generated/M21-GAP-00817-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00817", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00817", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00818", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00818-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00818.py -- tests/files/web/generated/M21-GAP-00818-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00818", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00818", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00819", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00819-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00819.py -- tests/files/web/generated/M21-GAP-00819-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00819", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00819", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00820", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00820-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00820.py -- tests/files/web/generated/M21-GAP-00820-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00820", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00820", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00821", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00821-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00821.py -- tests/files/web/generated/M21-GAP-00821-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00821", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00821", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00822", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00822-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00822.py -- tests/files/web/generated/M21-GAP-00822-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00822", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00822", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00823", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00823-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00823.py -- tests/files/web/generated/M21-GAP-00823-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00823", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00823", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00824", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00824-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00824.py -- tests/files/web/generated/M21-GAP-00824-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00824", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00824", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00825", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00825-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00825.py -- tests/files/web/generated/M21-GAP-00825-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00825", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00825", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00826", + "gapId": "keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00826-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00826.py -- tests/files/web/generated/M21-GAP-00826-keymap-item-Dopesheet-DOPESHEET_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00826", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00826", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00827", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00827-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00827.py -- tests/files/web/generated/M21-GAP-00827-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00827", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00827", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00828", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00828-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00828.py -- tests/files/web/generated/M21-GAP-00828-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00828", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00828", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00829", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00829-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00829.py -- tests/files/web/generated/M21-GAP-00829-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00829", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00829", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00830", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00830-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00830.py -- tests/files/web/generated/M21-GAP-00830-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00830", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00830", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00831", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00831-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00831.py -- tests/files/web/generated/M21-GAP-00831-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00831", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00831", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00832", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00832-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00832.py -- tests/files/web/generated/M21-GAP-00832-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00832", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00832", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00833", + "gapId": "keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00833-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00833.py -- tests/files/web/generated/M21-GAP-00833-keymap-item-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00833", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00833", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00834", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00834-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00834.py -- tests/files/web/generated/M21-GAP-00834-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00834", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00834", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00835", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00835-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00835.py -- tests/files/web/generated/M21-GAP-00835-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00835", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00835", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00836", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00836-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00836.py -- tests/files/web/generated/M21-GAP-00836-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00836", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00836", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00837", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00837-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00837.py -- tests/files/web/generated/M21-GAP-00837-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00837", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00837", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00838", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00838-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00838.py -- tests/files/web/generated/M21-GAP-00838-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00838", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00838", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00839", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00839-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00839.py -- tests/files/web/generated/M21-GAP-00839-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00839", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00839", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00840", + "gapId": "keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00840-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00840.py -- tests/files/web/generated/M21-GAP-00840-keymap-item-Eyedropper-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00840", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00840", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00841", + "gapId": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00841-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00841.py -- tests/files/web/generated/M21-GAP-00841-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00841", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00841", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00842", + "gapId": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00842-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00842.py -- tests/files/web/generated/M21-GAP-00842-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00842", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00842", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00843", + "gapId": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00843-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00843.py -- tests/files/web/generated/M21-GAP-00843-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00843", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00843", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00844", + "gapId": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00844-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00844.py -- tests/files/web/generated/M21-GAP-00844-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00844", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00844", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00845", + "gapId": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00845-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00845.py -- tests/files/web/generated/M21-GAP-00845-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00845", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00845", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00846", + "gapId": "keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00846-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00846.py -- tests/files/web/generated/M21-GAP-00846-keymap-item-File-Browser-Buttons-FILE_BROWSER-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00846", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00846", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00847", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00847-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00847.py -- tests/files/web/generated/M21-GAP-00847-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00847", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00847", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00848", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00848-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00848.py -- tests/files/web/generated/M21-GAP-00848-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00848", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00848", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00849", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00849-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00849.py -- tests/files/web/generated/M21-GAP-00849-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00849", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00849", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00850", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00850-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00850.py -- tests/files/web/generated/M21-GAP-00850-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00850", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00850", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00851", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00851-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00851.py -- tests/files/web/generated/M21-GAP-00851-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00851", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00851", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00852", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00852-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00852.py -- tests/files/web/generated/M21-GAP-00852-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00852", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00852", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00853", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00853-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00853.py -- tests/files/web/generated/M21-GAP-00853-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00853", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00853", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00854", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00854-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00854.py -- tests/files/web/generated/M21-GAP-00854-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00854", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00854", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00855", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00855-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00855.py -- tests/files/web/generated/M21-GAP-00855-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00855", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00855", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00856", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00856-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00856.py -- tests/files/web/generated/M21-GAP-00856-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00856", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00856", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00857", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00857-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00857.py -- tests/files/web/generated/M21-GAP-00857-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00857", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00857", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00858", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00858-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00858.py -- tests/files/web/generated/M21-GAP-00858-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00858", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00858", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00859", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00859-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00859.py -- tests/files/web/generated/M21-GAP-00859-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00859", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00859", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00860", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00860-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00860.py -- tests/files/web/generated/M21-GAP-00860-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00860", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00860", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00861", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00861-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00861.py -- tests/files/web/generated/M21-GAP-00861-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00861", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00861", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00862", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00862-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00862.py -- tests/files/web/generated/M21-GAP-00862-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00862", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00862", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00863", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00863-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00863.py -- tests/files/web/generated/M21-GAP-00863-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00863", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00863", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00864", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00864-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00864.py -- tests/files/web/generated/M21-GAP-00864-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00864", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00864", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00865", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00865-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00865.py -- tests/files/web/generated/M21-GAP-00865-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00865", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00865", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00866", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00866-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00866.py -- tests/files/web/generated/M21-GAP-00866-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00866", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00866", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00867", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00867-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00867.py -- tests/files/web/generated/M21-GAP-00867-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00867", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00867", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00868", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00868-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00868.py -- tests/files/web/generated/M21-GAP-00868-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00868", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00868", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00869", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00869-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00869.py -- tests/files/web/generated/M21-GAP-00869-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00869", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00869", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00870", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00870-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00870.py -- tests/files/web/generated/M21-GAP-00870-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00870", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00870", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00871", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00871-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00871.py -- tests/files/web/generated/M21-GAP-00871-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00871", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00871", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00872", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00872-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00872.py -- tests/files/web/generated/M21-GAP-00872-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00872", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00872", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00873", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00873-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00873.py -- tests/files/web/generated/M21-GAP-00873-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00873", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00873", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00874", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00874-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00874.py -- tests/files/web/generated/M21-GAP-00874-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00874", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00874", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00875", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00875-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00875.py -- tests/files/web/generated/M21-GAP-00875-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00875", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00875", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00876", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00876-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00876.py -- tests/files/web/generated/M21-GAP-00876-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00876", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00876", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00877", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00877-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00877.py -- tests/files/web/generated/M21-GAP-00877-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00877", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00877", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00878", + "gapId": "keymap-item:File Browser Main:FILE_BROWSER:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00878-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00878.py -- tests/files/web/generated/M21-GAP-00878-keymap-item-File-Browser-Main-FILE_BROWSER-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00878", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00878", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00879", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00879-keymap-item-File-Browser-FILE_BROWSER-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00879.py -- tests/files/web/generated/M21-GAP-00879-keymap-item-File-Browser-FILE_BROWSER-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00879", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00879", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00880", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00880-keymap-item-File-Browser-FILE_BROWSER-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00880.py -- tests/files/web/generated/M21-GAP-00880-keymap-item-File-Browser-FILE_BROWSER-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00880", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00880", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00881", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00881-keymap-item-File-Browser-FILE_BROWSER-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00881.py -- tests/files/web/generated/M21-GAP-00881-keymap-item-File-Browser-FILE_BROWSER-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00881", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00881", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00882", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00882-keymap-item-File-Browser-FILE_BROWSER-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00882.py -- tests/files/web/generated/M21-GAP-00882-keymap-item-File-Browser-FILE_BROWSER-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00882", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00882", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00883", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00883-keymap-item-File-Browser-FILE_BROWSER-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00883.py -- tests/files/web/generated/M21-GAP-00883-keymap-item-File-Browser-FILE_BROWSER-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00883", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00883", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00884", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00884-keymap-item-File-Browser-FILE_BROWSER-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00884.py -- tests/files/web/generated/M21-GAP-00884-keymap-item-File-Browser-FILE_BROWSER-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00884", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00884", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00885", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00885-keymap-item-File-Browser-FILE_BROWSER-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00885.py -- tests/files/web/generated/M21-GAP-00885-keymap-item-File-Browser-FILE_BROWSER-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00885", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00885", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00886", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00886-keymap-item-File-Browser-FILE_BROWSER-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00886.py -- tests/files/web/generated/M21-GAP-00886-keymap-item-File-Browser-FILE_BROWSER-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00886", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00886", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00887", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00887-keymap-item-File-Browser-FILE_BROWSER-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00887.py -- tests/files/web/generated/M21-GAP-00887-keymap-item-File-Browser-FILE_BROWSER-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00887", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00887", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00888", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00888-keymap-item-File-Browser-FILE_BROWSER-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00888.py -- tests/files/web/generated/M21-GAP-00888-keymap-item-File-Browser-FILE_BROWSER-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00888", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00888", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00889", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00889-keymap-item-File-Browser-FILE_BROWSER-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00889.py -- tests/files/web/generated/M21-GAP-00889-keymap-item-File-Browser-FILE_BROWSER-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00889", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00889", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00890", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00890-keymap-item-File-Browser-FILE_BROWSER-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00890.py -- tests/files/web/generated/M21-GAP-00890-keymap-item-File-Browser-FILE_BROWSER-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00890", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00890", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00891", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00891-keymap-item-File-Browser-FILE_BROWSER-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00891.py -- tests/files/web/generated/M21-GAP-00891-keymap-item-File-Browser-FILE_BROWSER-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00891", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00891", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00892", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00892-keymap-item-File-Browser-FILE_BROWSER-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00892.py -- tests/files/web/generated/M21-GAP-00892-keymap-item-File-Browser-FILE_BROWSER-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00892", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00892", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00893", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00893-keymap-item-File-Browser-FILE_BROWSER-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00893.py -- tests/files/web/generated/M21-GAP-00893-keymap-item-File-Browser-FILE_BROWSER-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00893", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00893", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00894", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00894-keymap-item-File-Browser-FILE_BROWSER-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00894.py -- tests/files/web/generated/M21-GAP-00894-keymap-item-File-Browser-FILE_BROWSER-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00894", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00894", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00895", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00895-keymap-item-File-Browser-FILE_BROWSER-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00895.py -- tests/files/web/generated/M21-GAP-00895-keymap-item-File-Browser-FILE_BROWSER-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00895", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00895", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00896", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00896-keymap-item-File-Browser-FILE_BROWSER-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00896.py -- tests/files/web/generated/M21-GAP-00896-keymap-item-File-Browser-FILE_BROWSER-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00896", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00896", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00897", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00897-keymap-item-File-Browser-FILE_BROWSER-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00897.py -- tests/files/web/generated/M21-GAP-00897-keymap-item-File-Browser-FILE_BROWSER-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00897", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00897", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00898", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00898-keymap-item-File-Browser-FILE_BROWSER-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00898.py -- tests/files/web/generated/M21-GAP-00898-keymap-item-File-Browser-FILE_BROWSER-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00898", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00898", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00899", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00899-keymap-item-File-Browser-FILE_BROWSER-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00899.py -- tests/files/web/generated/M21-GAP-00899-keymap-item-File-Browser-FILE_BROWSER-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00899", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00899", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00900", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00900-keymap-item-File-Browser-FILE_BROWSER-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00900.py -- tests/files/web/generated/M21-GAP-00900-keymap-item-File-Browser-FILE_BROWSER-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00900", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00900", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00901", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00901-keymap-item-File-Browser-FILE_BROWSER-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00901.py -- tests/files/web/generated/M21-GAP-00901-keymap-item-File-Browser-FILE_BROWSER-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00901", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00901", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00902", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00902-keymap-item-File-Browser-FILE_BROWSER-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00902.py -- tests/files/web/generated/M21-GAP-00902-keymap-item-File-Browser-FILE_BROWSER-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00902", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00902", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00903", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00903-keymap-item-File-Browser-FILE_BROWSER-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00903.py -- tests/files/web/generated/M21-GAP-00903-keymap-item-File-Browser-FILE_BROWSER-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00903", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00903", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00904", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00904-keymap-item-File-Browser-FILE_BROWSER-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00904.py -- tests/files/web/generated/M21-GAP-00904-keymap-item-File-Browser-FILE_BROWSER-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00904", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00904", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00905", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00905-keymap-item-File-Browser-FILE_BROWSER-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00905.py -- tests/files/web/generated/M21-GAP-00905-keymap-item-File-Browser-FILE_BROWSER-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00905", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00905", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00906", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00906-keymap-item-File-Browser-FILE_BROWSER-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00906.py -- tests/files/web/generated/M21-GAP-00906-keymap-item-File-Browser-FILE_BROWSER-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00906", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00906", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00907", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00907-keymap-item-File-Browser-FILE_BROWSER-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00907.py -- tests/files/web/generated/M21-GAP-00907-keymap-item-File-Browser-FILE_BROWSER-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00907", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00907", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00908", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00908-keymap-item-File-Browser-FILE_BROWSER-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00908.py -- tests/files/web/generated/M21-GAP-00908-keymap-item-File-Browser-FILE_BROWSER-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00908", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00908", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00909", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00909-keymap-item-File-Browser-FILE_BROWSER-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00909.py -- tests/files/web/generated/M21-GAP-00909-keymap-item-File-Browser-FILE_BROWSER-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00909", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00909", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00910", + "gapId": "keymap-item:File Browser:FILE_BROWSER:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00910-keymap-item-File-Browser-FILE_BROWSER-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00910.py -- tests/files/web/generated/M21-GAP-00910-keymap-item-File-Browser-FILE_BROWSER-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00910", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00910", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00911", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00911-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00911.py -- tests/files/web/generated/M21-GAP-00911-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00911", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00911", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00912", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00912-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00912.py -- tests/files/web/generated/M21-GAP-00912-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00912", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00912", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00913", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00913-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00913.py -- tests/files/web/generated/M21-GAP-00913-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00913", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00913", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00914", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00914-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00914.py -- tests/files/web/generated/M21-GAP-00914-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00914", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00914", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00915", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00915-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00915.py -- tests/files/web/generated/M21-GAP-00915-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00915", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00915", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00916", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00916-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00916.py -- tests/files/web/generated/M21-GAP-00916-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00916", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00916", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00917", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00917-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00917.py -- tests/files/web/generated/M21-GAP-00917-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00917", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00917", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00918", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00918-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00918.py -- tests/files/web/generated/M21-GAP-00918-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00918", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00918", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00919", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00919-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00919.py -- tests/files/web/generated/M21-GAP-00919-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00919", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00919", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00920", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00920-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00920.py -- tests/files/web/generated/M21-GAP-00920-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00920", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00920", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00921", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00921-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00921.py -- tests/files/web/generated/M21-GAP-00921-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00921", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00921", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00922", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00922-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00922.py -- tests/files/web/generated/M21-GAP-00922-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00922", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00922", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00923", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00923-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00923.py -- tests/files/web/generated/M21-GAP-00923-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00923", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00923", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00924", + "gapId": "keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00924-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00924.py -- tests/files/web/generated/M21-GAP-00924-keymap-item-Fill-Tool-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00924", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00924", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00925", + "gapId": "keymap-item:Font:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00925-keymap-item-Font-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00925.py -- tests/files/web/generated/M21-GAP-00925-keymap-item-Font-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00925", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00925", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00926", + "gapId": "keymap-item:Font:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00926-keymap-item-Font-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00926.py -- tests/files/web/generated/M21-GAP-00926-keymap-item-Font-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00926", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00926", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00927", + "gapId": "keymap-item:Font:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00927-keymap-item-Font-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00927.py -- tests/files/web/generated/M21-GAP-00927-keymap-item-Font-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00927", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00927", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00928", + "gapId": "keymap-item:Font:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00928-keymap-item-Font-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00928.py -- tests/files/web/generated/M21-GAP-00928-keymap-item-Font-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00928", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00928", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00929", + "gapId": "keymap-item:Font:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00929-keymap-item-Font-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00929.py -- tests/files/web/generated/M21-GAP-00929-keymap-item-Font-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00929", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00929", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00930", + "gapId": "keymap-item:Font:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00930-keymap-item-Font-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00930.py -- tests/files/web/generated/M21-GAP-00930-keymap-item-Font-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00930", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00930", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00931", + "gapId": "keymap-item:Font:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00931-keymap-item-Font-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00931.py -- tests/files/web/generated/M21-GAP-00931-keymap-item-Font-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00931", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00931", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00932", + "gapId": "keymap-item:Font:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00932-keymap-item-Font-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00932.py -- tests/files/web/generated/M21-GAP-00932-keymap-item-Font-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00932", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00932", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00933", + "gapId": "keymap-item:Font:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00933-keymap-item-Font-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00933.py -- tests/files/web/generated/M21-GAP-00933-keymap-item-Font-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00933", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00933", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00934", + "gapId": "keymap-item:Font:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00934-keymap-item-Font-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00934.py -- tests/files/web/generated/M21-GAP-00934-keymap-item-Font-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00934", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00934", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00935", + "gapId": "keymap-item:Font:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00935-keymap-item-Font-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00935.py -- tests/files/web/generated/M21-GAP-00935-keymap-item-Font-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00935", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00935", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00936", + "gapId": "keymap-item:Font:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00936-keymap-item-Font-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00936.py -- tests/files/web/generated/M21-GAP-00936-keymap-item-Font-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00936", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00936", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00937", + "gapId": "keymap-item:Font:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00937-keymap-item-Font-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00937.py -- tests/files/web/generated/M21-GAP-00937-keymap-item-Font-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00937", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00937", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00938", + "gapId": "keymap-item:Font:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00938-keymap-item-Font-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00938.py -- tests/files/web/generated/M21-GAP-00938-keymap-item-Font-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00938", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00938", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00939", + "gapId": "keymap-item:Font:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00939-keymap-item-Font-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00939.py -- tests/files/web/generated/M21-GAP-00939-keymap-item-Font-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00939", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00939", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00940", + "gapId": "keymap-item:Font:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00940-keymap-item-Font-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00940.py -- tests/files/web/generated/M21-GAP-00940-keymap-item-Font-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00940", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00940", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00941", + "gapId": "keymap-item:Font:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00941-keymap-item-Font-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00941.py -- tests/files/web/generated/M21-GAP-00941-keymap-item-Font-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00941", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00941", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00942", + "gapId": "keymap-item:Font:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00942-keymap-item-Font-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00942.py -- tests/files/web/generated/M21-GAP-00942-keymap-item-Font-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00942", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00942", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00943", + "gapId": "keymap-item:Font:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00943-keymap-item-Font-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00943.py -- tests/files/web/generated/M21-GAP-00943-keymap-item-Font-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00943", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00943", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00944", + "gapId": "keymap-item:Font:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00944-keymap-item-Font-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00944.py -- tests/files/web/generated/M21-GAP-00944-keymap-item-Font-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00944", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00944", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00945", + "gapId": "keymap-item:Font:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00945-keymap-item-Font-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00945.py -- tests/files/web/generated/M21-GAP-00945-keymap-item-Font-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00945", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00945", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00946", + "gapId": "keymap-item:Font:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00946-keymap-item-Font-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00946.py -- tests/files/web/generated/M21-GAP-00946-keymap-item-Font-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00946", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00946", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00947", + "gapId": "keymap-item:Font:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00947-keymap-item-Font-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00947.py -- tests/files/web/generated/M21-GAP-00947-keymap-item-Font-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00947", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00947", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00948", + "gapId": "keymap-item:Font:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00948-keymap-item-Font-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00948.py -- tests/files/web/generated/M21-GAP-00948-keymap-item-Font-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00948", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00948", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00949", + "gapId": "keymap-item:Font:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00949-keymap-item-Font-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00949.py -- tests/files/web/generated/M21-GAP-00949-keymap-item-Font-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00949", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00949", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00950", + "gapId": "keymap-item:Font:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00950-keymap-item-Font-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00950.py -- tests/files/web/generated/M21-GAP-00950-keymap-item-Font-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00950", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00950", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00951", + "gapId": "keymap-item:Font:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00951-keymap-item-Font-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00951.py -- tests/files/web/generated/M21-GAP-00951-keymap-item-Font-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00951", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00951", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00952", + "gapId": "keymap-item:Font:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00952-keymap-item-Font-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00952.py -- tests/files/web/generated/M21-GAP-00952-keymap-item-Font-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00952", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00952", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00953", + "gapId": "keymap-item:Font:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00953-keymap-item-Font-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00953.py -- tests/files/web/generated/M21-GAP-00953-keymap-item-Font-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00953", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00953", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00954", + "gapId": "keymap-item:Font:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00954-keymap-item-Font-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00954.py -- tests/files/web/generated/M21-GAP-00954-keymap-item-Font-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00954", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00954", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00955", + "gapId": "keymap-item:Font:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00955-keymap-item-Font-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00955.py -- tests/files/web/generated/M21-GAP-00955-keymap-item-Font-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00955", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00955", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00956", + "gapId": "keymap-item:Font:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00956-keymap-item-Font-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00956.py -- tests/files/web/generated/M21-GAP-00956-keymap-item-Font-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00956", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00956", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00957", + "gapId": "keymap-item:Font:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00957-keymap-item-Font-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00957.py -- tests/files/web/generated/M21-GAP-00957-keymap-item-Font-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00957", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00957", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00958", + "gapId": "keymap-item:Font:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00958-keymap-item-Font-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00958.py -- tests/files/web/generated/M21-GAP-00958-keymap-item-Font-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00958", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00958", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00959", + "gapId": "keymap-item:Font:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00959-keymap-item-Font-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00959.py -- tests/files/web/generated/M21-GAP-00959-keymap-item-Font-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00959", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00959", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00960", + "gapId": "keymap-item:Font:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00960-keymap-item-Font-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00960.py -- tests/files/web/generated/M21-GAP-00960-keymap-item-Font-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00960", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00960", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00961", + "gapId": "keymap-item:Font:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00961-keymap-item-Font-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00961.py -- tests/files/web/generated/M21-GAP-00961-keymap-item-Font-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00961", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00961", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00962", + "gapId": "keymap-item:Font:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00962-keymap-item-Font-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00962.py -- tests/files/web/generated/M21-GAP-00962-keymap-item-Font-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00962", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00962", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00963", + "gapId": "keymap-item:Font:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00963-keymap-item-Font-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00963.py -- tests/files/web/generated/M21-GAP-00963-keymap-item-Font-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00963", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00963", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00964", + "gapId": "keymap-item:Font:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00964-keymap-item-Font-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00964.py -- tests/files/web/generated/M21-GAP-00964-keymap-item-Font-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00964", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00964", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00965", + "gapId": "keymap-item:Font:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00965-keymap-item-Font-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00965.py -- tests/files/web/generated/M21-GAP-00965-keymap-item-Font-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00965", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00965", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00966", + "gapId": "keymap-item:Font:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00966-keymap-item-Font-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00966.py -- tests/files/web/generated/M21-GAP-00966-keymap-item-Font-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00966", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00966", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00967", + "gapId": "keymap-item:Font:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00967-keymap-item-Font-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00967.py -- tests/files/web/generated/M21-GAP-00967-keymap-item-Font-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00967", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00967", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00968", + "gapId": "keymap-item:Font:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00968-keymap-item-Font-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00968.py -- tests/files/web/generated/M21-GAP-00968-keymap-item-Font-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00968", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00968", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00969", + "gapId": "keymap-item:Font:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00969-keymap-item-Font-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00969.py -- tests/files/web/generated/M21-GAP-00969-keymap-item-Font-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00969", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00969", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00970", + "gapId": "keymap-item:Font:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00970-keymap-item-Font-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00970.py -- tests/files/web/generated/M21-GAP-00970-keymap-item-Font-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00970", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00970", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00971", + "gapId": "keymap-item:Font:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00971-keymap-item-Font-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00971.py -- tests/files/web/generated/M21-GAP-00971-keymap-item-Font-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00971", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00971", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00972", + "gapId": "keymap-item:Font:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00972-keymap-item-Font-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00972.py -- tests/files/web/generated/M21-GAP-00972-keymap-item-Font-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00972", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00972", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00973", + "gapId": "keymap-item:Font:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00973-keymap-item-Font-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00973.py -- tests/files/web/generated/M21-GAP-00973-keymap-item-Font-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00973", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00973", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00974", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00974-keymap-item-Frames-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00974.py -- tests/files/web/generated/M21-GAP-00974-keymap-item-Frames-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00974", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00974", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00975", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00975-keymap-item-Frames-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00975.py -- tests/files/web/generated/M21-GAP-00975-keymap-item-Frames-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00975", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00975", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00976", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00976-keymap-item-Frames-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00976.py -- tests/files/web/generated/M21-GAP-00976-keymap-item-Frames-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00976", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00976", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00977", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00977-keymap-item-Frames-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00977.py -- tests/files/web/generated/M21-GAP-00977-keymap-item-Frames-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00977", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00977", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00978", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00978-keymap-item-Frames-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00978.py -- tests/files/web/generated/M21-GAP-00978-keymap-item-Frames-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00978", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00978", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00979", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00979-keymap-item-Frames-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00979.py -- tests/files/web/generated/M21-GAP-00979-keymap-item-Frames-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00979", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00979", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00980", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00980-keymap-item-Frames-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00980.py -- tests/files/web/generated/M21-GAP-00980-keymap-item-Frames-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00980", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00980", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00981", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00981-keymap-item-Frames-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00981.py -- tests/files/web/generated/M21-GAP-00981-keymap-item-Frames-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00981", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00981", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00982", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00982-keymap-item-Frames-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00982.py -- tests/files/web/generated/M21-GAP-00982-keymap-item-Frames-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00982", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00982", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00983", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00983-keymap-item-Frames-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00983.py -- tests/files/web/generated/M21-GAP-00983-keymap-item-Frames-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00983", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00983", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00984", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00984-keymap-item-Frames-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00984.py -- tests/files/web/generated/M21-GAP-00984-keymap-item-Frames-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00984", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00984", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00985", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00985-keymap-item-Frames-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00985.py -- tests/files/web/generated/M21-GAP-00985-keymap-item-Frames-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00985", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00985", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00986", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00986-keymap-item-Frames-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00986.py -- tests/files/web/generated/M21-GAP-00986-keymap-item-Frames-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00986", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00986", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00987", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00987-keymap-item-Frames-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00987.py -- tests/files/web/generated/M21-GAP-00987-keymap-item-Frames-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00987", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00987", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00988", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00988-keymap-item-Frames-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00988.py -- tests/files/web/generated/M21-GAP-00988-keymap-item-Frames-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00988", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00988", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00989", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00989-keymap-item-Frames-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00989.py -- tests/files/web/generated/M21-GAP-00989-keymap-item-Frames-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00989", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00989", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00990", + "gapId": "keymap-item:Frames:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00990-keymap-item-Frames-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00990.py -- tests/files/web/generated/M21-GAP-00990-keymap-item-Frames-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00990", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00990", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00991", + "gapId": "keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00991-keymap-item-Generic-Gizmo-Click-Drag-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00991.py -- tests/files/web/generated/M21-GAP-00991-keymap-item-Generic-Gizmo-Click-Drag-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00991", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00991", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00992", + "gapId": "keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00992-keymap-item-Generic-Gizmo-Click-Drag-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00992.py -- tests/files/web/generated/M21-GAP-00992-keymap-item-Generic-Gizmo-Click-Drag-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00992", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00992", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00993", + "gapId": "keymap-item:Generic Gizmo Drag:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00993-keymap-item-Generic-Gizmo-Drag-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00993.py -- tests/files/web/generated/M21-GAP-00993-keymap-item-Generic-Gizmo-Drag-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00993", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00993", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00994", + "gapId": "keymap-item:Generic Gizmo Maybe Drag:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00994-keymap-item-Generic-Gizmo-Maybe-Drag-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00994.py -- tests/files/web/generated/M21-GAP-00994-keymap-item-Generic-Gizmo-Maybe-Drag-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00994", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00994", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00995", + "gapId": "keymap-item:Generic Gizmo Select:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00995-keymap-item-Generic-Gizmo-Select-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00995.py -- tests/files/web/generated/M21-GAP-00995-keymap-item-Generic-Gizmo-Select-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00995", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00995", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00996", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00996-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00996.py -- tests/files/web/generated/M21-GAP-00996-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00996", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00996", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00997", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00997-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00997.py -- tests/files/web/generated/M21-GAP-00997-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00997", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00997", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00998", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00998-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00998.py -- tests/files/web/generated/M21-GAP-00998-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00998", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00998", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-00999", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-00999-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-00999.py -- tests/files/web/generated/M21-GAP-00999-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-00999", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-00999", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01000", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01000-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01000.py -- tests/files/web/generated/M21-GAP-01000-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01000", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01000", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01001", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01001-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01001.py -- tests/files/web/generated/M21-GAP-01001-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01001", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01002", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01002-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01002.py -- tests/files/web/generated/M21-GAP-01002-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01002", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01003", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01003-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01003.py -- tests/files/web/generated/M21-GAP-01003-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01003", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01004", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01004-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01004.py -- tests/files/web/generated/M21-GAP-01004-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01004", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01005", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01005-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01005.py -- tests/files/web/generated/M21-GAP-01005-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01005", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01006", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01006-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01006.py -- tests/files/web/generated/M21-GAP-01006-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01006", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01007", + "gapId": "keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01007-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01007.py -- tests/files/web/generated/M21-GAP-01007-keymap-item-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01007", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01008", + "gapId": "keymap-item:Generic Gizmo:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01008-keymap-item-Generic-Gizmo-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01008.py -- tests/files/web/generated/M21-GAP-01008-keymap-item-Generic-Gizmo-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01008", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01009", + "gapId": "keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01009-keymap-item-Generic-Tool-Annotate-Eraser-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01009.py -- tests/files/web/generated/M21-GAP-01009-keymap-item-Generic-Tool-Annotate-Eraser-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01009", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01010", + "gapId": "keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01010-keymap-item-Generic-Tool-Annotate-Eraser-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01010.py -- tests/files/web/generated/M21-GAP-01010-keymap-item-Generic-Tool-Annotate-Eraser-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01010", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01011", + "gapId": "keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01011-keymap-item-Generic-Tool-Annotate-Line-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01011.py -- tests/files/web/generated/M21-GAP-01011-keymap-item-Generic-Tool-Annotate-Line-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01011", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01012", + "gapId": "keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01012-keymap-item-Generic-Tool-Annotate-Line-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01012.py -- tests/files/web/generated/M21-GAP-01012-keymap-item-Generic-Tool-Annotate-Line-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01012", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01013", + "gapId": "keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01013-keymap-item-Generic-Tool-Annotate-Polygon-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01013.py -- tests/files/web/generated/M21-GAP-01013-keymap-item-Generic-Tool-Annotate-Polygon-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01013", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01014", + "gapId": "keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01014-keymap-item-Generic-Tool-Annotate-Polygon-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01014.py -- tests/files/web/generated/M21-GAP-01014-keymap-item-Generic-Tool-Annotate-Polygon-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01014", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01015", + "gapId": "keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01015-keymap-item-Generic-Tool-Annotate-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01015.py -- tests/files/web/generated/M21-GAP-01015-keymap-item-Generic-Tool-Annotate-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01015", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01016", + "gapId": "keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01016-keymap-item-Generic-Tool-Annotate-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01016.py -- tests/files/web/generated/M21-GAP-01016-keymap-item-Generic-Tool-Annotate-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01016", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01017", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01017-keymap-item-Gesture-Box-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01017.py -- tests/files/web/generated/M21-GAP-01017-keymap-item-Gesture-Box-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01017", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01018", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01018-keymap-item-Gesture-Box-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01018.py -- tests/files/web/generated/M21-GAP-01018-keymap-item-Gesture-Box-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01018", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01019", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01019-keymap-item-Gesture-Box-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01019.py -- tests/files/web/generated/M21-GAP-01019-keymap-item-Gesture-Box-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01019", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01020", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01020-keymap-item-Gesture-Box-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01020.py -- tests/files/web/generated/M21-GAP-01020-keymap-item-Gesture-Box-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01020", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01021", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01021-keymap-item-Gesture-Box-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01021.py -- tests/files/web/generated/M21-GAP-01021-keymap-item-Gesture-Box-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01021", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01022", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01022-keymap-item-Gesture-Box-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01022.py -- tests/files/web/generated/M21-GAP-01022-keymap-item-Gesture-Box-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01022", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01023", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01023-keymap-item-Gesture-Box-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01023.py -- tests/files/web/generated/M21-GAP-01023-keymap-item-Gesture-Box-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01023", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01024", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01024-keymap-item-Gesture-Box-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01024.py -- tests/files/web/generated/M21-GAP-01024-keymap-item-Gesture-Box-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01024", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01025", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01025-keymap-item-Gesture-Box-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01025.py -- tests/files/web/generated/M21-GAP-01025-keymap-item-Gesture-Box-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01025", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01026", + "gapId": "keymap-item:Gesture Box:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01026-keymap-item-Gesture-Box-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01026.py -- tests/files/web/generated/M21-GAP-01026-keymap-item-Gesture-Box-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01026", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01027", + "gapId": "keymap-item:Gesture Lasso:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01027-keymap-item-Gesture-Lasso-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01027.py -- tests/files/web/generated/M21-GAP-01027-keymap-item-Gesture-Lasso-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01027", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01028", + "gapId": "keymap-item:Gesture Polyline:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01028-keymap-item-Gesture-Polyline-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01028.py -- tests/files/web/generated/M21-GAP-01028-keymap-item-Gesture-Polyline-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01028", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01029", + "gapId": "keymap-item:Gesture Polyline:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01029-keymap-item-Gesture-Polyline-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01029.py -- tests/files/web/generated/M21-GAP-01029-keymap-item-Gesture-Polyline-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01029", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01030", + "gapId": "keymap-item:Gesture Polyline:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01030-keymap-item-Gesture-Polyline-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01030.py -- tests/files/web/generated/M21-GAP-01030-keymap-item-Gesture-Polyline-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01030", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01031", + "gapId": "keymap-item:Gesture Polyline:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01031-keymap-item-Gesture-Polyline-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01031.py -- tests/files/web/generated/M21-GAP-01031-keymap-item-Gesture-Polyline-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01031", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01032", + "gapId": "keymap-item:Gesture Polyline:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01032-keymap-item-Gesture-Polyline-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01032.py -- tests/files/web/generated/M21-GAP-01032-keymap-item-Gesture-Polyline-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01032", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01033", + "gapId": "keymap-item:Gesture Polyline:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01033-keymap-item-Gesture-Polyline-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01033.py -- tests/files/web/generated/M21-GAP-01033-keymap-item-Gesture-Polyline-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01033", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01034", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01034-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01034.py -- tests/files/web/generated/M21-GAP-01034-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01034", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01035", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01035-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01035.py -- tests/files/web/generated/M21-GAP-01035-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01035", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01036", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01036-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01036.py -- tests/files/web/generated/M21-GAP-01036-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01036", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01037", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01037-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01037.py -- tests/files/web/generated/M21-GAP-01037-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01037", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01038", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01038-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01038.py -- tests/files/web/generated/M21-GAP-01038-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01038", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01039", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01039-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01039.py -- tests/files/web/generated/M21-GAP-01039-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01039", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01040", + "gapId": "keymap-item:Gesture Straight Line:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01040-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01040.py -- tests/files/web/generated/M21-GAP-01040-keymap-item-Gesture-Straight-Line-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01040", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01041", + "gapId": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01041-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01041.py -- tests/files/web/generated/M21-GAP-01041-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01041", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01042", + "gapId": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01042-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01042.py -- tests/files/web/generated/M21-GAP-01042-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01042", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01043", + "gapId": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01043-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01043.py -- tests/files/web/generated/M21-GAP-01043-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01043", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01044", + "gapId": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01044-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01044.py -- tests/files/web/generated/M21-GAP-01044-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01044", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01045", + "gapId": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01045-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01045.py -- tests/files/web/generated/M21-GAP-01045-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01045", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01046", + "gapId": "keymap-item:Gesture Zoom Border:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01046-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01046.py -- tests/files/web/generated/M21-GAP-01046-keymap-item-Gesture-Zoom-Border-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01046", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01047", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01047-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01047.py -- tests/files/web/generated/M21-GAP-01047-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01047", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01048", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01048-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01048.py -- tests/files/web/generated/M21-GAP-01048-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01048", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01049", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01049-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01049.py -- tests/files/web/generated/M21-GAP-01049-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01049", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01050", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01050-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01050.py -- tests/files/web/generated/M21-GAP-01050-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01050", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01051", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01051-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01051.py -- tests/files/web/generated/M21-GAP-01051-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01051", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01052", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01052-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01052.py -- tests/files/web/generated/M21-GAP-01052-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01052", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01053", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01053-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01053.py -- tests/files/web/generated/M21-GAP-01053-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01053", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01054", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01054-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01054.py -- tests/files/web/generated/M21-GAP-01054-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01054", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01055", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01055-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01055.py -- tests/files/web/generated/M21-GAP-01055-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01055", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01056", + "gapId": "keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01056-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01056.py -- tests/files/web/generated/M21-GAP-01056-keymap-item-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01056", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01057", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01057-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01057.py -- tests/files/web/generated/M21-GAP-01057-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01057", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01058", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01058-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01058.py -- tests/files/web/generated/M21-GAP-01058-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01058", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01059", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01059-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01059.py -- tests/files/web/generated/M21-GAP-01059-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01059", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01060", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01060-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01060.py -- tests/files/web/generated/M21-GAP-01060-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01060", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01061", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01061-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01061.py -- tests/files/web/generated/M21-GAP-01061-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01061", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01062", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01062-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01062.py -- tests/files/web/generated/M21-GAP-01062-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01062", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01063", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01063-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01063.py -- tests/files/web/generated/M21-GAP-01063-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01063", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01064", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01064-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01064.py -- tests/files/web/generated/M21-GAP-01064-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01064", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01065", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01065-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01065.py -- tests/files/web/generated/M21-GAP-01065-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01065", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01066", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01066-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01066.py -- tests/files/web/generated/M21-GAP-01066-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01066", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01067", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01067-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01067.py -- tests/files/web/generated/M21-GAP-01067-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01067", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01068", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01068-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01068.py -- tests/files/web/generated/M21-GAP-01068-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01068", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01069", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01069-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01069.py -- tests/files/web/generated/M21-GAP-01069-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01069", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01070", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01070-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01070.py -- tests/files/web/generated/M21-GAP-01070-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01070", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01071", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01071-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01071.py -- tests/files/web/generated/M21-GAP-01071-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01071", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01072", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01072-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01072.py -- tests/files/web/generated/M21-GAP-01072-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01072", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01073", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01073-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01073.py -- tests/files/web/generated/M21-GAP-01073-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01073", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01074", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01074-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01074.py -- tests/files/web/generated/M21-GAP-01074-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01074", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01075", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01075-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01075.py -- tests/files/web/generated/M21-GAP-01075-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01075", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01076", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01076-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01076.py -- tests/files/web/generated/M21-GAP-01076-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01076", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01077", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01077-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01077.py -- tests/files/web/generated/M21-GAP-01077-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01077", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01078", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01078-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01078.py -- tests/files/web/generated/M21-GAP-01078-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01078", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01079", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01079-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01079.py -- tests/files/web/generated/M21-GAP-01079-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01079", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01080", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01080-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01080.py -- tests/files/web/generated/M21-GAP-01080-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01080", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01081", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01081-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01081.py -- tests/files/web/generated/M21-GAP-01081-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01081", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01082", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01082-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01082.py -- tests/files/web/generated/M21-GAP-01082-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01082", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01083", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01083-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01083.py -- tests/files/web/generated/M21-GAP-01083-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01083", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01084", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01084-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01084.py -- tests/files/web/generated/M21-GAP-01084-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01084", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01085", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01085-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01085.py -- tests/files/web/generated/M21-GAP-01085-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01085", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01086", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01086-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01086.py -- tests/files/web/generated/M21-GAP-01086-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01086", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01087", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01087-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01087.py -- tests/files/web/generated/M21-GAP-01087-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01087", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01088", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01088-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01088.py -- tests/files/web/generated/M21-GAP-01088-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01088", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01089", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01089-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01089.py -- tests/files/web/generated/M21-GAP-01089-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01089", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01090", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01090-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01090.py -- tests/files/web/generated/M21-GAP-01090-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01090", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01091", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01091-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01091.py -- tests/files/web/generated/M21-GAP-01091-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01091", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01092", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01092-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01092.py -- tests/files/web/generated/M21-GAP-01092-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01092", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01093", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01093-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01093.py -- tests/files/web/generated/M21-GAP-01093-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01093", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01094", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01094-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01094.py -- tests/files/web/generated/M21-GAP-01094-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01094", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01095", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01095-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01095.py -- tests/files/web/generated/M21-GAP-01095-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01095", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01096", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01096-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01096.py -- tests/files/web/generated/M21-GAP-01096-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01096", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01097", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01097-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01097.py -- tests/files/web/generated/M21-GAP-01097-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01097", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01098", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01098-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01098.py -- tests/files/web/generated/M21-GAP-01098-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01098", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01099", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01099-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01099.py -- tests/files/web/generated/M21-GAP-01099-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01099", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01100", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01100-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01100.py -- tests/files/web/generated/M21-GAP-01100-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01100", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01101", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01101-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01101.py -- tests/files/web/generated/M21-GAP-01101-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01101", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01102", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01102-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01102.py -- tests/files/web/generated/M21-GAP-01102-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01102", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01103", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01103-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01103.py -- tests/files/web/generated/M21-GAP-01103-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01103", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01104", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01104-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01104.py -- tests/files/web/generated/M21-GAP-01104-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01104", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01105", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01105-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01105.py -- tests/files/web/generated/M21-GAP-01105-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01105", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01106", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01106-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01106.py -- tests/files/web/generated/M21-GAP-01106-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01106", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01107", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01107-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01107.py -- tests/files/web/generated/M21-GAP-01107-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01107", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01108", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01108-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01108.py -- tests/files/web/generated/M21-GAP-01108-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01108", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01109", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01109-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01109.py -- tests/files/web/generated/M21-GAP-01109-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01109", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01110", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01110-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01110.py -- tests/files/web/generated/M21-GAP-01110-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01110", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01111", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01111-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01111.py -- tests/files/web/generated/M21-GAP-01111-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01111", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01112", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01112-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01112.py -- tests/files/web/generated/M21-GAP-01112-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01112", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01113", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01113-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01113.py -- tests/files/web/generated/M21-GAP-01113-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01113", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01114", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01114-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01114.py -- tests/files/web/generated/M21-GAP-01114-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01114", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01115", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01115-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01115.py -- tests/files/web/generated/M21-GAP-01115-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01115", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01116", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01116-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01116.py -- tests/files/web/generated/M21-GAP-01116-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01116", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01117", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01117-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01117.py -- tests/files/web/generated/M21-GAP-01117-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01117", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01118", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01118-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01118.py -- tests/files/web/generated/M21-GAP-01118-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01118", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01119", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01119-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01119.py -- tests/files/web/generated/M21-GAP-01119-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01119", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01120", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01120-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01120.py -- tests/files/web/generated/M21-GAP-01120-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01120", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01121", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01121-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01121.py -- tests/files/web/generated/M21-GAP-01121-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01121", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01122", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01122-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01122.py -- tests/files/web/generated/M21-GAP-01122-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01122", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01123", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01123-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01123.py -- tests/files/web/generated/M21-GAP-01123-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01123", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01124", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01124-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01124.py -- tests/files/web/generated/M21-GAP-01124-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01124", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01125", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01125-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01125.py -- tests/files/web/generated/M21-GAP-01125-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01125", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01126", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01126-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01126.py -- tests/files/web/generated/M21-GAP-01126-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01126", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01127", + "gapId": "keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01127-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01127.py -- tests/files/web/generated/M21-GAP-01127-keymap-item-Graph-Editor-GRAPH_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01127", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01128", + "gapId": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01128-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01128.py -- tests/files/web/generated/M21-GAP-01128-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01128", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01129", + "gapId": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01129-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01129.py -- tests/files/web/generated/M21-GAP-01129-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01129", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01130", + "gapId": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01130-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01130.py -- tests/files/web/generated/M21-GAP-01130-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01130", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01131", + "gapId": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01131-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01131.py -- tests/files/web/generated/M21-GAP-01131-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01131", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01132", + "gapId": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01132-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01132.py -- tests/files/web/generated/M21-GAP-01132-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01132", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01133", + "gapId": "keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01133-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01133.py -- tests/files/web/generated/M21-GAP-01133-keymap-item-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01133", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01134", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01134-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01134.py -- tests/files/web/generated/M21-GAP-01134-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01134", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01135", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01135-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01135.py -- tests/files/web/generated/M21-GAP-01135-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01135", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01136", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01136-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01136.py -- tests/files/web/generated/M21-GAP-01136-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01136", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01137", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01137-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01137.py -- tests/files/web/generated/M21-GAP-01137-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01137", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01138", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01138-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01138.py -- tests/files/web/generated/M21-GAP-01138-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01138", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01139", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01139-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01139.py -- tests/files/web/generated/M21-GAP-01139-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01139", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01140", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01140-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01140.py -- tests/files/web/generated/M21-GAP-01140-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01140", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01141", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01141-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01141.py -- tests/files/web/generated/M21-GAP-01141-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01141", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01142", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01142-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01142.py -- tests/files/web/generated/M21-GAP-01142-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01142", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01143", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01143-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01143.py -- tests/files/web/generated/M21-GAP-01143-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01143", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01144", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01144-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01144.py -- tests/files/web/generated/M21-GAP-01144-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01144", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01145", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01145-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01145.py -- tests/files/web/generated/M21-GAP-01145-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01145", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01146", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01146-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01146.py -- tests/files/web/generated/M21-GAP-01146-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01146", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01147", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01147-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01147.py -- tests/files/web/generated/M21-GAP-01147-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01147", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01148", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01148-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01148.py -- tests/files/web/generated/M21-GAP-01148-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01148", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01149", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01149-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01149.py -- tests/files/web/generated/M21-GAP-01149-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01149", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01150", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01150-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01150.py -- tests/files/web/generated/M21-GAP-01150-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01150", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01151", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01151-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01151.py -- tests/files/web/generated/M21-GAP-01151-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01151", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01152", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01152-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01152.py -- tests/files/web/generated/M21-GAP-01152-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01152", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01153", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01153-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01153.py -- tests/files/web/generated/M21-GAP-01153-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01153", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01154", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01154-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01154.py -- tests/files/web/generated/M21-GAP-01154-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01154", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01155", + "gapId": "keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01155-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01155.py -- tests/files/web/generated/M21-GAP-01155-keymap-item-Grease-Pencil-Draw-Mode-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01155", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01156", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01156-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01156.py -- tests/files/web/generated/M21-GAP-01156-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01156", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01157", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01157-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01157.py -- tests/files/web/generated/M21-GAP-01157-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01157", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01158", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01158-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01158.py -- tests/files/web/generated/M21-GAP-01158-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01158", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01159", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01159-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01159.py -- tests/files/web/generated/M21-GAP-01159-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01159", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01160", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01160-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01160.py -- tests/files/web/generated/M21-GAP-01160-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01160", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01161", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01161-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01161.py -- tests/files/web/generated/M21-GAP-01161-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01161", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01162", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01162-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01162.py -- tests/files/web/generated/M21-GAP-01162-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01162", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01163", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01163-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01163.py -- tests/files/web/generated/M21-GAP-01163-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01163", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01164", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01164-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01164.py -- tests/files/web/generated/M21-GAP-01164-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01164", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01165", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01165-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01165.py -- tests/files/web/generated/M21-GAP-01165-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01165", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01166", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01166-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01166.py -- tests/files/web/generated/M21-GAP-01166-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01166", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01167", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01167-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01167.py -- tests/files/web/generated/M21-GAP-01167-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01167", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01168", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01168-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01168.py -- tests/files/web/generated/M21-GAP-01168-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01168", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01169", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01169-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01169.py -- tests/files/web/generated/M21-GAP-01169-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01169", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01170", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01170-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01170.py -- tests/files/web/generated/M21-GAP-01170-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01170", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01171", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01171-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01171.py -- tests/files/web/generated/M21-GAP-01171-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01171", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01172", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01172-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01172.py -- tests/files/web/generated/M21-GAP-01172-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01172", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01173", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01173-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01173.py -- tests/files/web/generated/M21-GAP-01173-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01173", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01174", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01174-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01174.py -- tests/files/web/generated/M21-GAP-01174-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01174", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01175", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01175-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01175.py -- tests/files/web/generated/M21-GAP-01175-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01175", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01176", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01176-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01176.py -- tests/files/web/generated/M21-GAP-01176-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01176", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01177", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01177-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01177.py -- tests/files/web/generated/M21-GAP-01177-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01177", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01178", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01178-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01178.py -- tests/files/web/generated/M21-GAP-01178-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01178", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01179", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01179-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01179.py -- tests/files/web/generated/M21-GAP-01179-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01179", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01180", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01180-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01180.py -- tests/files/web/generated/M21-GAP-01180-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01180", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01181", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01181-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01181.py -- tests/files/web/generated/M21-GAP-01181-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01181", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01182", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01182-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01182.py -- tests/files/web/generated/M21-GAP-01182-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01182", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01183", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01183-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01183.py -- tests/files/web/generated/M21-GAP-01183-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01183", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01184", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01184-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01184.py -- tests/files/web/generated/M21-GAP-01184-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01184", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01185", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01185-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01185.py -- tests/files/web/generated/M21-GAP-01185-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01185", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01186", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01186-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01186.py -- tests/files/web/generated/M21-GAP-01186-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01186", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01187", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01187-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01187.py -- tests/files/web/generated/M21-GAP-01187-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01187", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01188", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01188-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01188.py -- tests/files/web/generated/M21-GAP-01188-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01188", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01189", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01189-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01189.py -- tests/files/web/generated/M21-GAP-01189-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01189", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01190", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01190-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01190.py -- tests/files/web/generated/M21-GAP-01190-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01190", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01191", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01191-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01191.py -- tests/files/web/generated/M21-GAP-01191-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01191", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01192", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01192-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01192.py -- tests/files/web/generated/M21-GAP-01192-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01192", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01193", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01193-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01193.py -- tests/files/web/generated/M21-GAP-01193-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01193", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01194", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01194-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01194.py -- tests/files/web/generated/M21-GAP-01194-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01194", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01195", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01195-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01195.py -- tests/files/web/generated/M21-GAP-01195-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01195", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01196", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01196-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01196.py -- tests/files/web/generated/M21-GAP-01196-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01196", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01197", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01197-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01197.py -- tests/files/web/generated/M21-GAP-01197-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01197", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01198", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01198-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01198.py -- tests/files/web/generated/M21-GAP-01198-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01198", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01199", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01199-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01199.py -- tests/files/web/generated/M21-GAP-01199-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01199", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01200", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01200-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01200.py -- tests/files/web/generated/M21-GAP-01200-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01200", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01201", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01201-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01201.py -- tests/files/web/generated/M21-GAP-01201-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01201", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01202", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01202-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01202.py -- tests/files/web/generated/M21-GAP-01202-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01202", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01203", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01203-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01203.py -- tests/files/web/generated/M21-GAP-01203-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01203", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01204", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01204-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01204.py -- tests/files/web/generated/M21-GAP-01204-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01204", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01205", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01205-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01205.py -- tests/files/web/generated/M21-GAP-01205-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01205", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01206", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01206-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01206.py -- tests/files/web/generated/M21-GAP-01206-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01206", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01207", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01207-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01207.py -- tests/files/web/generated/M21-GAP-01207-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01207", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01208", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01208-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01208.py -- tests/files/web/generated/M21-GAP-01208-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01208", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01209", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01209-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01209.py -- tests/files/web/generated/M21-GAP-01209-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01209", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01210", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01210-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01210.py -- tests/files/web/generated/M21-GAP-01210-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01210", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01211", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01211-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01211.py -- tests/files/web/generated/M21-GAP-01211-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01211", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01212", + "gapId": "keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01212-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01212.py -- tests/files/web/generated/M21-GAP-01212-keymap-item-Grease-Pencil-Edit-Mode-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01212", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01213", + "gapId": "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01213-keymap-item-Grease-Pencil-Fill-Tool-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01213.py -- tests/files/web/generated/M21-GAP-01213-keymap-item-Grease-Pencil-Fill-Tool-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01213", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01214", + "gapId": "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01214-keymap-item-Grease-Pencil-Fill-Tool-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01214.py -- tests/files/web/generated/M21-GAP-01214-keymap-item-Grease-Pencil-Fill-Tool-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01214", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01215", + "gapId": "keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01215-keymap-item-Grease-Pencil-Fill-Tool-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01215.py -- tests/files/web/generated/M21-GAP-01215-keymap-item-Grease-Pencil-Fill-Tool-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01215", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01216", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01216-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01216.py -- tests/files/web/generated/M21-GAP-01216-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01216", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01217", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01217-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01217.py -- tests/files/web/generated/M21-GAP-01217-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01217", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01218", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01218-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01218.py -- tests/files/web/generated/M21-GAP-01218-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01218", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01219", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01219-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01219.py -- tests/files/web/generated/M21-GAP-01219-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01219", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01220", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01220-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01220.py -- tests/files/web/generated/M21-GAP-01220-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01220", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01221", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01221-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01221.py -- tests/files/web/generated/M21-GAP-01221-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01221", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01222", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01222-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01222.py -- tests/files/web/generated/M21-GAP-01222-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01222", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01223", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01223-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01223.py -- tests/files/web/generated/M21-GAP-01223-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01223", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01224", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01224-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01224.py -- tests/files/web/generated/M21-GAP-01224-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01224", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01225", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01225-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01225.py -- tests/files/web/generated/M21-GAP-01225-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01225", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01226", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01226-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01226.py -- tests/files/web/generated/M21-GAP-01226-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01226", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01227", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01227-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01227.py -- tests/files/web/generated/M21-GAP-01227-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01227", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01228", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01228-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01228.py -- tests/files/web/generated/M21-GAP-01228-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01228", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01229", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01229-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01229.py -- tests/files/web/generated/M21-GAP-01229-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01229", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01230", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01230-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01230.py -- tests/files/web/generated/M21-GAP-01230-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01230", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01231", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01231-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01231.py -- tests/files/web/generated/M21-GAP-01231-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01231", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01232", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01232-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01232.py -- tests/files/web/generated/M21-GAP-01232-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01232", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01233", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01233-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01233.py -- tests/files/web/generated/M21-GAP-01233-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01233", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01234", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01234-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01234.py -- tests/files/web/generated/M21-GAP-01234-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01234", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01235", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01235-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01235.py -- tests/files/web/generated/M21-GAP-01235-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01235", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01236", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01236-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01236.py -- tests/files/web/generated/M21-GAP-01236-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01236", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01237", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01237-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01237.py -- tests/files/web/generated/M21-GAP-01237-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01237", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01238", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01238-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01238.py -- tests/files/web/generated/M21-GAP-01238-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01238", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01239", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01239-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01239.py -- tests/files/web/generated/M21-GAP-01239-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01239", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01240", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01240-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01240.py -- tests/files/web/generated/M21-GAP-01240-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01240", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01241", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01241-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01241.py -- tests/files/web/generated/M21-GAP-01241-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01241", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01242", + "gapId": "keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01242-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01242.py -- tests/files/web/generated/M21-GAP-01242-keymap-item-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01242", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01243", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01243-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01243.py -- tests/files/web/generated/M21-GAP-01243-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01243", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01244", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01244-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01244.py -- tests/files/web/generated/M21-GAP-01244-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01244", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01245", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01245-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01245.py -- tests/files/web/generated/M21-GAP-01245-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01245", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01246", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01246-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01246.py -- tests/files/web/generated/M21-GAP-01246-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01246", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01247", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01247-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01247.py -- tests/files/web/generated/M21-GAP-01247-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01247", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01248", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01248-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01248.py -- tests/files/web/generated/M21-GAP-01248-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01248", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01249", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01249-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01249.py -- tests/files/web/generated/M21-GAP-01249-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01249", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01250", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01250-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01250.py -- tests/files/web/generated/M21-GAP-01250-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01250", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01251", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01251-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01251.py -- tests/files/web/generated/M21-GAP-01251-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01251", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01252", + "gapId": "keymap-item:Grease Pencil Selection:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01252-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01252.py -- tests/files/web/generated/M21-GAP-01252-keymap-item-Grease-Pencil-Selection-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01252", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01253", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01253-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01253.py -- tests/files/web/generated/M21-GAP-01253-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01253", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01254", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01254-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01254.py -- tests/files/web/generated/M21-GAP-01254-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01254", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01255", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01255-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01255.py -- tests/files/web/generated/M21-GAP-01255-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01255", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01256", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01256-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01256.py -- tests/files/web/generated/M21-GAP-01256-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01256", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01257", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01257-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01257.py -- tests/files/web/generated/M21-GAP-01257-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01257", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01258", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01258-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01258.py -- tests/files/web/generated/M21-GAP-01258-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01258", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01259", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01259-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01259.py -- tests/files/web/generated/M21-GAP-01259-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01259", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01260", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01260-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01260.py -- tests/files/web/generated/M21-GAP-01260-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01260", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01261", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01261-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01261.py -- tests/files/web/generated/M21-GAP-01261-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01261", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01262", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01262-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01262.py -- tests/files/web/generated/M21-GAP-01262-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01262", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01263", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01263-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01263.py -- tests/files/web/generated/M21-GAP-01263-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01263", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01264", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01264-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01264.py -- tests/files/web/generated/M21-GAP-01264-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01264", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01265", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01265-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01265.py -- tests/files/web/generated/M21-GAP-01265-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01265", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01266", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01266-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01266.py -- tests/files/web/generated/M21-GAP-01266-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01266", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01267", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01267-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01267.py -- tests/files/web/generated/M21-GAP-01267-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01267", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01268", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01268-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01268.py -- tests/files/web/generated/M21-GAP-01268-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01268", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01269", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01269-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01269.py -- tests/files/web/generated/M21-GAP-01269-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01269", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01270", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01270-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01270.py -- tests/files/web/generated/M21-GAP-01270-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01270", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01271", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01271-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01271.py -- tests/files/web/generated/M21-GAP-01271-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01271", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01272", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01272-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01272.py -- tests/files/web/generated/M21-GAP-01272-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01272", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01273", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01273-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01273.py -- tests/files/web/generated/M21-GAP-01273-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01273", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01274", + "gapId": "keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01274-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01274.py -- tests/files/web/generated/M21-GAP-01274-keymap-item-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01274", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01275", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01275-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01275.py -- tests/files/web/generated/M21-GAP-01275-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01275", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01276", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01276-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01276.py -- tests/files/web/generated/M21-GAP-01276-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01276", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01277", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01277-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01277.py -- tests/files/web/generated/M21-GAP-01277-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01277", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01278", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01278-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01278.py -- tests/files/web/generated/M21-GAP-01278-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01278", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01279", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01279-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01279.py -- tests/files/web/generated/M21-GAP-01279-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01279", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01280", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01280-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01280.py -- tests/files/web/generated/M21-GAP-01280-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01280", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01281", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01281-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01281.py -- tests/files/web/generated/M21-GAP-01281-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01281", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01282", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01282-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01282.py -- tests/files/web/generated/M21-GAP-01282-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01282", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01283", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01283-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01283.py -- tests/files/web/generated/M21-GAP-01283-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01283", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01284", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01284-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01284.py -- tests/files/web/generated/M21-GAP-01284-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01284", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01285", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01285-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01285.py -- tests/files/web/generated/M21-GAP-01285-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01285", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01286", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01286-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01286.py -- tests/files/web/generated/M21-GAP-01286-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01286", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01287", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01287-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01287.py -- tests/files/web/generated/M21-GAP-01287-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01287", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01288", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01288-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01288.py -- tests/files/web/generated/M21-GAP-01288-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01288", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01289", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01289-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01289.py -- tests/files/web/generated/M21-GAP-01289-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01289", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01290", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01290-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01290.py -- tests/files/web/generated/M21-GAP-01290-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01290", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01291", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01291-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01291.py -- tests/files/web/generated/M21-GAP-01291-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01291", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01292", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01292-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01292.py -- tests/files/web/generated/M21-GAP-01292-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01292", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01293", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01293-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01293.py -- tests/files/web/generated/M21-GAP-01293-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01293", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01294", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01294-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01294.py -- tests/files/web/generated/M21-GAP-01294-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01294", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01295", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01295-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01295.py -- tests/files/web/generated/M21-GAP-01295-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01295", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01296", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01296-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01296.py -- tests/files/web/generated/M21-GAP-01296-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01296", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01297", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01297-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01297.py -- tests/files/web/generated/M21-GAP-01297-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01297", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01298", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01298-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01298.py -- tests/files/web/generated/M21-GAP-01298-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01298", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01299", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01299-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01299.py -- tests/files/web/generated/M21-GAP-01299-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01299", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01300", + "gapId": "keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01300-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01300.py -- tests/files/web/generated/M21-GAP-01300-keymap-item-Grease-Pencil-Weight-Paint-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01300", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01301", + "gapId": "keymap-item:Grease Pencil:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01301-keymap-item-Grease-Pencil-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01301.py -- tests/files/web/generated/M21-GAP-01301-keymap-item-Grease-Pencil-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01301", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01302", + "gapId": "keymap-item:Grease Pencil:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01302-keymap-item-Grease-Pencil-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01302.py -- tests/files/web/generated/M21-GAP-01302-keymap-item-Grease-Pencil-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01302", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01303", + "gapId": "keymap-item:Grease Pencil:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01303-keymap-item-Grease-Pencil-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01303.py -- tests/files/web/generated/M21-GAP-01303-keymap-item-Grease-Pencil-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01303", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01304", + "gapId": "keymap-item:Grease Pencil:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01304-keymap-item-Grease-Pencil-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01304.py -- tests/files/web/generated/M21-GAP-01304-keymap-item-Grease-Pencil-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01304", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01305", + "gapId": "keymap-item:Grease Pencil:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01305-keymap-item-Grease-Pencil-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01305.py -- tests/files/web/generated/M21-GAP-01305-keymap-item-Grease-Pencil-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01305", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01306", + "gapId": "keymap-item:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01306-keymap-item-Image-Editor-Tool-Mask-Box-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01306.py -- tests/files/web/generated/M21-GAP-01306-keymap-item-Image-Editor-Tool-Mask-Box-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01306", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01307", + "gapId": "keymap-item:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01307-keymap-item-Image-Editor-Tool-Mask-Circle-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01307.py -- tests/files/web/generated/M21-GAP-01307-keymap-item-Image-Editor-Tool-Mask-Circle-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01307", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01308", + "gapId": "keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01308-keymap-item-Image-Editor-Tool-Mask-Cursor-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01308.py -- tests/files/web/generated/M21-GAP-01308-keymap-item-Image-Editor-Tool-Mask-Cursor-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01308", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01309", + "gapId": "keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01309-keymap-item-Image-Editor-Tool-Mask-Cursor-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01309.py -- tests/files/web/generated/M21-GAP-01309-keymap-item-Image-Editor-Tool-Mask-Cursor-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01309", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01310", + "gapId": "keymap-item:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01310-keymap-item-Image-Editor-Tool-Mask-Move-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01310.py -- tests/files/web/generated/M21-GAP-01310-keymap-item-Image-Editor-Tool-Mask-Move-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01310", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01311", + "gapId": "keymap-item:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01311-keymap-item-Image-Editor-Tool-Mask-Rotate-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01311.py -- tests/files/web/generated/M21-GAP-01311-keymap-item-Image-Editor-Tool-Mask-Rotate-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01311", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01312", + "gapId": "keymap-item:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01312-keymap-item-Image-Editor-Tool-Mask-Scale-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01312.py -- tests/files/web/generated/M21-GAP-01312-keymap-item-Image-Editor-Tool-Mask-Scale-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01312", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01313", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01313-keymap-item-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01313.py -- tests/files/web/generated/M21-GAP-01313-keymap-item-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01313", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01314", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01314-keymap-item-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01314.py -- tests/files/web/generated/M21-GAP-01314-keymap-item-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01314", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01315", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01315-keymap-item-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01315.py -- tests/files/web/generated/M21-GAP-01315-keymap-item-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01315", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01316", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01316-keymap-item-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01316.py -- tests/files/web/generated/M21-GAP-01316-keymap-item-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01316", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01317", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01317-keymap-item-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01317.py -- tests/files/web/generated/M21-GAP-01317-keymap-item-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01317", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01318", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01318-keymap-item-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01318.py -- tests/files/web/generated/M21-GAP-01318-keymap-item-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01318", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01319", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01319-keymap-item-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01319.py -- tests/files/web/generated/M21-GAP-01319-keymap-item-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01319", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01320", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01320-keymap-item-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01320.py -- tests/files/web/generated/M21-GAP-01320-keymap-item-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01320", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01321", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01321-keymap-item-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01321.py -- tests/files/web/generated/M21-GAP-01321-keymap-item-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01321", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01322", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01322-keymap-item-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01322.py -- tests/files/web/generated/M21-GAP-01322-keymap-item-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01322", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01323", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01323-keymap-item-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01323.py -- tests/files/web/generated/M21-GAP-01323-keymap-item-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01323", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01324", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01324-keymap-item-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01324.py -- tests/files/web/generated/M21-GAP-01324-keymap-item-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01324", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01325", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01325-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01325.py -- tests/files/web/generated/M21-GAP-01325-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01325", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01326", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01326-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01326.py -- tests/files/web/generated/M21-GAP-01326-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01326", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01327", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01327-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01327.py -- tests/files/web/generated/M21-GAP-01327-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01327", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01328", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01328-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01328.py -- tests/files/web/generated/M21-GAP-01328-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01328", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01329", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01329-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01329.py -- tests/files/web/generated/M21-GAP-01329-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01329", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01330", + "gapId": "keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01330-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01330.py -- tests/files/web/generated/M21-GAP-01330-keymap-item-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01330", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01331", + "gapId": "keymap-item:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01331-keymap-item-Image-Editor-Tool-Mask-Transform-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01331.py -- tests/files/web/generated/M21-GAP-01331-keymap-item-Image-Editor-Tool-Mask-Transform-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01331", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01332", + "gapId": "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01332-keymap-item-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01332.py -- tests/files/web/generated/M21-GAP-01332-keymap-item-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01332", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01333", + "gapId": "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01333-keymap-item-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01333.py -- tests/files/web/generated/M21-GAP-01333-keymap-item-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01333", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01334", + "gapId": "keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01334-keymap-item-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01334.py -- tests/files/web/generated/M21-GAP-01334-keymap-item-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01334", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01335", + "gapId": "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01335-keymap-item-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01335.py -- tests/files/web/generated/M21-GAP-01335-keymap-item-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01335", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01336", + "gapId": "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01336-keymap-item-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01336.py -- tests/files/web/generated/M21-GAP-01336-keymap-item-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01336", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01337", + "gapId": "keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01337-keymap-item-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01337.py -- tests/files/web/generated/M21-GAP-01337-keymap-item-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01337", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01338", + "gapId": "keymap-item:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01338-keymap-item-Image-Editor-Tool-Sample-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01338.py -- tests/files/web/generated/M21-GAP-01338-keymap-item-Image-Editor-Tool-Sample-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01338", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01339", + "gapId": "keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01339-keymap-item-Image-Editor-Tool-Uv-Cursor-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01339.py -- tests/files/web/generated/M21-GAP-01339-keymap-item-Image-Editor-Tool-Uv-Cursor-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01339", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01340", + "gapId": "keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01340-keymap-item-Image-Editor-Tool-Uv-Cursor-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01340.py -- tests/files/web/generated/M21-GAP-01340-keymap-item-Image-Editor-Tool-Uv-Cursor-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01340", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01341", + "gapId": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01341-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01341.py -- tests/files/web/generated/M21-GAP-01341-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01341", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01342", + "gapId": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01342-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01342.py -- tests/files/web/generated/M21-GAP-01342-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01342", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01343", + "gapId": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01343-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01343.py -- tests/files/web/generated/M21-GAP-01343-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01343", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01344", + "gapId": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01344-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01344.py -- tests/files/web/generated/M21-GAP-01344-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01344", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01345", + "gapId": "keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01345-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01345.py -- tests/files/web/generated/M21-GAP-01345-keymap-item-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01345", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01346", + "gapId": "keymap-item:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01346-keymap-item-Image-Editor-Tool-Uv-Move-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01346.py -- tests/files/web/generated/M21-GAP-01346-keymap-item-Image-Editor-Tool-Uv-Move-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01346", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01347", + "gapId": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01347-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01347.py -- tests/files/web/generated/M21-GAP-01347-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01347", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01348", + "gapId": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01348-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01348.py -- tests/files/web/generated/M21-GAP-01348-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01348", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01349", + "gapId": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01349-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01349.py -- tests/files/web/generated/M21-GAP-01349-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01349", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01350", + "gapId": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01350-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01350.py -- tests/files/web/generated/M21-GAP-01350-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01350", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01351", + "gapId": "keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01351-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01351.py -- tests/files/web/generated/M21-GAP-01351-keymap-item-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01351", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01352", + "gapId": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01352-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01352.py -- tests/files/web/generated/M21-GAP-01352-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01352", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01353", + "gapId": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01353-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01353.py -- tests/files/web/generated/M21-GAP-01353-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01353", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01354", + "gapId": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01354-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01354.py -- tests/files/web/generated/M21-GAP-01354-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01354", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01355", + "gapId": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01355-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01355.py -- tests/files/web/generated/M21-GAP-01355-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01355", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01356", + "gapId": "keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01356-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01356.py -- tests/files/web/generated/M21-GAP-01356-keymap-item-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01356", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01357", + "gapId": "keymap-item:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01357-keymap-item-Image-Editor-Tool-Uv-Rip-Region-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01357.py -- tests/files/web/generated/M21-GAP-01357-keymap-item-Image-Editor-Tool-Uv-Rip-Region-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01357", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01358", + "gapId": "keymap-item:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01358-keymap-item-Image-Editor-Tool-Uv-Rotate-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01358.py -- tests/files/web/generated/M21-GAP-01358-keymap-item-Image-Editor-Tool-Uv-Rotate-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01358", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01359", + "gapId": "keymap-item:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01359-keymap-item-Image-Editor-Tool-Uv-Scale-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01359.py -- tests/files/web/generated/M21-GAP-01359-keymap-item-Image-Editor-Tool-Uv-Scale-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01359", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01360", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01360-keymap-item-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01360.py -- tests/files/web/generated/M21-GAP-01360-keymap-item-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01360", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01361", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01361-keymap-item-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01361.py -- tests/files/web/generated/M21-GAP-01361-keymap-item-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01361", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01362", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01362-keymap-item-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01362.py -- tests/files/web/generated/M21-GAP-01362-keymap-item-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01362", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01363", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01363-keymap-item-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01363.py -- tests/files/web/generated/M21-GAP-01363-keymap-item-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01363", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01364", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01364-keymap-item-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01364.py -- tests/files/web/generated/M21-GAP-01364-keymap-item-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01364", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01365", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01365-keymap-item-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01365.py -- tests/files/web/generated/M21-GAP-01365-keymap-item-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01365", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01366", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01366-keymap-item-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01366.py -- tests/files/web/generated/M21-GAP-01366-keymap-item-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01366", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01367", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01367-keymap-item-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01367.py -- tests/files/web/generated/M21-GAP-01367-keymap-item-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01367", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01368", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01368-keymap-item-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01368.py -- tests/files/web/generated/M21-GAP-01368-keymap-item-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01368", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01369", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01369-keymap-item-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01369.py -- tests/files/web/generated/M21-GAP-01369-keymap-item-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01369", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01370", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01370-keymap-item-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01370.py -- tests/files/web/generated/M21-GAP-01370-keymap-item-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01370", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01371", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01371-keymap-item-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01371.py -- tests/files/web/generated/M21-GAP-01371-keymap-item-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01371", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01372", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01372-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01372.py -- tests/files/web/generated/M21-GAP-01372-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01372", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01373", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01373-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01373.py -- tests/files/web/generated/M21-GAP-01373-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01373", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01374", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01374-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01374.py -- tests/files/web/generated/M21-GAP-01374-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01374", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01375", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01375-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01375.py -- tests/files/web/generated/M21-GAP-01375-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01375", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01376", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01376-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01376.py -- tests/files/web/generated/M21-GAP-01376-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01376", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01377", + "gapId": "keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01377-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01377.py -- tests/files/web/generated/M21-GAP-01377-keymap-item-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01377", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01378", + "gapId": "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01378-keymap-item-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01378.py -- tests/files/web/generated/M21-GAP-01378-keymap-item-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01378", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01379", + "gapId": "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01379-keymap-item-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01379.py -- tests/files/web/generated/M21-GAP-01379-keymap-item-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01379", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01380", + "gapId": "keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01380-keymap-item-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01380.py -- tests/files/web/generated/M21-GAP-01380-keymap-item-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01380", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01381", + "gapId": "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01381-keymap-item-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01381.py -- tests/files/web/generated/M21-GAP-01381-keymap-item-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01381", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01382", + "gapId": "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01382-keymap-item-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01382.py -- tests/files/web/generated/M21-GAP-01382-keymap-item-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01382", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01383", + "gapId": "keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01383-keymap-item-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01383.py -- tests/files/web/generated/M21-GAP-01383-keymap-item-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01383", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01384", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01384-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01384.py -- tests/files/web/generated/M21-GAP-01384-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01384", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01385", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01385-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01385.py -- tests/files/web/generated/M21-GAP-01385-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01385", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01386", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01386-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01386.py -- tests/files/web/generated/M21-GAP-01386-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01386", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01387", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01387-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01387.py -- tests/files/web/generated/M21-GAP-01387-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01387", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01388", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01388-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01388.py -- tests/files/web/generated/M21-GAP-01388-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01388", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01389", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01389-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01389.py -- tests/files/web/generated/M21-GAP-01389-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01389", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01390", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01390-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01390.py -- tests/files/web/generated/M21-GAP-01390-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01390", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01391", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01391-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01391.py -- tests/files/web/generated/M21-GAP-01391-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01391", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01392", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01392-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01392.py -- tests/files/web/generated/M21-GAP-01392-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01392", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01393", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01393-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01393.py -- tests/files/web/generated/M21-GAP-01393-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01393", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01394", + "gapId": "keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01394-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01394.py -- tests/files/web/generated/M21-GAP-01394-keymap-item-Image-Generic-IMAGE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01394", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01395", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01395-keymap-item-Image-Paint-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01395.py -- tests/files/web/generated/M21-GAP-01395-keymap-item-Image-Paint-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01395", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01396", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01396-keymap-item-Image-Paint-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01396.py -- tests/files/web/generated/M21-GAP-01396-keymap-item-Image-Paint-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01396", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01397", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01397-keymap-item-Image-Paint-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01397.py -- tests/files/web/generated/M21-GAP-01397-keymap-item-Image-Paint-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01397", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01398", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01398-keymap-item-Image-Paint-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01398.py -- tests/files/web/generated/M21-GAP-01398-keymap-item-Image-Paint-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01398", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01399", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01399-keymap-item-Image-Paint-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01399.py -- tests/files/web/generated/M21-GAP-01399-keymap-item-Image-Paint-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01399", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01400", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01400-keymap-item-Image-Paint-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01400.py -- tests/files/web/generated/M21-GAP-01400-keymap-item-Image-Paint-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01400", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01401", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01401-keymap-item-Image-Paint-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01401.py -- tests/files/web/generated/M21-GAP-01401-keymap-item-Image-Paint-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01401", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01402", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01402-keymap-item-Image-Paint-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01402.py -- tests/files/web/generated/M21-GAP-01402-keymap-item-Image-Paint-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01402", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01403", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01403-keymap-item-Image-Paint-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01403.py -- tests/files/web/generated/M21-GAP-01403-keymap-item-Image-Paint-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01403", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01404", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01404-keymap-item-Image-Paint-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01404.py -- tests/files/web/generated/M21-GAP-01404-keymap-item-Image-Paint-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01404", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01405", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01405-keymap-item-Image-Paint-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01405.py -- tests/files/web/generated/M21-GAP-01405-keymap-item-Image-Paint-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01405", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01406", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01406-keymap-item-Image-Paint-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01406.py -- tests/files/web/generated/M21-GAP-01406-keymap-item-Image-Paint-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01406", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01407", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01407-keymap-item-Image-Paint-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01407.py -- tests/files/web/generated/M21-GAP-01407-keymap-item-Image-Paint-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01407", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01408", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01408-keymap-item-Image-Paint-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01408.py -- tests/files/web/generated/M21-GAP-01408-keymap-item-Image-Paint-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01408", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01409", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01409-keymap-item-Image-Paint-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01409.py -- tests/files/web/generated/M21-GAP-01409-keymap-item-Image-Paint-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01409", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01410", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01410-keymap-item-Image-Paint-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01410.py -- tests/files/web/generated/M21-GAP-01410-keymap-item-Image-Paint-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01410", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01411", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01411-keymap-item-Image-Paint-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01411.py -- tests/files/web/generated/M21-GAP-01411-keymap-item-Image-Paint-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01411", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01412", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01412-keymap-item-Image-Paint-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01412.py -- tests/files/web/generated/M21-GAP-01412-keymap-item-Image-Paint-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01412", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01413", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01413-keymap-item-Image-Paint-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01413.py -- tests/files/web/generated/M21-GAP-01413-keymap-item-Image-Paint-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01413", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01414", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01414-keymap-item-Image-Paint-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01414.py -- tests/files/web/generated/M21-GAP-01414-keymap-item-Image-Paint-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01414", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01415", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01415-keymap-item-Image-Paint-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01415.py -- tests/files/web/generated/M21-GAP-01415-keymap-item-Image-Paint-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01415", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01416", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01416-keymap-item-Image-Paint-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01416.py -- tests/files/web/generated/M21-GAP-01416-keymap-item-Image-Paint-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01416", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01417", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01417-keymap-item-Image-Paint-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01417.py -- tests/files/web/generated/M21-GAP-01417-keymap-item-Image-Paint-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01417", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01418", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01418-keymap-item-Image-Paint-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01418.py -- tests/files/web/generated/M21-GAP-01418-keymap-item-Image-Paint-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01418", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01419", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01419-keymap-item-Image-Paint-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01419.py -- tests/files/web/generated/M21-GAP-01419-keymap-item-Image-Paint-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01419", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01420", + "gapId": "keymap-item:Image Paint:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01420-keymap-item-Image-Paint-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01420.py -- tests/files/web/generated/M21-GAP-01420-keymap-item-Image-Paint-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01420", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01421", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01421-keymap-item-Image-IMAGE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01421.py -- tests/files/web/generated/M21-GAP-01421-keymap-item-Image-IMAGE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01421", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01422", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01422-keymap-item-Image-IMAGE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01422.py -- tests/files/web/generated/M21-GAP-01422-keymap-item-Image-IMAGE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01422", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01423", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01423-keymap-item-Image-IMAGE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01423.py -- tests/files/web/generated/M21-GAP-01423-keymap-item-Image-IMAGE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01423", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01424", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01424-keymap-item-Image-IMAGE_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01424.py -- tests/files/web/generated/M21-GAP-01424-keymap-item-Image-IMAGE_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01424", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01425", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01425-keymap-item-Image-IMAGE_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01425.py -- tests/files/web/generated/M21-GAP-01425-keymap-item-Image-IMAGE_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01425", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01426", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01426-keymap-item-Image-IMAGE_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01426.py -- tests/files/web/generated/M21-GAP-01426-keymap-item-Image-IMAGE_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01426", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01427", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01427-keymap-item-Image-IMAGE_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01427.py -- tests/files/web/generated/M21-GAP-01427-keymap-item-Image-IMAGE_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01427", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01428", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01428-keymap-item-Image-IMAGE_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01428.py -- tests/files/web/generated/M21-GAP-01428-keymap-item-Image-IMAGE_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01428", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01429", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01429-keymap-item-Image-IMAGE_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01429.py -- tests/files/web/generated/M21-GAP-01429-keymap-item-Image-IMAGE_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01429", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01430", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01430-keymap-item-Image-IMAGE_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01430.py -- tests/files/web/generated/M21-GAP-01430-keymap-item-Image-IMAGE_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01430", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01431", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01431-keymap-item-Image-IMAGE_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01431.py -- tests/files/web/generated/M21-GAP-01431-keymap-item-Image-IMAGE_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01431", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01432", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01432-keymap-item-Image-IMAGE_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01432.py -- tests/files/web/generated/M21-GAP-01432-keymap-item-Image-IMAGE_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01432", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01433", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01433-keymap-item-Image-IMAGE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01433.py -- tests/files/web/generated/M21-GAP-01433-keymap-item-Image-IMAGE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01433", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01434", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01434-keymap-item-Image-IMAGE_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01434.py -- tests/files/web/generated/M21-GAP-01434-keymap-item-Image-IMAGE_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01434", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01435", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01435-keymap-item-Image-IMAGE_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01435.py -- tests/files/web/generated/M21-GAP-01435-keymap-item-Image-IMAGE_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01435", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01436", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01436-keymap-item-Image-IMAGE_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01436.py -- tests/files/web/generated/M21-GAP-01436-keymap-item-Image-IMAGE_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01436", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01437", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01437-keymap-item-Image-IMAGE_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01437.py -- tests/files/web/generated/M21-GAP-01437-keymap-item-Image-IMAGE_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01437", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01438", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01438-keymap-item-Image-IMAGE_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01438.py -- tests/files/web/generated/M21-GAP-01438-keymap-item-Image-IMAGE_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01438", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01439", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01439-keymap-item-Image-IMAGE_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01439.py -- tests/files/web/generated/M21-GAP-01439-keymap-item-Image-IMAGE_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01439", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01440", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01440-keymap-item-Image-IMAGE_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01440.py -- tests/files/web/generated/M21-GAP-01440-keymap-item-Image-IMAGE_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01440", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01441", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01441-keymap-item-Image-IMAGE_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01441.py -- tests/files/web/generated/M21-GAP-01441-keymap-item-Image-IMAGE_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01441", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01442", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01442-keymap-item-Image-IMAGE_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01442.py -- tests/files/web/generated/M21-GAP-01442-keymap-item-Image-IMAGE_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01442", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01443", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01443-keymap-item-Image-IMAGE_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01443.py -- tests/files/web/generated/M21-GAP-01443-keymap-item-Image-IMAGE_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01443", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01444", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01444-keymap-item-Image-IMAGE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01444.py -- tests/files/web/generated/M21-GAP-01444-keymap-item-Image-IMAGE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01444", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01445", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01445-keymap-item-Image-IMAGE_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01445.py -- tests/files/web/generated/M21-GAP-01445-keymap-item-Image-IMAGE_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01445", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01446", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01446-keymap-item-Image-IMAGE_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01446.py -- tests/files/web/generated/M21-GAP-01446-keymap-item-Image-IMAGE_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01446", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01447", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01447-keymap-item-Image-IMAGE_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01447.py -- tests/files/web/generated/M21-GAP-01447-keymap-item-Image-IMAGE_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01447", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01448", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01448-keymap-item-Image-IMAGE_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01448.py -- tests/files/web/generated/M21-GAP-01448-keymap-item-Image-IMAGE_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01448", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01449", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01449-keymap-item-Image-IMAGE_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01449.py -- tests/files/web/generated/M21-GAP-01449-keymap-item-Image-IMAGE_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01449", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01450", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01450-keymap-item-Image-IMAGE_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01450.py -- tests/files/web/generated/M21-GAP-01450-keymap-item-Image-IMAGE_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01450", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01451", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01451-keymap-item-Image-IMAGE_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01451.py -- tests/files/web/generated/M21-GAP-01451-keymap-item-Image-IMAGE_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01451", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01452", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01452-keymap-item-Image-IMAGE_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01452.py -- tests/files/web/generated/M21-GAP-01452-keymap-item-Image-IMAGE_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01452", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01453", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01453-keymap-item-Image-IMAGE_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01453.py -- tests/files/web/generated/M21-GAP-01453-keymap-item-Image-IMAGE_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01453", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01454", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01454-keymap-item-Image-IMAGE_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01454.py -- tests/files/web/generated/M21-GAP-01454-keymap-item-Image-IMAGE_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01454", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01455", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01455-keymap-item-Image-IMAGE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01455.py -- tests/files/web/generated/M21-GAP-01455-keymap-item-Image-IMAGE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01455", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01456", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01456-keymap-item-Image-IMAGE_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01456.py -- tests/files/web/generated/M21-GAP-01456-keymap-item-Image-IMAGE_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01456", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01457", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01457-keymap-item-Image-IMAGE_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01457.py -- tests/files/web/generated/M21-GAP-01457-keymap-item-Image-IMAGE_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01457", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01458", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01458-keymap-item-Image-IMAGE_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01458.py -- tests/files/web/generated/M21-GAP-01458-keymap-item-Image-IMAGE_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01458", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01459", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01459-keymap-item-Image-IMAGE_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01459.py -- tests/files/web/generated/M21-GAP-01459-keymap-item-Image-IMAGE_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01459", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01460", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01460-keymap-item-Image-IMAGE_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01460.py -- tests/files/web/generated/M21-GAP-01460-keymap-item-Image-IMAGE_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01460", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01461", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01461-keymap-item-Image-IMAGE_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01461.py -- tests/files/web/generated/M21-GAP-01461-keymap-item-Image-IMAGE_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01461", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01462", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01462-keymap-item-Image-IMAGE_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01462.py -- tests/files/web/generated/M21-GAP-01462-keymap-item-Image-IMAGE_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01462", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01463", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01463-keymap-item-Image-IMAGE_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01463.py -- tests/files/web/generated/M21-GAP-01463-keymap-item-Image-IMAGE_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01463", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01464", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01464-keymap-item-Image-IMAGE_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01464.py -- tests/files/web/generated/M21-GAP-01464-keymap-item-Image-IMAGE_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01464", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01465", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01465-keymap-item-Image-IMAGE_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01465.py -- tests/files/web/generated/M21-GAP-01465-keymap-item-Image-IMAGE_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01465", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01466", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01466-keymap-item-Image-IMAGE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01466.py -- tests/files/web/generated/M21-GAP-01466-keymap-item-Image-IMAGE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01466", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01467", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01467-keymap-item-Image-IMAGE_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01467.py -- tests/files/web/generated/M21-GAP-01467-keymap-item-Image-IMAGE_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01467", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01468", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01468-keymap-item-Image-IMAGE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01468.py -- tests/files/web/generated/M21-GAP-01468-keymap-item-Image-IMAGE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01468", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01469", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01469-keymap-item-Image-IMAGE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01469.py -- tests/files/web/generated/M21-GAP-01469-keymap-item-Image-IMAGE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01469", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01470", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01470-keymap-item-Image-IMAGE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01470.py -- tests/files/web/generated/M21-GAP-01470-keymap-item-Image-IMAGE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01470", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01471", + "gapId": "keymap-item:Image:IMAGE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01471-keymap-item-Image-IMAGE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01471.py -- tests/files/web/generated/M21-GAP-01471-keymap-item-Image-IMAGE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01471", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01472", + "gapId": "keymap-item:Info:INFO:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01472-keymap-item-Info-INFO-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01472.py -- tests/files/web/generated/M21-GAP-01472-keymap-item-Info-INFO-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01472", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01473", + "gapId": "keymap-item:Info:INFO:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01473-keymap-item-Info-INFO-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01473.py -- tests/files/web/generated/M21-GAP-01473-keymap-item-Info-INFO-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01473", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01474", + "gapId": "keymap-item:Info:INFO:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01474-keymap-item-Info-INFO-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01474.py -- tests/files/web/generated/M21-GAP-01474-keymap-item-Info-INFO-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01474", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01475", + "gapId": "keymap-item:Info:INFO:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01475-keymap-item-Info-INFO-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01475.py -- tests/files/web/generated/M21-GAP-01475-keymap-item-Info-INFO-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01475", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01476", + "gapId": "keymap-item:Info:INFO:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01476-keymap-item-Info-INFO-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01476.py -- tests/files/web/generated/M21-GAP-01476-keymap-item-Info-INFO-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01476", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01477", + "gapId": "keymap-item:Info:INFO:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01477-keymap-item-Info-INFO-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01477.py -- tests/files/web/generated/M21-GAP-01477-keymap-item-Info-INFO-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01477", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01478", + "gapId": "keymap-item:Info:INFO:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01478-keymap-item-Info-INFO-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01478.py -- tests/files/web/generated/M21-GAP-01478-keymap-item-Info-INFO-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01478", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01479", + "gapId": "keymap-item:Info:INFO:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01479-keymap-item-Info-INFO-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01479.py -- tests/files/web/generated/M21-GAP-01479-keymap-item-Info-INFO-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01479", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01480", + "gapId": "keymap-item:Info:INFO:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01480-keymap-item-Info-INFO-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01480.py -- tests/files/web/generated/M21-GAP-01480-keymap-item-Info-INFO-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01480", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01481", + "gapId": "keymap-item:Info:INFO:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01481-keymap-item-Info-INFO-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01481.py -- tests/files/web/generated/M21-GAP-01481-keymap-item-Info-INFO-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01481", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01482", + "gapId": "keymap-item:Info:INFO:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01482-keymap-item-Info-INFO-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01482.py -- tests/files/web/generated/M21-GAP-01482-keymap-item-Info-INFO-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01482", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01483", + "gapId": "keymap-item:Info:INFO:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01483-keymap-item-Info-INFO-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01483.py -- tests/files/web/generated/M21-GAP-01483-keymap-item-Info-INFO-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01483", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01484", + "gapId": "keymap-item:Info:INFO:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01484-keymap-item-Info-INFO-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01484.py -- tests/files/web/generated/M21-GAP-01484-keymap-item-Info-INFO-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01484", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01485", + "gapId": "keymap-item:Info:INFO:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01485-keymap-item-Info-INFO-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01485.py -- tests/files/web/generated/M21-GAP-01485-keymap-item-Info-INFO-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01485", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01486", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01486-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01486.py -- tests/files/web/generated/M21-GAP-01486-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01486", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01487", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01487-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01487.py -- tests/files/web/generated/M21-GAP-01487-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01487", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01488", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01488-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01488.py -- tests/files/web/generated/M21-GAP-01488-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01488", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01489", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01489-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01489.py -- tests/files/web/generated/M21-GAP-01489-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01489", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01490", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01490-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01490.py -- tests/files/web/generated/M21-GAP-01490-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01490", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01491", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01491-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01491.py -- tests/files/web/generated/M21-GAP-01491-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01491", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01492", + "gapId": "keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01492-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01492.py -- tests/files/web/generated/M21-GAP-01492-keymap-item-Interpolate-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01492", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01493", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01493-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01493.py -- tests/files/web/generated/M21-GAP-01493-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01493", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01494", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01494-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01494.py -- tests/files/web/generated/M21-GAP-01494-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01494", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01495", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01495-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01495.py -- tests/files/web/generated/M21-GAP-01495-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01495", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01496", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01496-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01496.py -- tests/files/web/generated/M21-GAP-01496-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01496", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01497", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01497-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01497.py -- tests/files/web/generated/M21-GAP-01497-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01497", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01498", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01498-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01498.py -- tests/files/web/generated/M21-GAP-01498-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01498", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01499", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01499-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01499.py -- tests/files/web/generated/M21-GAP-01499-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01499", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01500", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01500-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01500.py -- tests/files/web/generated/M21-GAP-01500-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01500", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01501", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01501-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01501.py -- tests/files/web/generated/M21-GAP-01501-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01501", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01502", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01502-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01502.py -- tests/files/web/generated/M21-GAP-01502-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01502", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01503", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01503-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01503.py -- tests/files/web/generated/M21-GAP-01503-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01503", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01504", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01504-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01504.py -- tests/files/web/generated/M21-GAP-01504-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01504", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01505", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01505-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01505.py -- tests/files/web/generated/M21-GAP-01505-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01505", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01506", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01506-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01506.py -- tests/files/web/generated/M21-GAP-01506-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01506", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01507", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01507-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01507.py -- tests/files/web/generated/M21-GAP-01507-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01507", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01508", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01508-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01508.py -- tests/files/web/generated/M21-GAP-01508-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01508", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01509", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01509-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01509.py -- tests/files/web/generated/M21-GAP-01509-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01509", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01510", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01510-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01510.py -- tests/files/web/generated/M21-GAP-01510-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01510", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01511", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01511-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01511.py -- tests/files/web/generated/M21-GAP-01511-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01511", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01512", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01512-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01512.py -- tests/files/web/generated/M21-GAP-01512-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01512", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01513", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01513-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01513.py -- tests/files/web/generated/M21-GAP-01513-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01513", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01514", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01514-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01514.py -- tests/files/web/generated/M21-GAP-01514-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01514", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01515", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01515-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01515.py -- tests/files/web/generated/M21-GAP-01515-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01515", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01516", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01516-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01516.py -- tests/files/web/generated/M21-GAP-01516-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01516", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01517", + "gapId": "keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01517-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01517.py -- tests/files/web/generated/M21-GAP-01517-keymap-item-Knife-Tool-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01517", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01518", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01518-keymap-item-Lattice-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01518.py -- tests/files/web/generated/M21-GAP-01518-keymap-item-Lattice-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01518", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01519", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01519-keymap-item-Lattice-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01519.py -- tests/files/web/generated/M21-GAP-01519-keymap-item-Lattice-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01519", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01520", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01520-keymap-item-Lattice-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01520.py -- tests/files/web/generated/M21-GAP-01520-keymap-item-Lattice-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01520", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01521", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01521-keymap-item-Lattice-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01521.py -- tests/files/web/generated/M21-GAP-01521-keymap-item-Lattice-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01521", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01522", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01522-keymap-item-Lattice-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01522.py -- tests/files/web/generated/M21-GAP-01522-keymap-item-Lattice-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01522", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01523", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01523-keymap-item-Lattice-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01523.py -- tests/files/web/generated/M21-GAP-01523-keymap-item-Lattice-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01523", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01524", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01524-keymap-item-Lattice-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01524.py -- tests/files/web/generated/M21-GAP-01524-keymap-item-Lattice-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01524", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01525", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01525-keymap-item-Lattice-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01525.py -- tests/files/web/generated/M21-GAP-01525-keymap-item-Lattice-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01525", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01526", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01526-keymap-item-Lattice-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01526.py -- tests/files/web/generated/M21-GAP-01526-keymap-item-Lattice-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01526", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01527", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01527-keymap-item-Lattice-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01527.py -- tests/files/web/generated/M21-GAP-01527-keymap-item-Lattice-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01527", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01528", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01528-keymap-item-Lattice-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01528.py -- tests/files/web/generated/M21-GAP-01528-keymap-item-Lattice-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01528", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01529", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01529-keymap-item-Lattice-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01529.py -- tests/files/web/generated/M21-GAP-01529-keymap-item-Lattice-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01529", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01530", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01530-keymap-item-Lattice-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01530.py -- tests/files/web/generated/M21-GAP-01530-keymap-item-Lattice-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01530", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01531", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01531-keymap-item-Lattice-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01531.py -- tests/files/web/generated/M21-GAP-01531-keymap-item-Lattice-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01531", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01532", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01532-keymap-item-Lattice-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01532.py -- tests/files/web/generated/M21-GAP-01532-keymap-item-Lattice-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01532", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01533", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01533-keymap-item-Lattice-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01533.py -- tests/files/web/generated/M21-GAP-01533-keymap-item-Lattice-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01533", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01534", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01534-keymap-item-Lattice-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01534.py -- tests/files/web/generated/M21-GAP-01534-keymap-item-Lattice-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01534", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01535", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01535-keymap-item-Lattice-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01535.py -- tests/files/web/generated/M21-GAP-01535-keymap-item-Lattice-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01535", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01536", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01536-keymap-item-Lattice-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01536.py -- tests/files/web/generated/M21-GAP-01536-keymap-item-Lattice-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01536", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01537", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01537-keymap-item-Lattice-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01537.py -- tests/files/web/generated/M21-GAP-01537-keymap-item-Lattice-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01537", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01538", + "gapId": "keymap-item:Lattice:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01538-keymap-item-Lattice-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01538.py -- tests/files/web/generated/M21-GAP-01538-keymap-item-Lattice-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01538", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01539", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01539-keymap-item-Markers-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01539.py -- tests/files/web/generated/M21-GAP-01539-keymap-item-Markers-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01539", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01540", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01540-keymap-item-Markers-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01540.py -- tests/files/web/generated/M21-GAP-01540-keymap-item-Markers-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01540", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01541", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01541-keymap-item-Markers-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01541.py -- tests/files/web/generated/M21-GAP-01541-keymap-item-Markers-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01541", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01542", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01542-keymap-item-Markers-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01542.py -- tests/files/web/generated/M21-GAP-01542-keymap-item-Markers-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01542", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01543", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01543-keymap-item-Markers-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01543.py -- tests/files/web/generated/M21-GAP-01543-keymap-item-Markers-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01543", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01544", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01544-keymap-item-Markers-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01544.py -- tests/files/web/generated/M21-GAP-01544-keymap-item-Markers-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01544", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01545", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01545-keymap-item-Markers-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01545.py -- tests/files/web/generated/M21-GAP-01545-keymap-item-Markers-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01545", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01546", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01546-keymap-item-Markers-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01546.py -- tests/files/web/generated/M21-GAP-01546-keymap-item-Markers-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01546", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01547", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01547-keymap-item-Markers-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01547.py -- tests/files/web/generated/M21-GAP-01547-keymap-item-Markers-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01547", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01548", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01548-keymap-item-Markers-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01548.py -- tests/files/web/generated/M21-GAP-01548-keymap-item-Markers-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01548", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01549", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01549-keymap-item-Markers-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01549.py -- tests/files/web/generated/M21-GAP-01549-keymap-item-Markers-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01549", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01550", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01550-keymap-item-Markers-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01550.py -- tests/files/web/generated/M21-GAP-01550-keymap-item-Markers-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01550", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01551", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01551-keymap-item-Markers-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01551.py -- tests/files/web/generated/M21-GAP-01551-keymap-item-Markers-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01551", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01552", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01552-keymap-item-Markers-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01552.py -- tests/files/web/generated/M21-GAP-01552-keymap-item-Markers-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01552", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01553", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01553-keymap-item-Markers-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01553.py -- tests/files/web/generated/M21-GAP-01553-keymap-item-Markers-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01553", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01554", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01554-keymap-item-Markers-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01554.py -- tests/files/web/generated/M21-GAP-01554-keymap-item-Markers-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01554", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01555", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01555-keymap-item-Markers-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01555.py -- tests/files/web/generated/M21-GAP-01555-keymap-item-Markers-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01555", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01556", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01556-keymap-item-Markers-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01556.py -- tests/files/web/generated/M21-GAP-01556-keymap-item-Markers-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01556", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01557", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01557-keymap-item-Markers-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01557.py -- tests/files/web/generated/M21-GAP-01557-keymap-item-Markers-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01557", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01558", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01558-keymap-item-Markers-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01558.py -- tests/files/web/generated/M21-GAP-01558-keymap-item-Markers-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01558", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01559", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01559-keymap-item-Markers-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01559.py -- tests/files/web/generated/M21-GAP-01559-keymap-item-Markers-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01559", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01560", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01560-keymap-item-Markers-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01560.py -- tests/files/web/generated/M21-GAP-01560-keymap-item-Markers-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01560", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01561", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01561-keymap-item-Markers-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01561.py -- tests/files/web/generated/M21-GAP-01561-keymap-item-Markers-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01561", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01562", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01562-keymap-item-Markers-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01562.py -- tests/files/web/generated/M21-GAP-01562-keymap-item-Markers-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01562", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01563", + "gapId": "keymap-item:Markers:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01563-keymap-item-Markers-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01563.py -- tests/files/web/generated/M21-GAP-01563-keymap-item-Markers-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01563", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01564", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01564-keymap-item-Mask-Editing-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01564.py -- tests/files/web/generated/M21-GAP-01564-keymap-item-Mask-Editing-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01564", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01565", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01565-keymap-item-Mask-Editing-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01565.py -- tests/files/web/generated/M21-GAP-01565-keymap-item-Mask-Editing-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01565", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01566", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01566-keymap-item-Mask-Editing-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01566.py -- tests/files/web/generated/M21-GAP-01566-keymap-item-Mask-Editing-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01566", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01567", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01567-keymap-item-Mask-Editing-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01567.py -- tests/files/web/generated/M21-GAP-01567-keymap-item-Mask-Editing-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01567", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01568", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01568-keymap-item-Mask-Editing-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01568.py -- tests/files/web/generated/M21-GAP-01568-keymap-item-Mask-Editing-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01568", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01569", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01569-keymap-item-Mask-Editing-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01569.py -- tests/files/web/generated/M21-GAP-01569-keymap-item-Mask-Editing-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01569", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01570", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01570-keymap-item-Mask-Editing-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01570.py -- tests/files/web/generated/M21-GAP-01570-keymap-item-Mask-Editing-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01570", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01571", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01571-keymap-item-Mask-Editing-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01571.py -- tests/files/web/generated/M21-GAP-01571-keymap-item-Mask-Editing-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01571", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01572", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01572-keymap-item-Mask-Editing-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01572.py -- tests/files/web/generated/M21-GAP-01572-keymap-item-Mask-Editing-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01572", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01573", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01573-keymap-item-Mask-Editing-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01573.py -- tests/files/web/generated/M21-GAP-01573-keymap-item-Mask-Editing-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01573", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01574", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01574-keymap-item-Mask-Editing-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01574.py -- tests/files/web/generated/M21-GAP-01574-keymap-item-Mask-Editing-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01574", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01575", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01575-keymap-item-Mask-Editing-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01575.py -- tests/files/web/generated/M21-GAP-01575-keymap-item-Mask-Editing-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01575", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01576", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01576-keymap-item-Mask-Editing-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01576.py -- tests/files/web/generated/M21-GAP-01576-keymap-item-Mask-Editing-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01576", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01577", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01577-keymap-item-Mask-Editing-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01577.py -- tests/files/web/generated/M21-GAP-01577-keymap-item-Mask-Editing-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01577", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01578", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01578-keymap-item-Mask-Editing-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01578.py -- tests/files/web/generated/M21-GAP-01578-keymap-item-Mask-Editing-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01578", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01579", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01579-keymap-item-Mask-Editing-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01579.py -- tests/files/web/generated/M21-GAP-01579-keymap-item-Mask-Editing-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01579", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01580", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01580-keymap-item-Mask-Editing-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01580.py -- tests/files/web/generated/M21-GAP-01580-keymap-item-Mask-Editing-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01580", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01581", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01581-keymap-item-Mask-Editing-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01581.py -- tests/files/web/generated/M21-GAP-01581-keymap-item-Mask-Editing-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01581", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01582", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01582-keymap-item-Mask-Editing-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01582.py -- tests/files/web/generated/M21-GAP-01582-keymap-item-Mask-Editing-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01582", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01583", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01583-keymap-item-Mask-Editing-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01583.py -- tests/files/web/generated/M21-GAP-01583-keymap-item-Mask-Editing-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01583", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01584", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01584-keymap-item-Mask-Editing-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01584.py -- tests/files/web/generated/M21-GAP-01584-keymap-item-Mask-Editing-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01584", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01585", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01585-keymap-item-Mask-Editing-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01585.py -- tests/files/web/generated/M21-GAP-01585-keymap-item-Mask-Editing-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01585", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01586", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01586-keymap-item-Mask-Editing-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01586.py -- tests/files/web/generated/M21-GAP-01586-keymap-item-Mask-Editing-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01586", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01587", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01587-keymap-item-Mask-Editing-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01587.py -- tests/files/web/generated/M21-GAP-01587-keymap-item-Mask-Editing-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01587", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01588", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01588-keymap-item-Mask-Editing-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01588.py -- tests/files/web/generated/M21-GAP-01588-keymap-item-Mask-Editing-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01588", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01589", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01589-keymap-item-Mask-Editing-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01589.py -- tests/files/web/generated/M21-GAP-01589-keymap-item-Mask-Editing-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01589", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01590", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01590-keymap-item-Mask-Editing-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01590.py -- tests/files/web/generated/M21-GAP-01590-keymap-item-Mask-Editing-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01590", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01591", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01591-keymap-item-Mask-Editing-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01591.py -- tests/files/web/generated/M21-GAP-01591-keymap-item-Mask-Editing-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01591", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01592", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01592-keymap-item-Mask-Editing-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01592.py -- tests/files/web/generated/M21-GAP-01592-keymap-item-Mask-Editing-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01592", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01593", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01593-keymap-item-Mask-Editing-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01593.py -- tests/files/web/generated/M21-GAP-01593-keymap-item-Mask-Editing-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01593", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01594", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01594-keymap-item-Mask-Editing-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01594.py -- tests/files/web/generated/M21-GAP-01594-keymap-item-Mask-Editing-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01594", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01595", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01595-keymap-item-Mask-Editing-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01595.py -- tests/files/web/generated/M21-GAP-01595-keymap-item-Mask-Editing-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01595", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01596", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01596-keymap-item-Mask-Editing-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01596.py -- tests/files/web/generated/M21-GAP-01596-keymap-item-Mask-Editing-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01596", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01597", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01597-keymap-item-Mask-Editing-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01597.py -- tests/files/web/generated/M21-GAP-01597-keymap-item-Mask-Editing-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01597", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01598", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01598-keymap-item-Mask-Editing-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01598.py -- tests/files/web/generated/M21-GAP-01598-keymap-item-Mask-Editing-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01598", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01599", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01599-keymap-item-Mask-Editing-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01599.py -- tests/files/web/generated/M21-GAP-01599-keymap-item-Mask-Editing-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01599", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01600", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01600-keymap-item-Mask-Editing-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01600.py -- tests/files/web/generated/M21-GAP-01600-keymap-item-Mask-Editing-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01600", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01601", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01601-keymap-item-Mask-Editing-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01601.py -- tests/files/web/generated/M21-GAP-01601-keymap-item-Mask-Editing-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01601", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01602", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01602-keymap-item-Mask-Editing-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01602.py -- tests/files/web/generated/M21-GAP-01602-keymap-item-Mask-Editing-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01602", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01603", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01603-keymap-item-Mask-Editing-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01603.py -- tests/files/web/generated/M21-GAP-01603-keymap-item-Mask-Editing-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01603", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01604", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01604-keymap-item-Mask-Editing-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01604.py -- tests/files/web/generated/M21-GAP-01604-keymap-item-Mask-Editing-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01604", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01605", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01605-keymap-item-Mask-Editing-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01605.py -- tests/files/web/generated/M21-GAP-01605-keymap-item-Mask-Editing-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01605", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01606", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01606-keymap-item-Mask-Editing-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01606.py -- tests/files/web/generated/M21-GAP-01606-keymap-item-Mask-Editing-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01606", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01607", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01607-keymap-item-Mask-Editing-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01607.py -- tests/files/web/generated/M21-GAP-01607-keymap-item-Mask-Editing-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01607", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01608", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01608-keymap-item-Mask-Editing-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01608.py -- tests/files/web/generated/M21-GAP-01608-keymap-item-Mask-Editing-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01608", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01609", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01609-keymap-item-Mask-Editing-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01609.py -- tests/files/web/generated/M21-GAP-01609-keymap-item-Mask-Editing-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01609", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01610", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01610-keymap-item-Mask-Editing-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01610.py -- tests/files/web/generated/M21-GAP-01610-keymap-item-Mask-Editing-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01610", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01611", + "gapId": "keymap-item:Mask Editing:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01611-keymap-item-Mask-Editing-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01611.py -- tests/files/web/generated/M21-GAP-01611-keymap-item-Mask-Editing-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01611", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01612", + "gapId": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01612-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01612.py -- tests/files/web/generated/M21-GAP-01612-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01612", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01613", + "gapId": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01613-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01613.py -- tests/files/web/generated/M21-GAP-01613-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01613", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01614", + "gapId": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01614-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01614.py -- tests/files/web/generated/M21-GAP-01614-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01614", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01615", + "gapId": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01615-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01615.py -- tests/files/web/generated/M21-GAP-01615-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01615", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01616", + "gapId": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01616-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01616.py -- tests/files/web/generated/M21-GAP-01616-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01616", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01617", + "gapId": "keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01617-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01617.py -- tests/files/web/generated/M21-GAP-01617-keymap-item-Mesh-Filter-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01617", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01618", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01618-keymap-item-Mesh-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01618.py -- tests/files/web/generated/M21-GAP-01618-keymap-item-Mesh-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01618", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01619", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01619-keymap-item-Mesh-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01619.py -- tests/files/web/generated/M21-GAP-01619-keymap-item-Mesh-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01619", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01620", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01620-keymap-item-Mesh-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01620.py -- tests/files/web/generated/M21-GAP-01620-keymap-item-Mesh-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01620", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01621", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01621-keymap-item-Mesh-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01621.py -- tests/files/web/generated/M21-GAP-01621-keymap-item-Mesh-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01621", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01622", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01622-keymap-item-Mesh-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01622.py -- tests/files/web/generated/M21-GAP-01622-keymap-item-Mesh-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01622", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01623", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01623-keymap-item-Mesh-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01623.py -- tests/files/web/generated/M21-GAP-01623-keymap-item-Mesh-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01623", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01624", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01624-keymap-item-Mesh-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01624.py -- tests/files/web/generated/M21-GAP-01624-keymap-item-Mesh-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01624", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01625", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01625-keymap-item-Mesh-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01625.py -- tests/files/web/generated/M21-GAP-01625-keymap-item-Mesh-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01625", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01626", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01626-keymap-item-Mesh-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01626.py -- tests/files/web/generated/M21-GAP-01626-keymap-item-Mesh-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01626", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01626", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01627", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01627-keymap-item-Mesh-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01627.py -- tests/files/web/generated/M21-GAP-01627-keymap-item-Mesh-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01627", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01627", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01628", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01628-keymap-item-Mesh-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01628.py -- tests/files/web/generated/M21-GAP-01628-keymap-item-Mesh-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01628", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01628", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01629", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01629-keymap-item-Mesh-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01629.py -- tests/files/web/generated/M21-GAP-01629-keymap-item-Mesh-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01629", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01629", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01630", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01630-keymap-item-Mesh-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01630.py -- tests/files/web/generated/M21-GAP-01630-keymap-item-Mesh-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01630", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01630", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01631", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01631-keymap-item-Mesh-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01631.py -- tests/files/web/generated/M21-GAP-01631-keymap-item-Mesh-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01631", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01631", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01632", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01632-keymap-item-Mesh-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01632.py -- tests/files/web/generated/M21-GAP-01632-keymap-item-Mesh-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01632", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01632", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01633", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01633-keymap-item-Mesh-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01633.py -- tests/files/web/generated/M21-GAP-01633-keymap-item-Mesh-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01633", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01633", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01634", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01634-keymap-item-Mesh-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01634.py -- tests/files/web/generated/M21-GAP-01634-keymap-item-Mesh-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01634", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01634", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01635", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01635-keymap-item-Mesh-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01635.py -- tests/files/web/generated/M21-GAP-01635-keymap-item-Mesh-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01635", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01635", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01636", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01636-keymap-item-Mesh-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01636.py -- tests/files/web/generated/M21-GAP-01636-keymap-item-Mesh-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01636", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01636", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01637", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01637-keymap-item-Mesh-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01637.py -- tests/files/web/generated/M21-GAP-01637-keymap-item-Mesh-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01637", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01637", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01638", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01638-keymap-item-Mesh-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01638.py -- tests/files/web/generated/M21-GAP-01638-keymap-item-Mesh-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01638", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01638", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01639", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01639-keymap-item-Mesh-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01639.py -- tests/files/web/generated/M21-GAP-01639-keymap-item-Mesh-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01639", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01639", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01640", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01640-keymap-item-Mesh-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01640.py -- tests/files/web/generated/M21-GAP-01640-keymap-item-Mesh-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01640", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01640", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01641", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01641-keymap-item-Mesh-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01641.py -- tests/files/web/generated/M21-GAP-01641-keymap-item-Mesh-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01641", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01641", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01642", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01642-keymap-item-Mesh-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01642.py -- tests/files/web/generated/M21-GAP-01642-keymap-item-Mesh-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01642", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01642", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01643", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01643-keymap-item-Mesh-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01643.py -- tests/files/web/generated/M21-GAP-01643-keymap-item-Mesh-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01643", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01643", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01644", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01644-keymap-item-Mesh-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01644.py -- tests/files/web/generated/M21-GAP-01644-keymap-item-Mesh-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01644", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01644", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01645", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01645-keymap-item-Mesh-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01645.py -- tests/files/web/generated/M21-GAP-01645-keymap-item-Mesh-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01645", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01645", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01646", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01646-keymap-item-Mesh-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01646.py -- tests/files/web/generated/M21-GAP-01646-keymap-item-Mesh-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01646", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01646", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01647", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01647-keymap-item-Mesh-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01647.py -- tests/files/web/generated/M21-GAP-01647-keymap-item-Mesh-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01647", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01647", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01648", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01648-keymap-item-Mesh-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01648.py -- tests/files/web/generated/M21-GAP-01648-keymap-item-Mesh-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01648", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01648", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01649", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01649-keymap-item-Mesh-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01649.py -- tests/files/web/generated/M21-GAP-01649-keymap-item-Mesh-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01649", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01649", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01650", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01650-keymap-item-Mesh-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01650.py -- tests/files/web/generated/M21-GAP-01650-keymap-item-Mesh-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01650", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01650", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01651", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01651-keymap-item-Mesh-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01651.py -- tests/files/web/generated/M21-GAP-01651-keymap-item-Mesh-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01651", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01651", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01652", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01652-keymap-item-Mesh-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01652.py -- tests/files/web/generated/M21-GAP-01652-keymap-item-Mesh-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01652", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01652", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01653", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01653-keymap-item-Mesh-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01653.py -- tests/files/web/generated/M21-GAP-01653-keymap-item-Mesh-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01653", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01653", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01654", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01654-keymap-item-Mesh-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01654.py -- tests/files/web/generated/M21-GAP-01654-keymap-item-Mesh-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01654", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01654", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01655", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01655-keymap-item-Mesh-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01655.py -- tests/files/web/generated/M21-GAP-01655-keymap-item-Mesh-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01655", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01655", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01656", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01656-keymap-item-Mesh-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01656.py -- tests/files/web/generated/M21-GAP-01656-keymap-item-Mesh-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01656", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01656", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01657", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01657-keymap-item-Mesh-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01657.py -- tests/files/web/generated/M21-GAP-01657-keymap-item-Mesh-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01657", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01657", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01658", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01658-keymap-item-Mesh-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01658.py -- tests/files/web/generated/M21-GAP-01658-keymap-item-Mesh-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01658", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01658", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01659", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01659-keymap-item-Mesh-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01659.py -- tests/files/web/generated/M21-GAP-01659-keymap-item-Mesh-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01659", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01659", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01660", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01660-keymap-item-Mesh-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01660.py -- tests/files/web/generated/M21-GAP-01660-keymap-item-Mesh-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01660", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01660", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01661", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01661-keymap-item-Mesh-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01661.py -- tests/files/web/generated/M21-GAP-01661-keymap-item-Mesh-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01661", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01661", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01662", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01662-keymap-item-Mesh-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01662.py -- tests/files/web/generated/M21-GAP-01662-keymap-item-Mesh-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01662", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01662", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01663", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01663-keymap-item-Mesh-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01663.py -- tests/files/web/generated/M21-GAP-01663-keymap-item-Mesh-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01663", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01663", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01664", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01664-keymap-item-Mesh-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01664.py -- tests/files/web/generated/M21-GAP-01664-keymap-item-Mesh-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01664", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01664", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01665", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01665-keymap-item-Mesh-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01665.py -- tests/files/web/generated/M21-GAP-01665-keymap-item-Mesh-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01665", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01665", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01666", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01666-keymap-item-Mesh-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01666.py -- tests/files/web/generated/M21-GAP-01666-keymap-item-Mesh-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01666", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01666", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01667", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01667-keymap-item-Mesh-EMPTY-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01667.py -- tests/files/web/generated/M21-GAP-01667-keymap-item-Mesh-EMPTY-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01667", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01667", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01668", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01668-keymap-item-Mesh-EMPTY-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01668.py -- tests/files/web/generated/M21-GAP-01668-keymap-item-Mesh-EMPTY-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01668", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01668", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01669", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01669-keymap-item-Mesh-EMPTY-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01669.py -- tests/files/web/generated/M21-GAP-01669-keymap-item-Mesh-EMPTY-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01669", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01669", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01670", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01670-keymap-item-Mesh-EMPTY-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01670.py -- tests/files/web/generated/M21-GAP-01670-keymap-item-Mesh-EMPTY-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01670", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01670", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01671", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01671-keymap-item-Mesh-EMPTY-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01671.py -- tests/files/web/generated/M21-GAP-01671-keymap-item-Mesh-EMPTY-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01671", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01671", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01672", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01672-keymap-item-Mesh-EMPTY-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01672.py -- tests/files/web/generated/M21-GAP-01672-keymap-item-Mesh-EMPTY-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01672", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01672", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01673", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01673-keymap-item-Mesh-EMPTY-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01673.py -- tests/files/web/generated/M21-GAP-01673-keymap-item-Mesh-EMPTY-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01673", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01673", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01674", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01674-keymap-item-Mesh-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01674.py -- tests/files/web/generated/M21-GAP-01674-keymap-item-Mesh-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01674", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01674", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01675", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01675-keymap-item-Mesh-EMPTY-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01675.py -- tests/files/web/generated/M21-GAP-01675-keymap-item-Mesh-EMPTY-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01675", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01675", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01676", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01676-keymap-item-Mesh-EMPTY-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01676.py -- tests/files/web/generated/M21-GAP-01676-keymap-item-Mesh-EMPTY-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01676", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01676", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01677", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01677-keymap-item-Mesh-EMPTY-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01677.py -- tests/files/web/generated/M21-GAP-01677-keymap-item-Mesh-EMPTY-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01677", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01677", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01678", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01678-keymap-item-Mesh-EMPTY-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01678.py -- tests/files/web/generated/M21-GAP-01678-keymap-item-Mesh-EMPTY-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01678", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01678", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01679", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01679-keymap-item-Mesh-EMPTY-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01679.py -- tests/files/web/generated/M21-GAP-01679-keymap-item-Mesh-EMPTY-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01679", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01679", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01680", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01680-keymap-item-Mesh-EMPTY-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01680.py -- tests/files/web/generated/M21-GAP-01680-keymap-item-Mesh-EMPTY-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01680", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01680", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01681", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01681-keymap-item-Mesh-EMPTY-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01681.py -- tests/files/web/generated/M21-GAP-01681-keymap-item-Mesh-EMPTY-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01681", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01681", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01682", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01682-keymap-item-Mesh-EMPTY-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01682.py -- tests/files/web/generated/M21-GAP-01682-keymap-item-Mesh-EMPTY-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01682", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01682", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01683", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01683-keymap-item-Mesh-EMPTY-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01683.py -- tests/files/web/generated/M21-GAP-01683-keymap-item-Mesh-EMPTY-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01683", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01683", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01684", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01684-keymap-item-Mesh-EMPTY-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01684.py -- tests/files/web/generated/M21-GAP-01684-keymap-item-Mesh-EMPTY-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01684", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01684", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01685", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01685-keymap-item-Mesh-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01685.py -- tests/files/web/generated/M21-GAP-01685-keymap-item-Mesh-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01685", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01685", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01686", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01686-keymap-item-Mesh-EMPTY-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01686.py -- tests/files/web/generated/M21-GAP-01686-keymap-item-Mesh-EMPTY-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01686", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01686", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01687", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01687-keymap-item-Mesh-EMPTY-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01687.py -- tests/files/web/generated/M21-GAP-01687-keymap-item-Mesh-EMPTY-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01687", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01687", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01688", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01688-keymap-item-Mesh-EMPTY-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01688.py -- tests/files/web/generated/M21-GAP-01688-keymap-item-Mesh-EMPTY-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01688", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01688", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01689", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01689-keymap-item-Mesh-EMPTY-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01689.py -- tests/files/web/generated/M21-GAP-01689-keymap-item-Mesh-EMPTY-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01689", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01689", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01690", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01690-keymap-item-Mesh-EMPTY-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01690.py -- tests/files/web/generated/M21-GAP-01690-keymap-item-Mesh-EMPTY-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01690", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01690", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01691", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01691-keymap-item-Mesh-EMPTY-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01691.py -- tests/files/web/generated/M21-GAP-01691-keymap-item-Mesh-EMPTY-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01691", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01691", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01692", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01692-keymap-item-Mesh-EMPTY-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01692.py -- tests/files/web/generated/M21-GAP-01692-keymap-item-Mesh-EMPTY-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01692", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01692", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01693", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01693-keymap-item-Mesh-EMPTY-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01693.py -- tests/files/web/generated/M21-GAP-01693-keymap-item-Mesh-EMPTY-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01693", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01693", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01694", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01694-keymap-item-Mesh-EMPTY-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01694.py -- tests/files/web/generated/M21-GAP-01694-keymap-item-Mesh-EMPTY-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01694", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01694", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01695", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01695-keymap-item-Mesh-EMPTY-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01695.py -- tests/files/web/generated/M21-GAP-01695-keymap-item-Mesh-EMPTY-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01695", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01695", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01696", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01696-keymap-item-Mesh-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01696.py -- tests/files/web/generated/M21-GAP-01696-keymap-item-Mesh-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01696", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01696", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01697", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01697-keymap-item-Mesh-EMPTY-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01697.py -- tests/files/web/generated/M21-GAP-01697-keymap-item-Mesh-EMPTY-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01697", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01697", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01698", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01698-keymap-item-Mesh-EMPTY-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01698.py -- tests/files/web/generated/M21-GAP-01698-keymap-item-Mesh-EMPTY-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01698", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01698", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01699", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01699-keymap-item-Mesh-EMPTY-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01699.py -- tests/files/web/generated/M21-GAP-01699-keymap-item-Mesh-EMPTY-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01699", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01699", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01700", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01700-keymap-item-Mesh-EMPTY-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01700.py -- tests/files/web/generated/M21-GAP-01700-keymap-item-Mesh-EMPTY-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01700", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01700", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01701", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01701-keymap-item-Mesh-EMPTY-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01701.py -- tests/files/web/generated/M21-GAP-01701-keymap-item-Mesh-EMPTY-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01701", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01701", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01702", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01702-keymap-item-Mesh-EMPTY-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01702.py -- tests/files/web/generated/M21-GAP-01702-keymap-item-Mesh-EMPTY-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01702", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01702", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01703", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01703-keymap-item-Mesh-EMPTY-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01703.py -- tests/files/web/generated/M21-GAP-01703-keymap-item-Mesh-EMPTY-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01703", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01703", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01704", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01704-keymap-item-Mesh-EMPTY-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01704.py -- tests/files/web/generated/M21-GAP-01704-keymap-item-Mesh-EMPTY-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01704", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01704", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01705", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:88", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01705-keymap-item-Mesh-EMPTY-WINDOW-88.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01705.py -- tests/files/web/generated/M21-GAP-01705-keymap-item-Mesh-EMPTY-WINDOW-88.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01705", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01705", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01706", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:89", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01706-keymap-item-Mesh-EMPTY-WINDOW-89.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01706.py -- tests/files/web/generated/M21-GAP-01706-keymap-item-Mesh-EMPTY-WINDOW-89.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01706", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01706", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01707", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01707-keymap-item-Mesh-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01707.py -- tests/files/web/generated/M21-GAP-01707-keymap-item-Mesh-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01707", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01707", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01708", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:90", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01708-keymap-item-Mesh-EMPTY-WINDOW-90.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01708.py -- tests/files/web/generated/M21-GAP-01708-keymap-item-Mesh-EMPTY-WINDOW-90.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01708", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01708", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01709", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:91", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01709-keymap-item-Mesh-EMPTY-WINDOW-91.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01709.py -- tests/files/web/generated/M21-GAP-01709-keymap-item-Mesh-EMPTY-WINDOW-91.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01709", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01709", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01710", + "gapId": "keymap-item:Mesh:EMPTY:WINDOW:92", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01710-keymap-item-Mesh-EMPTY-WINDOW-92.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01710.py -- tests/files/web/generated/M21-GAP-01710-keymap-item-Mesh-EMPTY-WINDOW-92.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01710", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01710", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01711", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01711-keymap-item-Metaball-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01711.py -- tests/files/web/generated/M21-GAP-01711-keymap-item-Metaball-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01711", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01711", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01712", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01712-keymap-item-Metaball-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01712.py -- tests/files/web/generated/M21-GAP-01712-keymap-item-Metaball-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01712", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01712", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01713", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01713-keymap-item-Metaball-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01713.py -- tests/files/web/generated/M21-GAP-01713-keymap-item-Metaball-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01713", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01713", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01714", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01714-keymap-item-Metaball-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01714.py -- tests/files/web/generated/M21-GAP-01714-keymap-item-Metaball-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01714", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01714", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01715", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01715-keymap-item-Metaball-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01715.py -- tests/files/web/generated/M21-GAP-01715-keymap-item-Metaball-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01715", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01715", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01716", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01716-keymap-item-Metaball-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01716.py -- tests/files/web/generated/M21-GAP-01716-keymap-item-Metaball-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01716", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01716", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01717", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01717-keymap-item-Metaball-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01717.py -- tests/files/web/generated/M21-GAP-01717-keymap-item-Metaball-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01717", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01717", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01718", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01718-keymap-item-Metaball-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01718.py -- tests/files/web/generated/M21-GAP-01718-keymap-item-Metaball-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01718", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01718", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01719", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01719-keymap-item-Metaball-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01719.py -- tests/files/web/generated/M21-GAP-01719-keymap-item-Metaball-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01719", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01719", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01720", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01720-keymap-item-Metaball-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01720.py -- tests/files/web/generated/M21-GAP-01720-keymap-item-Metaball-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01720", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01720", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01721", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01721-keymap-item-Metaball-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01721.py -- tests/files/web/generated/M21-GAP-01721-keymap-item-Metaball-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01721", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01721", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01722", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01722-keymap-item-Metaball-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01722.py -- tests/files/web/generated/M21-GAP-01722-keymap-item-Metaball-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01722", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01722", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01723", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01723-keymap-item-Metaball-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01723.py -- tests/files/web/generated/M21-GAP-01723-keymap-item-Metaball-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01723", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01723", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01724", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01724-keymap-item-Metaball-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01724.py -- tests/files/web/generated/M21-GAP-01724-keymap-item-Metaball-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01724", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01724", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01725", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01725-keymap-item-Metaball-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01725.py -- tests/files/web/generated/M21-GAP-01725-keymap-item-Metaball-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01725", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01725", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01726", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01726-keymap-item-Metaball-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01726.py -- tests/files/web/generated/M21-GAP-01726-keymap-item-Metaball-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01726", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01726", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01727", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01727-keymap-item-Metaball-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01727.py -- tests/files/web/generated/M21-GAP-01727-keymap-item-Metaball-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01727", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01727", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01728", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01728-keymap-item-Metaball-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01728.py -- tests/files/web/generated/M21-GAP-01728-keymap-item-Metaball-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01728", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01728", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01729", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01729-keymap-item-Metaball-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01729.py -- tests/files/web/generated/M21-GAP-01729-keymap-item-Metaball-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01729", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01729", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01730", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01730-keymap-item-Metaball-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01730.py -- tests/files/web/generated/M21-GAP-01730-keymap-item-Metaball-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01730", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01730", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01731", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01731-keymap-item-Metaball-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01731.py -- tests/files/web/generated/M21-GAP-01731-keymap-item-Metaball-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01731", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01731", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01732", + "gapId": "keymap-item:Metaball:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01732-keymap-item-Metaball-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01732.py -- tests/files/web/generated/M21-GAP-01732-keymap-item-Metaball-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01732", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01732", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01733", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01733-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01733.py -- tests/files/web/generated/M21-GAP-01733-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01733", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01733", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01734", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01734-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01734.py -- tests/files/web/generated/M21-GAP-01734-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01734", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01734", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01735", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01735-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01735.py -- tests/files/web/generated/M21-GAP-01735-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01735", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01735", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01736", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01736-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01736.py -- tests/files/web/generated/M21-GAP-01736-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01736", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01736", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01737", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01737-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01737.py -- tests/files/web/generated/M21-GAP-01737-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01737", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01737", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01738", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01738-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01738.py -- tests/files/web/generated/M21-GAP-01738-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01738", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01738", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01739", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01739-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01739.py -- tests/files/web/generated/M21-GAP-01739-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01739", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01739", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01740", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01740-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01740.py -- tests/files/web/generated/M21-GAP-01740-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01740", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01740", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01741", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01741-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01741.py -- tests/files/web/generated/M21-GAP-01741-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01741", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01741", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01742", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01742-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01742.py -- tests/files/web/generated/M21-GAP-01742-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01742", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01742", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01743", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01743-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01743.py -- tests/files/web/generated/M21-GAP-01743-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01743", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01743", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01744", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01744-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01744.py -- tests/files/web/generated/M21-GAP-01744-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01744", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01744", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01745", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01745-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01745.py -- tests/files/web/generated/M21-GAP-01745-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01745", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01745", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01746", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01746-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01746.py -- tests/files/web/generated/M21-GAP-01746-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01746", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01746", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01747", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01747-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01747.py -- tests/files/web/generated/M21-GAP-01747-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01747", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01747", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01748", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01748-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01748.py -- tests/files/web/generated/M21-GAP-01748-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01748", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01748", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01749", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01749-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01749.py -- tests/files/web/generated/M21-GAP-01749-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01749", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01749", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01750", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01750-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01750.py -- tests/files/web/generated/M21-GAP-01750-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01750", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01750", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01751", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01751-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01751.py -- tests/files/web/generated/M21-GAP-01751-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01751", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01751", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01752", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01752-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01752.py -- tests/files/web/generated/M21-GAP-01752-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01752", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01752", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01753", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01753-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01753.py -- tests/files/web/generated/M21-GAP-01753-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01753", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01753", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01754", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01754-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01754.py -- tests/files/web/generated/M21-GAP-01754-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01754", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01754", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01755", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01755-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01755.py -- tests/files/web/generated/M21-GAP-01755-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01755", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01755", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01756", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01756-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01756.py -- tests/files/web/generated/M21-GAP-01756-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01756", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01756", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01757", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01757-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01757.py -- tests/files/web/generated/M21-GAP-01757-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01757", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01757", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01758", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01758-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01758.py -- tests/files/web/generated/M21-GAP-01758-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01758", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01758", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01759", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01759-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01759.py -- tests/files/web/generated/M21-GAP-01759-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01759", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01759", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01760", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01760-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01760.py -- tests/files/web/generated/M21-GAP-01760-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01760", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01760", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01761", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01761-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01761.py -- tests/files/web/generated/M21-GAP-01761-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01761", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01761", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01762", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01762-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01762.py -- tests/files/web/generated/M21-GAP-01762-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01762", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01762", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01763", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01763-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01763.py -- tests/files/web/generated/M21-GAP-01763-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01763", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01763", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01764", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01764-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01764.py -- tests/files/web/generated/M21-GAP-01764-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01764", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01764", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01765", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01765-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01765.py -- tests/files/web/generated/M21-GAP-01765-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01765", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01765", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01766", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01766-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01766.py -- tests/files/web/generated/M21-GAP-01766-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01766", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01766", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01767", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01767-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01767.py -- tests/files/web/generated/M21-GAP-01767-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01767", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01767", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01768", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01768-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01768.py -- tests/files/web/generated/M21-GAP-01768-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01768", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01768", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01769", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01769-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01769.py -- tests/files/web/generated/M21-GAP-01769-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01769", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01769", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01770", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01770-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01770.py -- tests/files/web/generated/M21-GAP-01770-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01770", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01770", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01771", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01771-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01771.py -- tests/files/web/generated/M21-GAP-01771-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01771", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01771", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01772", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01772-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01772.py -- tests/files/web/generated/M21-GAP-01772-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01772", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01772", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01773", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01773-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01773.py -- tests/files/web/generated/M21-GAP-01773-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01773", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01773", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01774", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01774-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01774.py -- tests/files/web/generated/M21-GAP-01774-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01774", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01774", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01775", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01775-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01775.py -- tests/files/web/generated/M21-GAP-01775-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01775", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01775", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01776", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01776-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01776.py -- tests/files/web/generated/M21-GAP-01776-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01776", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01776", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01777", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01777-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01777.py -- tests/files/web/generated/M21-GAP-01777-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01777", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01777", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01778", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01778-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01778.py -- tests/files/web/generated/M21-GAP-01778-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01778", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01778", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01779", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01779-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01779.py -- tests/files/web/generated/M21-GAP-01779-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01779", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01779", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01780", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01780-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01780.py -- tests/files/web/generated/M21-GAP-01780-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01780", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01780", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01781", + "gapId": "keymap-item:NLA Editor:NLA_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01781-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01781.py -- tests/files/web/generated/M21-GAP-01781-keymap-item-NLA-Editor-NLA_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01781", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01781", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01782", + "gapId": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01782-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01782.py -- tests/files/web/generated/M21-GAP-01782-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01782", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01782", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01783", + "gapId": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01783-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01783.py -- tests/files/web/generated/M21-GAP-01783-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01783", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01783", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01784", + "gapId": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01784-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01784.py -- tests/files/web/generated/M21-GAP-01784-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01784", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01784", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01785", + "gapId": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01785-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01785.py -- tests/files/web/generated/M21-GAP-01785-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01785", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01785", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01786", + "gapId": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01786-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01786.py -- tests/files/web/generated/M21-GAP-01786-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01786", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01786", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01787", + "gapId": "keymap-item:NLA Generic:NLA_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01787-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01787.py -- tests/files/web/generated/M21-GAP-01787-keymap-item-NLA-Generic-NLA_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01787", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01787", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01788", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01788-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01788.py -- tests/files/web/generated/M21-GAP-01788-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01788", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01788", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01789", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01789-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01789.py -- tests/files/web/generated/M21-GAP-01789-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01789", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01789", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01790", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01790-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01790.py -- tests/files/web/generated/M21-GAP-01790-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01790", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01790", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01791", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01791-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01791.py -- tests/files/web/generated/M21-GAP-01791-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01791", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01791", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01792", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01792-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01792.py -- tests/files/web/generated/M21-GAP-01792-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01792", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01792", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01793", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01793-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01793.py -- tests/files/web/generated/M21-GAP-01793-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01793", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01793", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01794", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01794-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01794.py -- tests/files/web/generated/M21-GAP-01794-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01794", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01794", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01795", + "gapId": "keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01795-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01795.py -- tests/files/web/generated/M21-GAP-01795-keymap-item-NLA-Tracks-NLA_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01795", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01795", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01796", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01796-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01796.py -- tests/files/web/generated/M21-GAP-01796-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01796", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01796", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01797", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01797-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01797.py -- tests/files/web/generated/M21-GAP-01797-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01797", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01797", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01798", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01798-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01798.py -- tests/files/web/generated/M21-GAP-01798-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01798", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01798", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01799", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:100", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01799-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-100.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01799.py -- tests/files/web/generated/M21-GAP-01799-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-100.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01799", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01799", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01800", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:101", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01800-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-101.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01800.py -- tests/files/web/generated/M21-GAP-01800-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-101.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01800", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01800", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01801", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:102", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01801-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-102.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01801.py -- tests/files/web/generated/M21-GAP-01801-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-102.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01801", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01801", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01802", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:103", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01802-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-103.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01802.py -- tests/files/web/generated/M21-GAP-01802-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-103.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01802", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01802", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01803", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01803-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01803.py -- tests/files/web/generated/M21-GAP-01803-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01803", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01803", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01804", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01804-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01804.py -- tests/files/web/generated/M21-GAP-01804-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01804", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01804", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01805", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01805-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01805.py -- tests/files/web/generated/M21-GAP-01805-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01805", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01805", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01806", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01806-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01806.py -- tests/files/web/generated/M21-GAP-01806-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01806", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01806", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01807", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01807-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01807.py -- tests/files/web/generated/M21-GAP-01807-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01807", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01807", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01808", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01808-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01808.py -- tests/files/web/generated/M21-GAP-01808-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01808", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01808", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01809", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01809-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01809.py -- tests/files/web/generated/M21-GAP-01809-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01809", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01809", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01810", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01810-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01810.py -- tests/files/web/generated/M21-GAP-01810-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01810", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01810", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01811", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01811-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01811.py -- tests/files/web/generated/M21-GAP-01811-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01811", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01811", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01812", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01812-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01812.py -- tests/files/web/generated/M21-GAP-01812-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01812", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01812", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01813", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01813-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01813.py -- tests/files/web/generated/M21-GAP-01813-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01813", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01813", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01814", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01814-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01814.py -- tests/files/web/generated/M21-GAP-01814-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01814", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01814", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01815", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01815-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01815.py -- tests/files/web/generated/M21-GAP-01815-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01815", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01815", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01816", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01816-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01816.py -- tests/files/web/generated/M21-GAP-01816-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01816", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01816", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01817", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01817-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01817.py -- tests/files/web/generated/M21-GAP-01817-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01817", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01817", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01818", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01818-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01818.py -- tests/files/web/generated/M21-GAP-01818-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01818", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01818", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01819", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01819-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01819.py -- tests/files/web/generated/M21-GAP-01819-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01819", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01819", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01820", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01820-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01820.py -- tests/files/web/generated/M21-GAP-01820-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01820", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01820", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01821", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01821-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01821.py -- tests/files/web/generated/M21-GAP-01821-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01821", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01821", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01822", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01822-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01822.py -- tests/files/web/generated/M21-GAP-01822-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01822", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01822", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01823", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01823-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01823.py -- tests/files/web/generated/M21-GAP-01823-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01823", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01823", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01824", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01824-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01824.py -- tests/files/web/generated/M21-GAP-01824-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01824", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01824", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01825", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01825-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01825.py -- tests/files/web/generated/M21-GAP-01825-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01825", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01825", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01826", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01826-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01826.py -- tests/files/web/generated/M21-GAP-01826-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01826", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01826", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01827", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01827-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01827.py -- tests/files/web/generated/M21-GAP-01827-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01827", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01827", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01828", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01828-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01828.py -- tests/files/web/generated/M21-GAP-01828-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01828", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01828", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01829", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01829-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01829.py -- tests/files/web/generated/M21-GAP-01829-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01829", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01829", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01830", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01830-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01830.py -- tests/files/web/generated/M21-GAP-01830-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01830", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01830", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01831", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01831-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01831.py -- tests/files/web/generated/M21-GAP-01831-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01831", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01831", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01832", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01832-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01832.py -- tests/files/web/generated/M21-GAP-01832-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01832", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01832", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01833", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01833-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01833.py -- tests/files/web/generated/M21-GAP-01833-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01833", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01833", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01834", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01834-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01834.py -- tests/files/web/generated/M21-GAP-01834-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01834", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01834", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01835", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01835-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01835.py -- tests/files/web/generated/M21-GAP-01835-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01835", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01835", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01836", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01836-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01836.py -- tests/files/web/generated/M21-GAP-01836-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01836", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01836", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01837", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01837-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01837.py -- tests/files/web/generated/M21-GAP-01837-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01837", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01837", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01838", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01838-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01838.py -- tests/files/web/generated/M21-GAP-01838-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01838", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01838", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01839", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01839-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01839.py -- tests/files/web/generated/M21-GAP-01839-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01839", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01839", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01840", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01840-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01840.py -- tests/files/web/generated/M21-GAP-01840-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01840", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01840", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01841", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01841-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01841.py -- tests/files/web/generated/M21-GAP-01841-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01841", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01841", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01842", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01842-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01842.py -- tests/files/web/generated/M21-GAP-01842-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01842", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01842", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01843", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01843-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01843.py -- tests/files/web/generated/M21-GAP-01843-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01843", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01843", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01844", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01844-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01844.py -- tests/files/web/generated/M21-GAP-01844-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01844", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01844", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01845", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01845-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01845.py -- tests/files/web/generated/M21-GAP-01845-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01845", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01845", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01846", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01846-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01846.py -- tests/files/web/generated/M21-GAP-01846-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01846", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01846", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01847", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01847-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01847.py -- tests/files/web/generated/M21-GAP-01847-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01847", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01847", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01848", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01848-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01848.py -- tests/files/web/generated/M21-GAP-01848-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01848", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01848", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01849", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01849-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01849.py -- tests/files/web/generated/M21-GAP-01849-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01849", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01849", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01850", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01850-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01850.py -- tests/files/web/generated/M21-GAP-01850-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01850", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01850", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01851", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01851-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01851.py -- tests/files/web/generated/M21-GAP-01851-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01851", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01851", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01852", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01852-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01852.py -- tests/files/web/generated/M21-GAP-01852-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01852", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01852", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01853", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01853-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01853.py -- tests/files/web/generated/M21-GAP-01853-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01853", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01853", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01854", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01854-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01854.py -- tests/files/web/generated/M21-GAP-01854-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01854", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01854", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01855", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01855-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01855.py -- tests/files/web/generated/M21-GAP-01855-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01855", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01855", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01856", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01856-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01856.py -- tests/files/web/generated/M21-GAP-01856-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01856", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01856", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01857", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01857-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01857.py -- tests/files/web/generated/M21-GAP-01857-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01857", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01857", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01858", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01858-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01858.py -- tests/files/web/generated/M21-GAP-01858-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01858", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01858", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01859", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01859-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01859.py -- tests/files/web/generated/M21-GAP-01859-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01859", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01859", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01860", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01860-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01860.py -- tests/files/web/generated/M21-GAP-01860-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01860", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01860", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01861", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01861-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01861.py -- tests/files/web/generated/M21-GAP-01861-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01861", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01861", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01862", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01862-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01862.py -- tests/files/web/generated/M21-GAP-01862-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01862", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01862", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01863", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01863-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01863.py -- tests/files/web/generated/M21-GAP-01863-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01863", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01863", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01864", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01864-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01864.py -- tests/files/web/generated/M21-GAP-01864-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01864", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01864", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01865", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01865-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01865.py -- tests/files/web/generated/M21-GAP-01865-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01865", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01865", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01866", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01866-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01866.py -- tests/files/web/generated/M21-GAP-01866-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01866", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01866", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01867", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01867-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01867.py -- tests/files/web/generated/M21-GAP-01867-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01867", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01867", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01868", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01868-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01868.py -- tests/files/web/generated/M21-GAP-01868-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01868", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01868", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01869", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01869-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01869.py -- tests/files/web/generated/M21-GAP-01869-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01869", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01869", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01870", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01870-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01870.py -- tests/files/web/generated/M21-GAP-01870-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01870", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01870", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01871", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01871-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01871.py -- tests/files/web/generated/M21-GAP-01871-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01871", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01871", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01872", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01872-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01872.py -- tests/files/web/generated/M21-GAP-01872-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01872", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01872", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01873", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01873-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01873.py -- tests/files/web/generated/M21-GAP-01873-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01873", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01873", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01874", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01874-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01874.py -- tests/files/web/generated/M21-GAP-01874-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01874", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01874", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01875", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01875-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01875.py -- tests/files/web/generated/M21-GAP-01875-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01875", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01875", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01876", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01876-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01876.py -- tests/files/web/generated/M21-GAP-01876-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01876", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01876", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01877", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01877-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01877.py -- tests/files/web/generated/M21-GAP-01877-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01877", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01877", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01878", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01878-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01878.py -- tests/files/web/generated/M21-GAP-01878-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01878", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01878", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01879", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01879-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01879.py -- tests/files/web/generated/M21-GAP-01879-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01879", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01879", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01880", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01880-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01880.py -- tests/files/web/generated/M21-GAP-01880-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01880", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01880", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01881", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01881-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01881.py -- tests/files/web/generated/M21-GAP-01881-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01881", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01881", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01882", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01882-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01882.py -- tests/files/web/generated/M21-GAP-01882-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01882", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01882", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01883", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01883-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01883.py -- tests/files/web/generated/M21-GAP-01883-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01883", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01883", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01884", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01884-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01884.py -- tests/files/web/generated/M21-GAP-01884-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01884", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01884", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01885", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01885-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01885.py -- tests/files/web/generated/M21-GAP-01885-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01885", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01885", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01886", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01886-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01886.py -- tests/files/web/generated/M21-GAP-01886-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01886", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01886", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01887", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:88", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01887-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-88.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01887.py -- tests/files/web/generated/M21-GAP-01887-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-88.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01887", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01887", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01888", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:89", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01888-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-89.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01888.py -- tests/files/web/generated/M21-GAP-01888-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-89.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01888", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01888", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01889", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01889-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01889.py -- tests/files/web/generated/M21-GAP-01889-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01889", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01889", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01890", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:90", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01890-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-90.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01890.py -- tests/files/web/generated/M21-GAP-01890-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-90.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01890", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01890", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01891", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:91", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01891-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-91.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01891.py -- tests/files/web/generated/M21-GAP-01891-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-91.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01891", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01891", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01892", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:92", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01892-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-92.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01892.py -- tests/files/web/generated/M21-GAP-01892-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-92.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01892", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01892", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01893", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:93", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01893-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-93.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01893.py -- tests/files/web/generated/M21-GAP-01893-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-93.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01893", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01893", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01894", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:94", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01894-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-94.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01894.py -- tests/files/web/generated/M21-GAP-01894-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-94.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01894", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01894", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01895", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:95", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01895-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-95.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01895.py -- tests/files/web/generated/M21-GAP-01895-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-95.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01895", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01895", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01896", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:96", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01896-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-96.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01896.py -- tests/files/web/generated/M21-GAP-01896-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-96.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01896", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01896", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01897", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:97", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01897-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-97.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01897.py -- tests/files/web/generated/M21-GAP-01897-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-97.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01897", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01897", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01898", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:98", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01898-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-98.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01898.py -- tests/files/web/generated/M21-GAP-01898-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-98.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01898", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01898", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01899", + "gapId": "keymap-item:Node Editor:NODE_EDITOR:WINDOW:99", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01899-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-99.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01899.py -- tests/files/web/generated/M21-GAP-01899-keymap-item-Node-Editor-NODE_EDITOR-WINDOW-99.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01899", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01899", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01900", + "gapId": "keymap-item:Node Generic:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01900-keymap-item-Node-Generic-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01900.py -- tests/files/web/generated/M21-GAP-01900-keymap-item-Node-Generic-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01900", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01900", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01901", + "gapId": "keymap-item:Node Generic:NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01901-keymap-item-Node-Generic-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01901.py -- tests/files/web/generated/M21-GAP-01901-keymap-item-Node-Generic-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01901", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01901", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01902", + "gapId": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01902-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01902.py -- tests/files/web/generated/M21-GAP-01902-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01902", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01902", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01903", + "gapId": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01903-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01903.py -- tests/files/web/generated/M21-GAP-01903-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01903", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01903", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01904", + "gapId": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01904-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01904.py -- tests/files/web/generated/M21-GAP-01904-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01904", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01904", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01905", + "gapId": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01905-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01905.py -- tests/files/web/generated/M21-GAP-01905-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01905", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01905", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01906", + "gapId": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01906-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01906.py -- tests/files/web/generated/M21-GAP-01906-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01906", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01906", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01907", + "gapId": "keymap-item:Node Link Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01907-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01907.py -- tests/files/web/generated/M21-GAP-01907-keymap-item-Node-Link-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01907", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01907", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01908", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01908-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01908.py -- tests/files/web/generated/M21-GAP-01908-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01908", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01908", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01909", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01909-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01909.py -- tests/files/web/generated/M21-GAP-01909-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01909", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01909", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01910", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01910-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01910.py -- tests/files/web/generated/M21-GAP-01910-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01910", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01910", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01911", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01911-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01911.py -- tests/files/web/generated/M21-GAP-01911-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01911", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01911", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01912", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01912-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01912.py -- tests/files/web/generated/M21-GAP-01912-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01912", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01912", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01913", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01913-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01913.py -- tests/files/web/generated/M21-GAP-01913-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01913", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01913", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01914", + "gapId": "keymap-item:Node Resize Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01914-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01914.py -- tests/files/web/generated/M21-GAP-01914-keymap-item-Node-Resize-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01914", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01914", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01915", + "gapId": "keymap-item:Node Tool: Add Reroute:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01915-keymap-item-Node-Tool-Add-Reroute-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01915.py -- tests/files/web/generated/M21-GAP-01915-keymap-item-Node-Tool-Add-Reroute-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01915", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01915", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01916", + "gapId": "keymap-item:Node Tool: Links Cut:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01916-keymap-item-Node-Tool-Links-Cut-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01916.py -- tests/files/web/generated/M21-GAP-01916-keymap-item-Node-Tool-Links-Cut-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01916", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01916", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01917", + "gapId": "keymap-item:Node Tool: Mute Links:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01917-keymap-item-Node-Tool-Mute-Links-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01917.py -- tests/files/web/generated/M21-GAP-01917-keymap-item-Node-Tool-Mute-Links-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01917", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01917", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01918", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01918-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01918.py -- tests/files/web/generated/M21-GAP-01918-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01918", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01918", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01919", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01919-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01919.py -- tests/files/web/generated/M21-GAP-01919-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01919", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01919", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01920", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01920-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01920.py -- tests/files/web/generated/M21-GAP-01920-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01920", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01920", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01921", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01921-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01921.py -- tests/files/web/generated/M21-GAP-01921-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01921", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01921", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01922", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01922-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01922.py -- tests/files/web/generated/M21-GAP-01922-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01922", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01922", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01923", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01923-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01923.py -- tests/files/web/generated/M21-GAP-01923-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01923", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01923", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01924", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01924-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01924.py -- tests/files/web/generated/M21-GAP-01924-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01924", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01924", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01925", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01925-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01925.py -- tests/files/web/generated/M21-GAP-01925-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01925", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01925", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01926", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01926-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01926.py -- tests/files/web/generated/M21-GAP-01926-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01926", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01926", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01927", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01927-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01927.py -- tests/files/web/generated/M21-GAP-01927-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01927", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01927", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01928", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01928-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01928.py -- tests/files/web/generated/M21-GAP-01928-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01928", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01928", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01929", + "gapId": "keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01929-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01929.py -- tests/files/web/generated/M21-GAP-01929-keymap-item-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01929", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01929", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01930", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01930-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01930.py -- tests/files/web/generated/M21-GAP-01930-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01930", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01930", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01931", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01931-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01931.py -- tests/files/web/generated/M21-GAP-01931-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01931", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01931", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01932", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01932-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01932.py -- tests/files/web/generated/M21-GAP-01932-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01932", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01932", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01933", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01933-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01933.py -- tests/files/web/generated/M21-GAP-01933-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01933", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01933", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01934", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01934-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01934.py -- tests/files/web/generated/M21-GAP-01934-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01934", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01934", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01935", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01935-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01935.py -- tests/files/web/generated/M21-GAP-01935-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01935", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01935", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01936", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01936-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01936.py -- tests/files/web/generated/M21-GAP-01936-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01936", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01936", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01937", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01937-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01937.py -- tests/files/web/generated/M21-GAP-01937-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01937", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01937", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01938", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01938-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01938.py -- tests/files/web/generated/M21-GAP-01938-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01938", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01938", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01939", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01939-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01939.py -- tests/files/web/generated/M21-GAP-01939-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01939", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01939", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01940", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01940-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01940.py -- tests/files/web/generated/M21-GAP-01940-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01940", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01940", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01941", + "gapId": "keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01941-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01941.py -- tests/files/web/generated/M21-GAP-01941-keymap-item-Node-Tool-Select-Box-NODE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01941", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01941", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01942", + "gapId": "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01942-keymap-item-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01942.py -- tests/files/web/generated/M21-GAP-01942-keymap-item-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01942", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01942", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01943", + "gapId": "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01943-keymap-item-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01943.py -- tests/files/web/generated/M21-GAP-01943-keymap-item-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01943", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01943", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01944", + "gapId": "keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01944-keymap-item-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01944.py -- tests/files/web/generated/M21-GAP-01944-keymap-item-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01944", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01944", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01945", + "gapId": "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01945-keymap-item-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01945.py -- tests/files/web/generated/M21-GAP-01945-keymap-item-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01945", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01945", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01946", + "gapId": "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01946-keymap-item-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01946.py -- tests/files/web/generated/M21-GAP-01946-keymap-item-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01946", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01946", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01947", + "gapId": "keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01947-keymap-item-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01947.py -- tests/files/web/generated/M21-GAP-01947-keymap-item-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01947", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01947", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01948", + "gapId": "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01948-keymap-item-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01948.py -- tests/files/web/generated/M21-GAP-01948-keymap-item-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01948", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01948", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01949", + "gapId": "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01949-keymap-item-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01949.py -- tests/files/web/generated/M21-GAP-01949-keymap-item-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01949", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01949", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01950", + "gapId": "keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01950-keymap-item-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01950.py -- tests/files/web/generated/M21-GAP-01950-keymap-item-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01950", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01950", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01951", + "gapId": "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01951-keymap-item-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01951.py -- tests/files/web/generated/M21-GAP-01951-keymap-item-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01951", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01951", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01952", + "gapId": "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01952-keymap-item-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01952.py -- tests/files/web/generated/M21-GAP-01952-keymap-item-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01952", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01952", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01953", + "gapId": "keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01953-keymap-item-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01953.py -- tests/files/web/generated/M21-GAP-01953-keymap-item-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01953", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01953", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01954", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01954-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01954.py -- tests/files/web/generated/M21-GAP-01954-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01954", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01954", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01955", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01955-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01955.py -- tests/files/web/generated/M21-GAP-01955-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01955", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01955", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01956", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01956-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01956.py -- tests/files/web/generated/M21-GAP-01956-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01956", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01956", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01957", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01957-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01957.py -- tests/files/web/generated/M21-GAP-01957-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01957", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01957", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01958", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01958-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01958.py -- tests/files/web/generated/M21-GAP-01958-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01958", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01958", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01959", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01959-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01959.py -- tests/files/web/generated/M21-GAP-01959-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01959", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01959", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01960", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01960-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01960.py -- tests/files/web/generated/M21-GAP-01960-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01960", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01960", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01961", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01961-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01961.py -- tests/files/web/generated/M21-GAP-01961-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01961", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01961", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01962", + "gapId": "keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01962-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01962.py -- tests/files/web/generated/M21-GAP-01962-keymap-item-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01962", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01962", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01963", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01963-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01963.py -- tests/files/web/generated/M21-GAP-01963-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01963", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01963", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01964", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01964-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01964.py -- tests/files/web/generated/M21-GAP-01964-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01964", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01964", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01965", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01965-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01965.py -- tests/files/web/generated/M21-GAP-01965-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01965", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01965", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01966", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01966-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01966.py -- tests/files/web/generated/M21-GAP-01966-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01966", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01966", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01967", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01967-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01967.py -- tests/files/web/generated/M21-GAP-01967-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01967", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01967", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01968", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01968-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01968.py -- tests/files/web/generated/M21-GAP-01968-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01968", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01968", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01969", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01969-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01969.py -- tests/files/web/generated/M21-GAP-01969-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01969", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01969", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01970", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01970-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01970.py -- tests/files/web/generated/M21-GAP-01970-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01970", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01970", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01971", + "gapId": "keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01971-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01971.py -- tests/files/web/generated/M21-GAP-01971-keymap-item-Node-Tool-Tweak-NODE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01971", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01971", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01972", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01972-keymap-item-Object-Mode-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01972.py -- tests/files/web/generated/M21-GAP-01972-keymap-item-Object-Mode-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01972", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01972", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01973", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01973-keymap-item-Object-Mode-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01973.py -- tests/files/web/generated/M21-GAP-01973-keymap-item-Object-Mode-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01973", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01973", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01974", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01974-keymap-item-Object-Mode-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01974.py -- tests/files/web/generated/M21-GAP-01974-keymap-item-Object-Mode-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01974", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01974", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01975", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01975-keymap-item-Object-Mode-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01975.py -- tests/files/web/generated/M21-GAP-01975-keymap-item-Object-Mode-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01975", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01975", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01976", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01976-keymap-item-Object-Mode-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01976.py -- tests/files/web/generated/M21-GAP-01976-keymap-item-Object-Mode-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01976", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01976", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01977", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01977-keymap-item-Object-Mode-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01977.py -- tests/files/web/generated/M21-GAP-01977-keymap-item-Object-Mode-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01977", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01977", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01978", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01978-keymap-item-Object-Mode-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01978.py -- tests/files/web/generated/M21-GAP-01978-keymap-item-Object-Mode-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01978", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01978", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01979", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01979-keymap-item-Object-Mode-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01979.py -- tests/files/web/generated/M21-GAP-01979-keymap-item-Object-Mode-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01979", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01979", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01980", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01980-keymap-item-Object-Mode-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01980.py -- tests/files/web/generated/M21-GAP-01980-keymap-item-Object-Mode-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01980", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01980", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01981", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01981-keymap-item-Object-Mode-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01981.py -- tests/files/web/generated/M21-GAP-01981-keymap-item-Object-Mode-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01981", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01981", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01982", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01982-keymap-item-Object-Mode-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01982.py -- tests/files/web/generated/M21-GAP-01982-keymap-item-Object-Mode-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01982", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01982", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01983", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01983-keymap-item-Object-Mode-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01983.py -- tests/files/web/generated/M21-GAP-01983-keymap-item-Object-Mode-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01983", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01983", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01984", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01984-keymap-item-Object-Mode-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01984.py -- tests/files/web/generated/M21-GAP-01984-keymap-item-Object-Mode-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01984", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01984", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01985", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01985-keymap-item-Object-Mode-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01985.py -- tests/files/web/generated/M21-GAP-01985-keymap-item-Object-Mode-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01985", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01985", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01986", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01986-keymap-item-Object-Mode-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01986.py -- tests/files/web/generated/M21-GAP-01986-keymap-item-Object-Mode-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01986", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01986", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01987", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01987-keymap-item-Object-Mode-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01987.py -- tests/files/web/generated/M21-GAP-01987-keymap-item-Object-Mode-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01987", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01987", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01988", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01988-keymap-item-Object-Mode-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01988.py -- tests/files/web/generated/M21-GAP-01988-keymap-item-Object-Mode-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01988", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01988", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01989", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01989-keymap-item-Object-Mode-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01989.py -- tests/files/web/generated/M21-GAP-01989-keymap-item-Object-Mode-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01989", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01989", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01990", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01990-keymap-item-Object-Mode-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01990.py -- tests/files/web/generated/M21-GAP-01990-keymap-item-Object-Mode-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01990", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01990", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01991", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01991-keymap-item-Object-Mode-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01991.py -- tests/files/web/generated/M21-GAP-01991-keymap-item-Object-Mode-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01991", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01991", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01992", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01992-keymap-item-Object-Mode-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01992.py -- tests/files/web/generated/M21-GAP-01992-keymap-item-Object-Mode-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01992", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01992", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01993", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01993-keymap-item-Object-Mode-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01993.py -- tests/files/web/generated/M21-GAP-01993-keymap-item-Object-Mode-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01993", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01993", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01994", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01994-keymap-item-Object-Mode-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01994.py -- tests/files/web/generated/M21-GAP-01994-keymap-item-Object-Mode-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01994", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01994", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01995", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01995-keymap-item-Object-Mode-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01995.py -- tests/files/web/generated/M21-GAP-01995-keymap-item-Object-Mode-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01995", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01995", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01996", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01996-keymap-item-Object-Mode-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01996.py -- tests/files/web/generated/M21-GAP-01996-keymap-item-Object-Mode-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01996", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01996", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01997", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01997-keymap-item-Object-Mode-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01997.py -- tests/files/web/generated/M21-GAP-01997-keymap-item-Object-Mode-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01997", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01997", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01998", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01998-keymap-item-Object-Mode-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01998.py -- tests/files/web/generated/M21-GAP-01998-keymap-item-Object-Mode-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01998", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01998", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-01999", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-01999-keymap-item-Object-Mode-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-01999.py -- tests/files/web/generated/M21-GAP-01999-keymap-item-Object-Mode-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-01999", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-01999", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02000", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02000-keymap-item-Object-Mode-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02000.py -- tests/files/web/generated/M21-GAP-02000-keymap-item-Object-Mode-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02000", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02000", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02001", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02001-keymap-item-Object-Mode-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02001.py -- tests/files/web/generated/M21-GAP-02001-keymap-item-Object-Mode-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02001", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02002", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02002-keymap-item-Object-Mode-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02002.py -- tests/files/web/generated/M21-GAP-02002-keymap-item-Object-Mode-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02002", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02003", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02003-keymap-item-Object-Mode-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02003.py -- tests/files/web/generated/M21-GAP-02003-keymap-item-Object-Mode-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02003", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02004", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02004-keymap-item-Object-Mode-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02004.py -- tests/files/web/generated/M21-GAP-02004-keymap-item-Object-Mode-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02004", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02005", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02005-keymap-item-Object-Mode-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02005.py -- tests/files/web/generated/M21-GAP-02005-keymap-item-Object-Mode-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02005", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02006", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02006-keymap-item-Object-Mode-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02006.py -- tests/files/web/generated/M21-GAP-02006-keymap-item-Object-Mode-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02006", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02007", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02007-keymap-item-Object-Mode-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02007.py -- tests/files/web/generated/M21-GAP-02007-keymap-item-Object-Mode-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02007", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02008", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02008-keymap-item-Object-Mode-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02008.py -- tests/files/web/generated/M21-GAP-02008-keymap-item-Object-Mode-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02008", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02009", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02009-keymap-item-Object-Mode-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02009.py -- tests/files/web/generated/M21-GAP-02009-keymap-item-Object-Mode-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02009", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02010", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02010-keymap-item-Object-Mode-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02010.py -- tests/files/web/generated/M21-GAP-02010-keymap-item-Object-Mode-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02010", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02011", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02011-keymap-item-Object-Mode-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02011.py -- tests/files/web/generated/M21-GAP-02011-keymap-item-Object-Mode-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02011", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02012", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02012-keymap-item-Object-Mode-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02012.py -- tests/files/web/generated/M21-GAP-02012-keymap-item-Object-Mode-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02012", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02013", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02013-keymap-item-Object-Mode-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02013.py -- tests/files/web/generated/M21-GAP-02013-keymap-item-Object-Mode-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02013", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02014", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02014-keymap-item-Object-Mode-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02014.py -- tests/files/web/generated/M21-GAP-02014-keymap-item-Object-Mode-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02014", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02015", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02015-keymap-item-Object-Mode-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02015.py -- tests/files/web/generated/M21-GAP-02015-keymap-item-Object-Mode-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02015", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02016", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02016-keymap-item-Object-Mode-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02016.py -- tests/files/web/generated/M21-GAP-02016-keymap-item-Object-Mode-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02016", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02017", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02017-keymap-item-Object-Mode-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02017.py -- tests/files/web/generated/M21-GAP-02017-keymap-item-Object-Mode-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02017", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02018", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02018-keymap-item-Object-Mode-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02018.py -- tests/files/web/generated/M21-GAP-02018-keymap-item-Object-Mode-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02018", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02019", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02019-keymap-item-Object-Mode-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02019.py -- tests/files/web/generated/M21-GAP-02019-keymap-item-Object-Mode-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02019", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02020", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02020-keymap-item-Object-Mode-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02020.py -- tests/files/web/generated/M21-GAP-02020-keymap-item-Object-Mode-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02020", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02021", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02021-keymap-item-Object-Mode-EMPTY-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02021.py -- tests/files/web/generated/M21-GAP-02021-keymap-item-Object-Mode-EMPTY-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02021", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02022", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02022-keymap-item-Object-Mode-EMPTY-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02022.py -- tests/files/web/generated/M21-GAP-02022-keymap-item-Object-Mode-EMPTY-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02022", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02023", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02023-keymap-item-Object-Mode-EMPTY-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02023.py -- tests/files/web/generated/M21-GAP-02023-keymap-item-Object-Mode-EMPTY-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02023", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02024", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02024-keymap-item-Object-Mode-EMPTY-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02024.py -- tests/files/web/generated/M21-GAP-02024-keymap-item-Object-Mode-EMPTY-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02024", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02025", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02025-keymap-item-Object-Mode-EMPTY-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02025.py -- tests/files/web/generated/M21-GAP-02025-keymap-item-Object-Mode-EMPTY-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02025", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02026", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02026-keymap-item-Object-Mode-EMPTY-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02026.py -- tests/files/web/generated/M21-GAP-02026-keymap-item-Object-Mode-EMPTY-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02026", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02027", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02027-keymap-item-Object-Mode-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02027.py -- tests/files/web/generated/M21-GAP-02027-keymap-item-Object-Mode-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02027", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02028", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02028-keymap-item-Object-Mode-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02028.py -- tests/files/web/generated/M21-GAP-02028-keymap-item-Object-Mode-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02028", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02029", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02029-keymap-item-Object-Mode-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02029.py -- tests/files/web/generated/M21-GAP-02029-keymap-item-Object-Mode-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02029", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02030", + "gapId": "keymap-item:Object Mode:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02030-keymap-item-Object-Mode-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02030.py -- tests/files/web/generated/M21-GAP-02030-keymap-item-Object-Mode-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02030", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02031", + "gapId": "keymap-item:Object Non-modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02031-keymap-item-Object-Non-modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02031.py -- tests/files/web/generated/M21-GAP-02031-keymap-item-Object-Non-modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02031", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02032", + "gapId": "keymap-item:Object Non-modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02032-keymap-item-Object-Non-modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02032.py -- tests/files/web/generated/M21-GAP-02032-keymap-item-Object-Non-modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02032", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02033", + "gapId": "keymap-item:Object Non-modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02033-keymap-item-Object-Non-modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02033.py -- tests/files/web/generated/M21-GAP-02033-keymap-item-Object-Non-modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02033", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02034", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02034-keymap-item-Outliner-OUTLINER-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02034.py -- tests/files/web/generated/M21-GAP-02034-keymap-item-Outliner-OUTLINER-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02034", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02035", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02035-keymap-item-Outliner-OUTLINER-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02035.py -- tests/files/web/generated/M21-GAP-02035-keymap-item-Outliner-OUTLINER-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02035", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02036", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02036-keymap-item-Outliner-OUTLINER-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02036.py -- tests/files/web/generated/M21-GAP-02036-keymap-item-Outliner-OUTLINER-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02036", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02037", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:100", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02037-keymap-item-Outliner-OUTLINER-WINDOW-100.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02037.py -- tests/files/web/generated/M21-GAP-02037-keymap-item-Outliner-OUTLINER-WINDOW-100.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02037", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02038", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:101", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02038-keymap-item-Outliner-OUTLINER-WINDOW-101.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02038.py -- tests/files/web/generated/M21-GAP-02038-keymap-item-Outliner-OUTLINER-WINDOW-101.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02038", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02039", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:102", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02039-keymap-item-Outliner-OUTLINER-WINDOW-102.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02039.py -- tests/files/web/generated/M21-GAP-02039-keymap-item-Outliner-OUTLINER-WINDOW-102.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02039", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02040", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02040-keymap-item-Outliner-OUTLINER-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02040.py -- tests/files/web/generated/M21-GAP-02040-keymap-item-Outliner-OUTLINER-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02040", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02041", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02041-keymap-item-Outliner-OUTLINER-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02041.py -- tests/files/web/generated/M21-GAP-02041-keymap-item-Outliner-OUTLINER-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02041", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02042", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02042-keymap-item-Outliner-OUTLINER-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02042.py -- tests/files/web/generated/M21-GAP-02042-keymap-item-Outliner-OUTLINER-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02042", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02043", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02043-keymap-item-Outliner-OUTLINER-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02043.py -- tests/files/web/generated/M21-GAP-02043-keymap-item-Outliner-OUTLINER-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02043", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02044", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02044-keymap-item-Outliner-OUTLINER-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02044.py -- tests/files/web/generated/M21-GAP-02044-keymap-item-Outliner-OUTLINER-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02044", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02045", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02045-keymap-item-Outliner-OUTLINER-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02045.py -- tests/files/web/generated/M21-GAP-02045-keymap-item-Outliner-OUTLINER-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02045", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02046", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02046-keymap-item-Outliner-OUTLINER-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02046.py -- tests/files/web/generated/M21-GAP-02046-keymap-item-Outliner-OUTLINER-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02046", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02047", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02047-keymap-item-Outliner-OUTLINER-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02047.py -- tests/files/web/generated/M21-GAP-02047-keymap-item-Outliner-OUTLINER-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02047", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02048", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02048-keymap-item-Outliner-OUTLINER-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02048.py -- tests/files/web/generated/M21-GAP-02048-keymap-item-Outliner-OUTLINER-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02048", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02049", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02049-keymap-item-Outliner-OUTLINER-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02049.py -- tests/files/web/generated/M21-GAP-02049-keymap-item-Outliner-OUTLINER-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02049", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02050", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02050-keymap-item-Outliner-OUTLINER-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02050.py -- tests/files/web/generated/M21-GAP-02050-keymap-item-Outliner-OUTLINER-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02050", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02051", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02051-keymap-item-Outliner-OUTLINER-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02051.py -- tests/files/web/generated/M21-GAP-02051-keymap-item-Outliner-OUTLINER-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02051", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02052", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02052-keymap-item-Outliner-OUTLINER-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02052.py -- tests/files/web/generated/M21-GAP-02052-keymap-item-Outliner-OUTLINER-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02052", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02053", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02053-keymap-item-Outliner-OUTLINER-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02053.py -- tests/files/web/generated/M21-GAP-02053-keymap-item-Outliner-OUTLINER-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02053", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02054", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02054-keymap-item-Outliner-OUTLINER-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02054.py -- tests/files/web/generated/M21-GAP-02054-keymap-item-Outliner-OUTLINER-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02054", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02055", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02055-keymap-item-Outliner-OUTLINER-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02055.py -- tests/files/web/generated/M21-GAP-02055-keymap-item-Outliner-OUTLINER-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02055", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02056", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02056-keymap-item-Outliner-OUTLINER-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02056.py -- tests/files/web/generated/M21-GAP-02056-keymap-item-Outliner-OUTLINER-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02056", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02057", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02057-keymap-item-Outliner-OUTLINER-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02057.py -- tests/files/web/generated/M21-GAP-02057-keymap-item-Outliner-OUTLINER-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02057", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02058", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02058-keymap-item-Outliner-OUTLINER-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02058.py -- tests/files/web/generated/M21-GAP-02058-keymap-item-Outliner-OUTLINER-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02058", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02059", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02059-keymap-item-Outliner-OUTLINER-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02059.py -- tests/files/web/generated/M21-GAP-02059-keymap-item-Outliner-OUTLINER-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02059", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02060", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02060-keymap-item-Outliner-OUTLINER-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02060.py -- tests/files/web/generated/M21-GAP-02060-keymap-item-Outliner-OUTLINER-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02060", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02061", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02061-keymap-item-Outliner-OUTLINER-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02061.py -- tests/files/web/generated/M21-GAP-02061-keymap-item-Outliner-OUTLINER-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02061", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02062", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02062-keymap-item-Outliner-OUTLINER-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02062.py -- tests/files/web/generated/M21-GAP-02062-keymap-item-Outliner-OUTLINER-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02062", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02063", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02063-keymap-item-Outliner-OUTLINER-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02063.py -- tests/files/web/generated/M21-GAP-02063-keymap-item-Outliner-OUTLINER-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02063", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02064", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02064-keymap-item-Outliner-OUTLINER-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02064.py -- tests/files/web/generated/M21-GAP-02064-keymap-item-Outliner-OUTLINER-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02064", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02065", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02065-keymap-item-Outliner-OUTLINER-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02065.py -- tests/files/web/generated/M21-GAP-02065-keymap-item-Outliner-OUTLINER-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02065", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02066", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02066-keymap-item-Outliner-OUTLINER-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02066.py -- tests/files/web/generated/M21-GAP-02066-keymap-item-Outliner-OUTLINER-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02066", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02067", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02067-keymap-item-Outliner-OUTLINER-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02067.py -- tests/files/web/generated/M21-GAP-02067-keymap-item-Outliner-OUTLINER-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02067", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02068", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02068-keymap-item-Outliner-OUTLINER-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02068.py -- tests/files/web/generated/M21-GAP-02068-keymap-item-Outliner-OUTLINER-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02068", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02069", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02069-keymap-item-Outliner-OUTLINER-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02069.py -- tests/files/web/generated/M21-GAP-02069-keymap-item-Outliner-OUTLINER-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02069", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02070", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02070-keymap-item-Outliner-OUTLINER-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02070.py -- tests/files/web/generated/M21-GAP-02070-keymap-item-Outliner-OUTLINER-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02070", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02071", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02071-keymap-item-Outliner-OUTLINER-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02071.py -- tests/files/web/generated/M21-GAP-02071-keymap-item-Outliner-OUTLINER-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02071", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02072", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02072-keymap-item-Outliner-OUTLINER-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02072.py -- tests/files/web/generated/M21-GAP-02072-keymap-item-Outliner-OUTLINER-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02072", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02073", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02073-keymap-item-Outliner-OUTLINER-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02073.py -- tests/files/web/generated/M21-GAP-02073-keymap-item-Outliner-OUTLINER-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02073", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02074", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02074-keymap-item-Outliner-OUTLINER-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02074.py -- tests/files/web/generated/M21-GAP-02074-keymap-item-Outliner-OUTLINER-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02074", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02075", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02075-keymap-item-Outliner-OUTLINER-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02075.py -- tests/files/web/generated/M21-GAP-02075-keymap-item-Outliner-OUTLINER-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02075", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02076", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02076-keymap-item-Outliner-OUTLINER-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02076.py -- tests/files/web/generated/M21-GAP-02076-keymap-item-Outliner-OUTLINER-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02076", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02077", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02077-keymap-item-Outliner-OUTLINER-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02077.py -- tests/files/web/generated/M21-GAP-02077-keymap-item-Outliner-OUTLINER-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02077", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02078", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02078-keymap-item-Outliner-OUTLINER-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02078.py -- tests/files/web/generated/M21-GAP-02078-keymap-item-Outliner-OUTLINER-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02078", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02079", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02079-keymap-item-Outliner-OUTLINER-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02079.py -- tests/files/web/generated/M21-GAP-02079-keymap-item-Outliner-OUTLINER-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02079", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02080", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02080-keymap-item-Outliner-OUTLINER-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02080.py -- tests/files/web/generated/M21-GAP-02080-keymap-item-Outliner-OUTLINER-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02080", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02081", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02081-keymap-item-Outliner-OUTLINER-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02081.py -- tests/files/web/generated/M21-GAP-02081-keymap-item-Outliner-OUTLINER-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02081", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02082", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02082-keymap-item-Outliner-OUTLINER-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02082.py -- tests/files/web/generated/M21-GAP-02082-keymap-item-Outliner-OUTLINER-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02082", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02083", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02083-keymap-item-Outliner-OUTLINER-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02083.py -- tests/files/web/generated/M21-GAP-02083-keymap-item-Outliner-OUTLINER-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02083", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02084", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02084-keymap-item-Outliner-OUTLINER-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02084.py -- tests/files/web/generated/M21-GAP-02084-keymap-item-Outliner-OUTLINER-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02084", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02085", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02085-keymap-item-Outliner-OUTLINER-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02085.py -- tests/files/web/generated/M21-GAP-02085-keymap-item-Outliner-OUTLINER-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02085", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02086", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02086-keymap-item-Outliner-OUTLINER-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02086.py -- tests/files/web/generated/M21-GAP-02086-keymap-item-Outliner-OUTLINER-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02086", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02087", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02087-keymap-item-Outliner-OUTLINER-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02087.py -- tests/files/web/generated/M21-GAP-02087-keymap-item-Outliner-OUTLINER-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02087", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02088", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02088-keymap-item-Outliner-OUTLINER-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02088.py -- tests/files/web/generated/M21-GAP-02088-keymap-item-Outliner-OUTLINER-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02088", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02089", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02089-keymap-item-Outliner-OUTLINER-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02089.py -- tests/files/web/generated/M21-GAP-02089-keymap-item-Outliner-OUTLINER-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02089", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02090", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02090-keymap-item-Outliner-OUTLINER-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02090.py -- tests/files/web/generated/M21-GAP-02090-keymap-item-Outliner-OUTLINER-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02090", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02091", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02091-keymap-item-Outliner-OUTLINER-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02091.py -- tests/files/web/generated/M21-GAP-02091-keymap-item-Outliner-OUTLINER-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02091", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02092", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02092-keymap-item-Outliner-OUTLINER-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02092.py -- tests/files/web/generated/M21-GAP-02092-keymap-item-Outliner-OUTLINER-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02092", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02093", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02093-keymap-item-Outliner-OUTLINER-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02093.py -- tests/files/web/generated/M21-GAP-02093-keymap-item-Outliner-OUTLINER-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02093", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02094", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02094-keymap-item-Outliner-OUTLINER-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02094.py -- tests/files/web/generated/M21-GAP-02094-keymap-item-Outliner-OUTLINER-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02094", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02095", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02095-keymap-item-Outliner-OUTLINER-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02095.py -- tests/files/web/generated/M21-GAP-02095-keymap-item-Outliner-OUTLINER-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02095", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02096", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02096-keymap-item-Outliner-OUTLINER-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02096.py -- tests/files/web/generated/M21-GAP-02096-keymap-item-Outliner-OUTLINER-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02096", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02097", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02097-keymap-item-Outliner-OUTLINER-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02097.py -- tests/files/web/generated/M21-GAP-02097-keymap-item-Outliner-OUTLINER-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02097", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02098", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02098-keymap-item-Outliner-OUTLINER-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02098.py -- tests/files/web/generated/M21-GAP-02098-keymap-item-Outliner-OUTLINER-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02098", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02099", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02099-keymap-item-Outliner-OUTLINER-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02099.py -- tests/files/web/generated/M21-GAP-02099-keymap-item-Outliner-OUTLINER-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02099", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02100", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02100-keymap-item-Outliner-OUTLINER-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02100.py -- tests/files/web/generated/M21-GAP-02100-keymap-item-Outliner-OUTLINER-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02100", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02101", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02101-keymap-item-Outliner-OUTLINER-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02101.py -- tests/files/web/generated/M21-GAP-02101-keymap-item-Outliner-OUTLINER-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02101", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02102", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02102-keymap-item-Outliner-OUTLINER-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02102.py -- tests/files/web/generated/M21-GAP-02102-keymap-item-Outliner-OUTLINER-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02102", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02103", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02103-keymap-item-Outliner-OUTLINER-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02103.py -- tests/files/web/generated/M21-GAP-02103-keymap-item-Outliner-OUTLINER-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02103", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02104", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02104-keymap-item-Outliner-OUTLINER-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02104.py -- tests/files/web/generated/M21-GAP-02104-keymap-item-Outliner-OUTLINER-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02104", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02105", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02105-keymap-item-Outliner-OUTLINER-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02105.py -- tests/files/web/generated/M21-GAP-02105-keymap-item-Outliner-OUTLINER-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02105", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02106", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02106-keymap-item-Outliner-OUTLINER-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02106.py -- tests/files/web/generated/M21-GAP-02106-keymap-item-Outliner-OUTLINER-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02106", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02107", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02107-keymap-item-Outliner-OUTLINER-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02107.py -- tests/files/web/generated/M21-GAP-02107-keymap-item-Outliner-OUTLINER-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02107", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02108", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02108-keymap-item-Outliner-OUTLINER-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02108.py -- tests/files/web/generated/M21-GAP-02108-keymap-item-Outliner-OUTLINER-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02108", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02109", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02109-keymap-item-Outliner-OUTLINER-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02109.py -- tests/files/web/generated/M21-GAP-02109-keymap-item-Outliner-OUTLINER-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02109", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02110", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02110-keymap-item-Outliner-OUTLINER-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02110.py -- tests/files/web/generated/M21-GAP-02110-keymap-item-Outliner-OUTLINER-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02110", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02111", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02111-keymap-item-Outliner-OUTLINER-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02111.py -- tests/files/web/generated/M21-GAP-02111-keymap-item-Outliner-OUTLINER-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02111", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02112", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02112-keymap-item-Outliner-OUTLINER-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02112.py -- tests/files/web/generated/M21-GAP-02112-keymap-item-Outliner-OUTLINER-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02112", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02113", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02113-keymap-item-Outliner-OUTLINER-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02113.py -- tests/files/web/generated/M21-GAP-02113-keymap-item-Outliner-OUTLINER-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02113", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02114", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02114-keymap-item-Outliner-OUTLINER-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02114.py -- tests/files/web/generated/M21-GAP-02114-keymap-item-Outliner-OUTLINER-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02114", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02115", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02115-keymap-item-Outliner-OUTLINER-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02115.py -- tests/files/web/generated/M21-GAP-02115-keymap-item-Outliner-OUTLINER-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02115", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02116", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02116-keymap-item-Outliner-OUTLINER-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02116.py -- tests/files/web/generated/M21-GAP-02116-keymap-item-Outliner-OUTLINER-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02116", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02117", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02117-keymap-item-Outliner-OUTLINER-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02117.py -- tests/files/web/generated/M21-GAP-02117-keymap-item-Outliner-OUTLINER-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02117", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02118", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02118-keymap-item-Outliner-OUTLINER-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02118.py -- tests/files/web/generated/M21-GAP-02118-keymap-item-Outliner-OUTLINER-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02118", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02119", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02119-keymap-item-Outliner-OUTLINER-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02119.py -- tests/files/web/generated/M21-GAP-02119-keymap-item-Outliner-OUTLINER-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02119", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02120", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02120-keymap-item-Outliner-OUTLINER-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02120.py -- tests/files/web/generated/M21-GAP-02120-keymap-item-Outliner-OUTLINER-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02120", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02121", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02121-keymap-item-Outliner-OUTLINER-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02121.py -- tests/files/web/generated/M21-GAP-02121-keymap-item-Outliner-OUTLINER-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02121", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02122", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02122-keymap-item-Outliner-OUTLINER-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02122.py -- tests/files/web/generated/M21-GAP-02122-keymap-item-Outliner-OUTLINER-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02122", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02123", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02123-keymap-item-Outliner-OUTLINER-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02123.py -- tests/files/web/generated/M21-GAP-02123-keymap-item-Outliner-OUTLINER-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02123", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02124", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:88", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02124-keymap-item-Outliner-OUTLINER-WINDOW-88.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02124.py -- tests/files/web/generated/M21-GAP-02124-keymap-item-Outliner-OUTLINER-WINDOW-88.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02124", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02125", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:89", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02125-keymap-item-Outliner-OUTLINER-WINDOW-89.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02125.py -- tests/files/web/generated/M21-GAP-02125-keymap-item-Outliner-OUTLINER-WINDOW-89.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02125", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02126", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02126-keymap-item-Outliner-OUTLINER-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02126.py -- tests/files/web/generated/M21-GAP-02126-keymap-item-Outliner-OUTLINER-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02126", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02127", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:90", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02127-keymap-item-Outliner-OUTLINER-WINDOW-90.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02127.py -- tests/files/web/generated/M21-GAP-02127-keymap-item-Outliner-OUTLINER-WINDOW-90.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02127", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02128", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:91", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02128-keymap-item-Outliner-OUTLINER-WINDOW-91.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02128.py -- tests/files/web/generated/M21-GAP-02128-keymap-item-Outliner-OUTLINER-WINDOW-91.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02128", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02129", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:92", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02129-keymap-item-Outliner-OUTLINER-WINDOW-92.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02129.py -- tests/files/web/generated/M21-GAP-02129-keymap-item-Outliner-OUTLINER-WINDOW-92.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02129", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02130", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:93", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02130-keymap-item-Outliner-OUTLINER-WINDOW-93.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02130.py -- tests/files/web/generated/M21-GAP-02130-keymap-item-Outliner-OUTLINER-WINDOW-93.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02130", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02131", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:94", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02131-keymap-item-Outliner-OUTLINER-WINDOW-94.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02131.py -- tests/files/web/generated/M21-GAP-02131-keymap-item-Outliner-OUTLINER-WINDOW-94.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02131", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02132", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:95", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02132-keymap-item-Outliner-OUTLINER-WINDOW-95.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02132.py -- tests/files/web/generated/M21-GAP-02132-keymap-item-Outliner-OUTLINER-WINDOW-95.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02132", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02133", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:96", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02133-keymap-item-Outliner-OUTLINER-WINDOW-96.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02133.py -- tests/files/web/generated/M21-GAP-02133-keymap-item-Outliner-OUTLINER-WINDOW-96.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02133", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02134", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:97", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02134-keymap-item-Outliner-OUTLINER-WINDOW-97.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02134.py -- tests/files/web/generated/M21-GAP-02134-keymap-item-Outliner-OUTLINER-WINDOW-97.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02134", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02135", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:98", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02135-keymap-item-Outliner-OUTLINER-WINDOW-98.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02135.py -- tests/files/web/generated/M21-GAP-02135-keymap-item-Outliner-OUTLINER-WINDOW-98.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02135", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02136", + "gapId": "keymap-item:Outliner:OUTLINER:WINDOW:99", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02136-keymap-item-Outliner-OUTLINER-WINDOW-99.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02136.py -- tests/files/web/generated/M21-GAP-02136-keymap-item-Outliner-OUTLINER-WINDOW-99.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02136", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02137", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02137-keymap-item-Paint-Curve-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02137.py -- tests/files/web/generated/M21-GAP-02137-keymap-item-Paint-Curve-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02137", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02138", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02138-keymap-item-Paint-Curve-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02138.py -- tests/files/web/generated/M21-GAP-02138-keymap-item-Paint-Curve-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02138", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02139", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02139-keymap-item-Paint-Curve-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02139.py -- tests/files/web/generated/M21-GAP-02139-keymap-item-Paint-Curve-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02139", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02140", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02140-keymap-item-Paint-Curve-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02140.py -- tests/files/web/generated/M21-GAP-02140-keymap-item-Paint-Curve-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02140", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02141", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02141-keymap-item-Paint-Curve-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02141.py -- tests/files/web/generated/M21-GAP-02141-keymap-item-Paint-Curve-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02141", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02142", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02142-keymap-item-Paint-Curve-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02142.py -- tests/files/web/generated/M21-GAP-02142-keymap-item-Paint-Curve-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02142", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02143", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02143-keymap-item-Paint-Curve-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02143.py -- tests/files/web/generated/M21-GAP-02143-keymap-item-Paint-Curve-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02143", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02144", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02144-keymap-item-Paint-Curve-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02144.py -- tests/files/web/generated/M21-GAP-02144-keymap-item-Paint-Curve-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02144", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02145", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02145-keymap-item-Paint-Curve-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02145.py -- tests/files/web/generated/M21-GAP-02145-keymap-item-Paint-Curve-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02145", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02146", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02146-keymap-item-Paint-Curve-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02146.py -- tests/files/web/generated/M21-GAP-02146-keymap-item-Paint-Curve-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02146", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02147", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02147-keymap-item-Paint-Curve-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02147.py -- tests/files/web/generated/M21-GAP-02147-keymap-item-Paint-Curve-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02147", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02148", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02148-keymap-item-Paint-Curve-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02148.py -- tests/files/web/generated/M21-GAP-02148-keymap-item-Paint-Curve-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02148", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02149", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02149-keymap-item-Paint-Curve-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02149.py -- tests/files/web/generated/M21-GAP-02149-keymap-item-Paint-Curve-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02149", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02150", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02150-keymap-item-Paint-Curve-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02150.py -- tests/files/web/generated/M21-GAP-02150-keymap-item-Paint-Curve-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02150", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02151", + "gapId": "keymap-item:Paint Curve:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02151-keymap-item-Paint-Curve-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02151.py -- tests/files/web/generated/M21-GAP-02151-keymap-item-Paint-Curve-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02151", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02152", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02152-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02152.py -- tests/files/web/generated/M21-GAP-02152-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02152", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02153", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02153-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02153.py -- tests/files/web/generated/M21-GAP-02153-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02153", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02154", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02154-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02154.py -- tests/files/web/generated/M21-GAP-02154-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02154", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02155", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02155-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02155.py -- tests/files/web/generated/M21-GAP-02155-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02155", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02156", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02156-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02156.py -- tests/files/web/generated/M21-GAP-02156-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02156", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02157", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02157-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02157.py -- tests/files/web/generated/M21-GAP-02157-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02157", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02158", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02158-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02158.py -- tests/files/web/generated/M21-GAP-02158-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02158", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02159", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02159-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02159.py -- tests/files/web/generated/M21-GAP-02159-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02159", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02160", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02160-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02160.py -- tests/files/web/generated/M21-GAP-02160-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02160", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02161", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02161-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02161.py -- tests/files/web/generated/M21-GAP-02161-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02161", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02162", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02162-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02162.py -- tests/files/web/generated/M21-GAP-02162-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02162", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02163", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02163-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02163.py -- tests/files/web/generated/M21-GAP-02163-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02163", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02164", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02164-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02164.py -- tests/files/web/generated/M21-GAP-02164-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02164", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02165", + "gapId": "keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02165-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02165.py -- tests/files/web/generated/M21-GAP-02165-keymap-item-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02165", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02166", + "gapId": "keymap-item:Paint Stroke Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02166-keymap-item-Paint-Stroke-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02166.py -- tests/files/web/generated/M21-GAP-02166-keymap-item-Paint-Stroke-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02166", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02167", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02167-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02167.py -- tests/files/web/generated/M21-GAP-02167-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02167", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02168", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02168-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02168.py -- tests/files/web/generated/M21-GAP-02168-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02168", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02169", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02169-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02169.py -- tests/files/web/generated/M21-GAP-02169-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02169", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02170", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02170-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02170.py -- tests/files/web/generated/M21-GAP-02170-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02170", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02171", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02171-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02171.py -- tests/files/web/generated/M21-GAP-02171-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02171", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02172", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02172-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02172.py -- tests/files/web/generated/M21-GAP-02172-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02172", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02173", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02173-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02173.py -- tests/files/web/generated/M21-GAP-02173-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02173", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02174", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02174-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02174.py -- tests/files/web/generated/M21-GAP-02174-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02174", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02175", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02175-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02175.py -- tests/files/web/generated/M21-GAP-02175-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02175", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02176", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02176-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02176.py -- tests/files/web/generated/M21-GAP-02176-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02176", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02177", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02177-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02177.py -- tests/files/web/generated/M21-GAP-02177-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02177", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02178", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02178-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02178.py -- tests/files/web/generated/M21-GAP-02178-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02178", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02179", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02179-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02179.py -- tests/files/web/generated/M21-GAP-02179-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02179", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02180", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02180-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02180.py -- tests/files/web/generated/M21-GAP-02180-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02180", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02181", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02181-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02181.py -- tests/files/web/generated/M21-GAP-02181-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02181", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02182", + "gapId": "keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02182-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02182.py -- tests/files/web/generated/M21-GAP-02182-keymap-item-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02182", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02183", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02183-keymap-item-Particle-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02183.py -- tests/files/web/generated/M21-GAP-02183-keymap-item-Particle-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02183", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02184", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02184-keymap-item-Particle-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02184.py -- tests/files/web/generated/M21-GAP-02184-keymap-item-Particle-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02184", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02185", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02185-keymap-item-Particle-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02185.py -- tests/files/web/generated/M21-GAP-02185-keymap-item-Particle-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02185", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02186", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02186-keymap-item-Particle-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02186.py -- tests/files/web/generated/M21-GAP-02186-keymap-item-Particle-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02186", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02187", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02187-keymap-item-Particle-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02187.py -- tests/files/web/generated/M21-GAP-02187-keymap-item-Particle-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02187", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02188", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02188-keymap-item-Particle-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02188.py -- tests/files/web/generated/M21-GAP-02188-keymap-item-Particle-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02188", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02189", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02189-keymap-item-Particle-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02189.py -- tests/files/web/generated/M21-GAP-02189-keymap-item-Particle-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02189", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02190", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02190-keymap-item-Particle-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02190.py -- tests/files/web/generated/M21-GAP-02190-keymap-item-Particle-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02190", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02191", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02191-keymap-item-Particle-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02191.py -- tests/files/web/generated/M21-GAP-02191-keymap-item-Particle-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02191", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02192", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02192-keymap-item-Particle-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02192.py -- tests/files/web/generated/M21-GAP-02192-keymap-item-Particle-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02192", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02193", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02193-keymap-item-Particle-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02193.py -- tests/files/web/generated/M21-GAP-02193-keymap-item-Particle-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02193", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02194", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02194-keymap-item-Particle-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02194.py -- tests/files/web/generated/M21-GAP-02194-keymap-item-Particle-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02194", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02195", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02195-keymap-item-Particle-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02195.py -- tests/files/web/generated/M21-GAP-02195-keymap-item-Particle-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02195", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02196", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02196-keymap-item-Particle-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02196.py -- tests/files/web/generated/M21-GAP-02196-keymap-item-Particle-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02196", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02197", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02197-keymap-item-Particle-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02197.py -- tests/files/web/generated/M21-GAP-02197-keymap-item-Particle-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02197", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02198", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02198-keymap-item-Particle-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02198.py -- tests/files/web/generated/M21-GAP-02198-keymap-item-Particle-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02198", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02199", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02199-keymap-item-Particle-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02199.py -- tests/files/web/generated/M21-GAP-02199-keymap-item-Particle-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02199", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02200", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02200-keymap-item-Particle-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02200.py -- tests/files/web/generated/M21-GAP-02200-keymap-item-Particle-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02200", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02201", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02201-keymap-item-Particle-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02201.py -- tests/files/web/generated/M21-GAP-02201-keymap-item-Particle-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02201", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02202", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02202-keymap-item-Particle-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02202.py -- tests/files/web/generated/M21-GAP-02202-keymap-item-Particle-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02202", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02203", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02203-keymap-item-Particle-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02203.py -- tests/files/web/generated/M21-GAP-02203-keymap-item-Particle-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02203", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02204", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02204-keymap-item-Particle-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02204.py -- tests/files/web/generated/M21-GAP-02204-keymap-item-Particle-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02204", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02205", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02205-keymap-item-Particle-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02205.py -- tests/files/web/generated/M21-GAP-02205-keymap-item-Particle-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02205", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02206", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02206-keymap-item-Particle-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02206.py -- tests/files/web/generated/M21-GAP-02206-keymap-item-Particle-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02206", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02207", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02207-keymap-item-Particle-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02207.py -- tests/files/web/generated/M21-GAP-02207-keymap-item-Particle-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02207", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02208", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02208-keymap-item-Particle-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02208.py -- tests/files/web/generated/M21-GAP-02208-keymap-item-Particle-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02208", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02209", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02209-keymap-item-Particle-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02209.py -- tests/files/web/generated/M21-GAP-02209-keymap-item-Particle-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02209", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02210", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02210-keymap-item-Particle-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02210.py -- tests/files/web/generated/M21-GAP-02210-keymap-item-Particle-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02210", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02211", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02211-keymap-item-Particle-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02211.py -- tests/files/web/generated/M21-GAP-02211-keymap-item-Particle-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02211", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02212", + "gapId": "keymap-item:Particle:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02212-keymap-item-Particle-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02212.py -- tests/files/web/generated/M21-GAP-02212-keymap-item-Particle-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02212", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02213", + "gapId": "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02213-keymap-item-Pen-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02213.py -- tests/files/web/generated/M21-GAP-02213-keymap-item-Pen-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02213", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02214", + "gapId": "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02214-keymap-item-Pen-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02214.py -- tests/files/web/generated/M21-GAP-02214-keymap-item-Pen-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02214", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02215", + "gapId": "keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02215-keymap-item-Pen-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02215.py -- tests/files/web/generated/M21-GAP-02215-keymap-item-Pen-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02215", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02216", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02216-keymap-item-Point-Cloud-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02216.py -- tests/files/web/generated/M21-GAP-02216-keymap-item-Point-Cloud-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02216", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02217", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02217-keymap-item-Point-Cloud-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02217.py -- tests/files/web/generated/M21-GAP-02217-keymap-item-Point-Cloud-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02217", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02218", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02218-keymap-item-Point-Cloud-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02218.py -- tests/files/web/generated/M21-GAP-02218-keymap-item-Point-Cloud-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02218", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02219", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02219-keymap-item-Point-Cloud-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02219.py -- tests/files/web/generated/M21-GAP-02219-keymap-item-Point-Cloud-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02219", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02220", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02220-keymap-item-Point-Cloud-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02220.py -- tests/files/web/generated/M21-GAP-02220-keymap-item-Point-Cloud-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02220", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02221", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02221-keymap-item-Point-Cloud-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02221.py -- tests/files/web/generated/M21-GAP-02221-keymap-item-Point-Cloud-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02221", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02222", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02222-keymap-item-Point-Cloud-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02222.py -- tests/files/web/generated/M21-GAP-02222-keymap-item-Point-Cloud-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02222", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02223", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02223-keymap-item-Point-Cloud-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02223.py -- tests/files/web/generated/M21-GAP-02223-keymap-item-Point-Cloud-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02223", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02224", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02224-keymap-item-Point-Cloud-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02224.py -- tests/files/web/generated/M21-GAP-02224-keymap-item-Point-Cloud-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02224", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02225", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02225-keymap-item-Point-Cloud-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02225.py -- tests/files/web/generated/M21-GAP-02225-keymap-item-Point-Cloud-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02225", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02226", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02226-keymap-item-Point-Cloud-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02226.py -- tests/files/web/generated/M21-GAP-02226-keymap-item-Point-Cloud-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02226", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02227", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02227-keymap-item-Point-Cloud-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02227.py -- tests/files/web/generated/M21-GAP-02227-keymap-item-Point-Cloud-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02227", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02228", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02228-keymap-item-Point-Cloud-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02228.py -- tests/files/web/generated/M21-GAP-02228-keymap-item-Point-Cloud-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02228", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02229", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02229-keymap-item-Point-Cloud-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02229.py -- tests/files/web/generated/M21-GAP-02229-keymap-item-Point-Cloud-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02229", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02230", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02230-keymap-item-Point-Cloud-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02230.py -- tests/files/web/generated/M21-GAP-02230-keymap-item-Point-Cloud-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02230", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02231", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02231-keymap-item-Point-Cloud-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02231.py -- tests/files/web/generated/M21-GAP-02231-keymap-item-Point-Cloud-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02231", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02232", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02232-keymap-item-Point-Cloud-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02232.py -- tests/files/web/generated/M21-GAP-02232-keymap-item-Point-Cloud-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02232", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02233", + "gapId": "keymap-item:Point Cloud:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02233-keymap-item-Point-Cloud-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02233.py -- tests/files/web/generated/M21-GAP-02233-keymap-item-Point-Cloud-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02233", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02234", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02234-keymap-item-Pose-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02234.py -- tests/files/web/generated/M21-GAP-02234-keymap-item-Pose-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02234", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02235", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02235-keymap-item-Pose-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02235.py -- tests/files/web/generated/M21-GAP-02235-keymap-item-Pose-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02235", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02236", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02236-keymap-item-Pose-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02236.py -- tests/files/web/generated/M21-GAP-02236-keymap-item-Pose-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02236", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02237", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02237-keymap-item-Pose-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02237.py -- tests/files/web/generated/M21-GAP-02237-keymap-item-Pose-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02237", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02238", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02238-keymap-item-Pose-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02238.py -- tests/files/web/generated/M21-GAP-02238-keymap-item-Pose-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02238", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02239", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02239-keymap-item-Pose-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02239.py -- tests/files/web/generated/M21-GAP-02239-keymap-item-Pose-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02239", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02240", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02240-keymap-item-Pose-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02240.py -- tests/files/web/generated/M21-GAP-02240-keymap-item-Pose-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02240", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02241", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02241-keymap-item-Pose-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02241.py -- tests/files/web/generated/M21-GAP-02241-keymap-item-Pose-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02241", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02242", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02242-keymap-item-Pose-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02242.py -- tests/files/web/generated/M21-GAP-02242-keymap-item-Pose-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02242", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02243", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02243-keymap-item-Pose-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02243.py -- tests/files/web/generated/M21-GAP-02243-keymap-item-Pose-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02243", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02244", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02244-keymap-item-Pose-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02244.py -- tests/files/web/generated/M21-GAP-02244-keymap-item-Pose-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02244", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02245", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02245-keymap-item-Pose-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02245.py -- tests/files/web/generated/M21-GAP-02245-keymap-item-Pose-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02245", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02246", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02246-keymap-item-Pose-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02246.py -- tests/files/web/generated/M21-GAP-02246-keymap-item-Pose-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02246", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02247", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02247-keymap-item-Pose-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02247.py -- tests/files/web/generated/M21-GAP-02247-keymap-item-Pose-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02247", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02248", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02248-keymap-item-Pose-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02248.py -- tests/files/web/generated/M21-GAP-02248-keymap-item-Pose-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02248", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02249", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02249-keymap-item-Pose-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02249.py -- tests/files/web/generated/M21-GAP-02249-keymap-item-Pose-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02249", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02250", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02250-keymap-item-Pose-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02250.py -- tests/files/web/generated/M21-GAP-02250-keymap-item-Pose-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02250", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02251", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02251-keymap-item-Pose-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02251.py -- tests/files/web/generated/M21-GAP-02251-keymap-item-Pose-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02251", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02252", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02252-keymap-item-Pose-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02252.py -- tests/files/web/generated/M21-GAP-02252-keymap-item-Pose-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02252", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02253", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02253-keymap-item-Pose-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02253.py -- tests/files/web/generated/M21-GAP-02253-keymap-item-Pose-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02253", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02254", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02254-keymap-item-Pose-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02254.py -- tests/files/web/generated/M21-GAP-02254-keymap-item-Pose-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02254", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02255", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02255-keymap-item-Pose-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02255.py -- tests/files/web/generated/M21-GAP-02255-keymap-item-Pose-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02255", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02256", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02256-keymap-item-Pose-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02256.py -- tests/files/web/generated/M21-GAP-02256-keymap-item-Pose-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02256", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02257", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02257-keymap-item-Pose-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02257.py -- tests/files/web/generated/M21-GAP-02257-keymap-item-Pose-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02257", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02258", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02258-keymap-item-Pose-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02258.py -- tests/files/web/generated/M21-GAP-02258-keymap-item-Pose-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02258", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02259", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02259-keymap-item-Pose-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02259.py -- tests/files/web/generated/M21-GAP-02259-keymap-item-Pose-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02259", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02260", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02260-keymap-item-Pose-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02260.py -- tests/files/web/generated/M21-GAP-02260-keymap-item-Pose-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02260", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02261", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02261-keymap-item-Pose-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02261.py -- tests/files/web/generated/M21-GAP-02261-keymap-item-Pose-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02261", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02262", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02262-keymap-item-Pose-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02262.py -- tests/files/web/generated/M21-GAP-02262-keymap-item-Pose-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02262", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02263", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02263-keymap-item-Pose-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02263.py -- tests/files/web/generated/M21-GAP-02263-keymap-item-Pose-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02263", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02264", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02264-keymap-item-Pose-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02264.py -- tests/files/web/generated/M21-GAP-02264-keymap-item-Pose-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02264", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02265", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02265-keymap-item-Pose-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02265.py -- tests/files/web/generated/M21-GAP-02265-keymap-item-Pose-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02265", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02266", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02266-keymap-item-Pose-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02266.py -- tests/files/web/generated/M21-GAP-02266-keymap-item-Pose-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02266", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02267", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02267-keymap-item-Pose-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02267.py -- tests/files/web/generated/M21-GAP-02267-keymap-item-Pose-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02267", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02268", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02268-keymap-item-Pose-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02268.py -- tests/files/web/generated/M21-GAP-02268-keymap-item-Pose-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02268", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02269", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02269-keymap-item-Pose-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02269.py -- tests/files/web/generated/M21-GAP-02269-keymap-item-Pose-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02269", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02270", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02270-keymap-item-Pose-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02270.py -- tests/files/web/generated/M21-GAP-02270-keymap-item-Pose-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02270", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02271", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02271-keymap-item-Pose-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02271.py -- tests/files/web/generated/M21-GAP-02271-keymap-item-Pose-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02271", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02272", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02272-keymap-item-Pose-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02272.py -- tests/files/web/generated/M21-GAP-02272-keymap-item-Pose-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02272", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02273", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02273-keymap-item-Pose-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02273.py -- tests/files/web/generated/M21-GAP-02273-keymap-item-Pose-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02273", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02274", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02274-keymap-item-Pose-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02274.py -- tests/files/web/generated/M21-GAP-02274-keymap-item-Pose-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02274", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02275", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02275-keymap-item-Pose-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02275.py -- tests/files/web/generated/M21-GAP-02275-keymap-item-Pose-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02275", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02276", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02276-keymap-item-Pose-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02276.py -- tests/files/web/generated/M21-GAP-02276-keymap-item-Pose-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02276", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02277", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02277-keymap-item-Pose-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02277.py -- tests/files/web/generated/M21-GAP-02277-keymap-item-Pose-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02277", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02278", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02278-keymap-item-Pose-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02278.py -- tests/files/web/generated/M21-GAP-02278-keymap-item-Pose-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02278", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02279", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02279-keymap-item-Pose-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02279.py -- tests/files/web/generated/M21-GAP-02279-keymap-item-Pose-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02279", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02280", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02280-keymap-item-Pose-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02280.py -- tests/files/web/generated/M21-GAP-02280-keymap-item-Pose-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02280", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02281", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02281-keymap-item-Pose-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02281.py -- tests/files/web/generated/M21-GAP-02281-keymap-item-Pose-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02281", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02282", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02282-keymap-item-Pose-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02282.py -- tests/files/web/generated/M21-GAP-02282-keymap-item-Pose-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02282", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02283", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02283-keymap-item-Pose-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02283.py -- tests/files/web/generated/M21-GAP-02283-keymap-item-Pose-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02283", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02284", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02284-keymap-item-Pose-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02284.py -- tests/files/web/generated/M21-GAP-02284-keymap-item-Pose-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02284", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02285", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02285-keymap-item-Pose-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02285.py -- tests/files/web/generated/M21-GAP-02285-keymap-item-Pose-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02285", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02286", + "gapId": "keymap-item:Pose:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02286-keymap-item-Pose-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02286.py -- tests/files/web/generated/M21-GAP-02286-keymap-item-Pose-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02286", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02287", + "gapId": "keymap-item:Preferences:PREFERENCES:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02287-keymap-item-Preferences-PREFERENCES-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02287.py -- tests/files/web/generated/M21-GAP-02287-keymap-item-Preferences-PREFERENCES-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02287", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02288", + "gapId": "keymap-item:Preferences:PREFERENCES:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02288-keymap-item-Preferences-PREFERENCES-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02288.py -- tests/files/web/generated/M21-GAP-02288-keymap-item-Preferences-PREFERENCES-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02288", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02289", + "gapId": "keymap-item:Preferences_nav:PREFERENCES:UI:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02289-keymap-item-Preferences_nav-PREFERENCES-UI-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02289.py -- tests/files/web/generated/M21-GAP-02289-keymap-item-Preferences_nav-PREFERENCES-UI-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02289", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02290", + "gapId": "keymap-item:Preferences_nav:PREFERENCES:UI:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02290-keymap-item-Preferences_nav-PREFERENCES-UI-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02290.py -- tests/files/web/generated/M21-GAP-02290-keymap-item-Preferences_nav-PREFERENCES-UI-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02290", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02291", + "gapId": "keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02291-keymap-item-Preview-Tool-Cursor-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02291.py -- tests/files/web/generated/M21-GAP-02291-keymap-item-Preview-Tool-Cursor-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02291", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02292", + "gapId": "keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02292-keymap-item-Preview-Tool-Cursor-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02292.py -- tests/files/web/generated/M21-GAP-02292-keymap-item-Preview-Tool-Cursor-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02292", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02293", + "gapId": "keymap-item:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02293-keymap-item-Preview-Tool-Move-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02293.py -- tests/files/web/generated/M21-GAP-02293-keymap-item-Preview-Tool-Move-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02293", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02294", + "gapId": "keymap-item:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02294-keymap-item-Preview-Tool-Rotate-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02294.py -- tests/files/web/generated/M21-GAP-02294-keymap-item-Preview-Tool-Rotate-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02294", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02295", + "gapId": "keymap-item:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02295-keymap-item-Preview-Tool-Sample-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02295.py -- tests/files/web/generated/M21-GAP-02295-keymap-item-Preview-Tool-Sample-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02295", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02296", + "gapId": "keymap-item:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02296-keymap-item-Preview-Tool-Scale-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02296.py -- tests/files/web/generated/M21-GAP-02296-keymap-item-Preview-Tool-Scale-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02296", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02297", + "gapId": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02297-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02297.py -- tests/files/web/generated/M21-GAP-02297-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02297", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02298", + "gapId": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02298-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02298.py -- tests/files/web/generated/M21-GAP-02298-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02298", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02299", + "gapId": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02299-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02299.py -- tests/files/web/generated/M21-GAP-02299-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02299", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02300", + "gapId": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02300-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02300.py -- tests/files/web/generated/M21-GAP-02300-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02300", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02301", + "gapId": "keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02301-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02301.py -- tests/files/web/generated/M21-GAP-02301-keymap-item-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02301", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02302", + "gapId": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02302-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02302.py -- tests/files/web/generated/M21-GAP-02302-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02302", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02303", + "gapId": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02303-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02303.py -- tests/files/web/generated/M21-GAP-02303-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02303", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02304", + "gapId": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02304-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02304.py -- tests/files/web/generated/M21-GAP-02304-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02304", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02305", + "gapId": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02305-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02305.py -- tests/files/web/generated/M21-GAP-02305-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02305", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02306", + "gapId": "keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02306-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02306.py -- tests/files/web/generated/M21-GAP-02306-keymap-item-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02306", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02307", + "gapId": "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02307-keymap-item-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02307.py -- tests/files/web/generated/M21-GAP-02307-keymap-item-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02307", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02308", + "gapId": "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02308-keymap-item-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02308.py -- tests/files/web/generated/M21-GAP-02308-keymap-item-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02308", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02309", + "gapId": "keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02309-keymap-item-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02309.py -- tests/files/web/generated/M21-GAP-02309-keymap-item-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02309", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02310", + "gapId": "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02310-keymap-item-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02310.py -- tests/files/web/generated/M21-GAP-02310-keymap-item-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02310", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02311", + "gapId": "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02311-keymap-item-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02311.py -- tests/files/web/generated/M21-GAP-02311-keymap-item-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02311", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02312", + "gapId": "keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02312-keymap-item-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02312.py -- tests/files/web/generated/M21-GAP-02312-keymap-item-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02312", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02313", + "gapId": "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02313-keymap-item-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02313.py -- tests/files/web/generated/M21-GAP-02313-keymap-item-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02313", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02314", + "gapId": "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02314-keymap-item-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02314.py -- tests/files/web/generated/M21-GAP-02314-keymap-item-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02314", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02315", + "gapId": "keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02315-keymap-item-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02315.py -- tests/files/web/generated/M21-GAP-02315-keymap-item-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02315", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02316", + "gapId": "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02316-keymap-item-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02316.py -- tests/files/web/generated/M21-GAP-02316-keymap-item-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02316", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02317", + "gapId": "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02317-keymap-item-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02317.py -- tests/files/web/generated/M21-GAP-02317-keymap-item-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02317", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02318", + "gapId": "keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02318-keymap-item-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02318.py -- tests/files/web/generated/M21-GAP-02318-keymap-item-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02318", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02319", + "gapId": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02319-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02319.py -- tests/files/web/generated/M21-GAP-02319-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02319", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02320", + "gapId": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02320-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02320.py -- tests/files/web/generated/M21-GAP-02320-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02320", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02321", + "gapId": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02321-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02321.py -- tests/files/web/generated/M21-GAP-02321-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02321", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02322", + "gapId": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02322-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02322.py -- tests/files/web/generated/M21-GAP-02322-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02322", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02323", + "gapId": "keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02323-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02323.py -- tests/files/web/generated/M21-GAP-02323-keymap-item-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02323", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02324", + "gapId": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02324-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02324.py -- tests/files/web/generated/M21-GAP-02324-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02324", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02325", + "gapId": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02325-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02325.py -- tests/files/web/generated/M21-GAP-02325-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02325", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02326", + "gapId": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02326-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02326.py -- tests/files/web/generated/M21-GAP-02326-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02326", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02327", + "gapId": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02327-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02327.py -- tests/files/web/generated/M21-GAP-02327-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02327", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02328", + "gapId": "keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02328-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02328.py -- tests/files/web/generated/M21-GAP-02328-keymap-item-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02328", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02329", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02329-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02329.py -- tests/files/web/generated/M21-GAP-02329-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02329", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02330", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02330-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02330.py -- tests/files/web/generated/M21-GAP-02330-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02330", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02331", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02331-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02331.py -- tests/files/web/generated/M21-GAP-02331-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02331", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02332", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02332-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02332.py -- tests/files/web/generated/M21-GAP-02332-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02332", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02333", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02333-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02333.py -- tests/files/web/generated/M21-GAP-02333-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02333", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02334", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02334-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02334.py -- tests/files/web/generated/M21-GAP-02334-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02334", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02335", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02335-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02335.py -- tests/files/web/generated/M21-GAP-02335-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02335", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02336", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02336-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02336.py -- tests/files/web/generated/M21-GAP-02336-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02336", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02337", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02337-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02337.py -- tests/files/web/generated/M21-GAP-02337-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02337", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02338", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02338-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02338.py -- tests/files/web/generated/M21-GAP-02338-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02338", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02339", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02339-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02339.py -- tests/files/web/generated/M21-GAP-02339-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02339", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02340", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02340-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02340.py -- tests/files/web/generated/M21-GAP-02340-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02340", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02341", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02341-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02341.py -- tests/files/web/generated/M21-GAP-02341-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02341", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02342", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02342-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02342.py -- tests/files/web/generated/M21-GAP-02342-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02342", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02343", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02343-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02343.py -- tests/files/web/generated/M21-GAP-02343-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02343", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02344", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02344-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02344.py -- tests/files/web/generated/M21-GAP-02344-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02344", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02345", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02345-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02345.py -- tests/files/web/generated/M21-GAP-02345-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02345", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02346", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02346-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02346.py -- tests/files/web/generated/M21-GAP-02346-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02346", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02347", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02347-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02347.py -- tests/files/web/generated/M21-GAP-02347-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02347", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02348", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02348-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02348.py -- tests/files/web/generated/M21-GAP-02348-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02348", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02349", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02349-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02349.py -- tests/files/web/generated/M21-GAP-02349-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02349", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02350", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02350-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02350.py -- tests/files/web/generated/M21-GAP-02350-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02350", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02351", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02351-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02351.py -- tests/files/web/generated/M21-GAP-02351-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02351", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02352", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02352-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02352.py -- tests/files/web/generated/M21-GAP-02352-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02352", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02353", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02353-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02353.py -- tests/files/web/generated/M21-GAP-02353-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02353", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02354", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02354-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02354.py -- tests/files/web/generated/M21-GAP-02354-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02354", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02355", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02355-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02355.py -- tests/files/web/generated/M21-GAP-02355-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02355", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02356", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02356-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02356.py -- tests/files/web/generated/M21-GAP-02356-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02356", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02357", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02357-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02357.py -- tests/files/web/generated/M21-GAP-02357-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02357", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02358", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02358-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02358.py -- tests/files/web/generated/M21-GAP-02358-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02358", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02359", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02359-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02359.py -- tests/files/web/generated/M21-GAP-02359-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02359", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02360", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02360-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02360.py -- tests/files/web/generated/M21-GAP-02360-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02360", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02361", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02361-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02361.py -- tests/files/web/generated/M21-GAP-02361-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02361", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02362", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02362-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02362.py -- tests/files/web/generated/M21-GAP-02362-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02362", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02363", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02363-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02363.py -- tests/files/web/generated/M21-GAP-02363-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02363", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02364", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02364-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02364.py -- tests/files/web/generated/M21-GAP-02364-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02364", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02365", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02365-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02365.py -- tests/files/web/generated/M21-GAP-02365-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02365", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02366", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02366-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02366.py -- tests/files/web/generated/M21-GAP-02366-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02366", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02367", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02367-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02367.py -- tests/files/web/generated/M21-GAP-02367-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02367", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02368", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02368-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02368.py -- tests/files/web/generated/M21-GAP-02368-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02368", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02369", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02369-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02369.py -- tests/files/web/generated/M21-GAP-02369-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02369", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02370", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02370-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02370.py -- tests/files/web/generated/M21-GAP-02370-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02370", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02371", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02371-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02371.py -- tests/files/web/generated/M21-GAP-02371-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02371", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02372", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02372-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02372.py -- tests/files/web/generated/M21-GAP-02372-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02372", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02373", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02373-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02373.py -- tests/files/web/generated/M21-GAP-02373-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02373", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02374", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02374-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02374.py -- tests/files/web/generated/M21-GAP-02374-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02374", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02375", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02375-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02375.py -- tests/files/web/generated/M21-GAP-02375-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02375", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02376", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02376-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02376.py -- tests/files/web/generated/M21-GAP-02376-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02376", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02377", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02377-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02377.py -- tests/files/web/generated/M21-GAP-02377-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02377", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02378", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02378-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02378.py -- tests/files/web/generated/M21-GAP-02378-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02378", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02379", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02379-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02379.py -- tests/files/web/generated/M21-GAP-02379-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02379", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02380", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02380-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02380.py -- tests/files/web/generated/M21-GAP-02380-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02380", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02381", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02381-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02381.py -- tests/files/web/generated/M21-GAP-02381-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02381", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02382", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02382-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02382.py -- tests/files/web/generated/M21-GAP-02382-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02382", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02383", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02383-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02383.py -- tests/files/web/generated/M21-GAP-02383-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02383", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02384", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02384-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02384.py -- tests/files/web/generated/M21-GAP-02384-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02384", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02385", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02385-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02385.py -- tests/files/web/generated/M21-GAP-02385-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02385", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02386", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02386-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02386.py -- tests/files/web/generated/M21-GAP-02386-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02386", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02387", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02387-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02387.py -- tests/files/web/generated/M21-GAP-02387-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02387", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02388", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02388-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02388.py -- tests/files/web/generated/M21-GAP-02388-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02388", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02389", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02389-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02389.py -- tests/files/web/generated/M21-GAP-02389-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02389", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02390", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02390-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02390.py -- tests/files/web/generated/M21-GAP-02390-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02390", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02391", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02391-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02391.py -- tests/files/web/generated/M21-GAP-02391-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02391", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02392", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02392-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02392.py -- tests/files/web/generated/M21-GAP-02392-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02392", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02393", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02393-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02393.py -- tests/files/web/generated/M21-GAP-02393-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02393", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02394", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02394-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02394.py -- tests/files/web/generated/M21-GAP-02394-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02394", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02395", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02395-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02395.py -- tests/files/web/generated/M21-GAP-02395-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02395", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02396", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02396-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02396.py -- tests/files/web/generated/M21-GAP-02396-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02396", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02397", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02397-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02397.py -- tests/files/web/generated/M21-GAP-02397-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02397", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02398", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02398-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02398.py -- tests/files/web/generated/M21-GAP-02398-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02398", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02399", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02399-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02399.py -- tests/files/web/generated/M21-GAP-02399-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02399", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02400", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02400-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02400.py -- tests/files/web/generated/M21-GAP-02400-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02400", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02401", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02401-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02401.py -- tests/files/web/generated/M21-GAP-02401-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02401", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02402", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02402-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02402.py -- tests/files/web/generated/M21-GAP-02402-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02402", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02403", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02403-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02403.py -- tests/files/web/generated/M21-GAP-02403-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02403", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02404", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02404-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02404.py -- tests/files/web/generated/M21-GAP-02404-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02404", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02405", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02405-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02405.py -- tests/files/web/generated/M21-GAP-02405-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02405", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02406", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02406-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02406.py -- tests/files/web/generated/M21-GAP-02406-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02406", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02407", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02407-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02407.py -- tests/files/web/generated/M21-GAP-02407-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02407", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02408", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02408-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02408.py -- tests/files/web/generated/M21-GAP-02408-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02408", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02409", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02409-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02409.py -- tests/files/web/generated/M21-GAP-02409-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02409", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02410", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02410-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02410.py -- tests/files/web/generated/M21-GAP-02410-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02410", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02411", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02411-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02411.py -- tests/files/web/generated/M21-GAP-02411-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02411", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02412", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02412-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02412.py -- tests/files/web/generated/M21-GAP-02412-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02412", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02413", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02413-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02413.py -- tests/files/web/generated/M21-GAP-02413-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02413", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02414", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02414-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02414.py -- tests/files/web/generated/M21-GAP-02414-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02414", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02415", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02415-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02415.py -- tests/files/web/generated/M21-GAP-02415-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02415", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02416", + "gapId": "keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02416-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02416.py -- tests/files/web/generated/M21-GAP-02416-keymap-item-Preview-SEQUENCE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02416", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02417", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02417-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02417.py -- tests/files/web/generated/M21-GAP-02417-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02417", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02418", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02418-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02418.py -- tests/files/web/generated/M21-GAP-02418-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02418", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02419", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02419-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02419.py -- tests/files/web/generated/M21-GAP-02419-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02419", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02420", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02420-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02420.py -- tests/files/web/generated/M21-GAP-02420-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02420", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02421", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02421-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02421.py -- tests/files/web/generated/M21-GAP-02421-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02421", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02422", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02422-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02422.py -- tests/files/web/generated/M21-GAP-02422-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02422", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02423", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02423-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02423.py -- tests/files/web/generated/M21-GAP-02423-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02423", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02424", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02424-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02424.py -- tests/files/web/generated/M21-GAP-02424-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02424", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02425", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02425-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02425.py -- tests/files/web/generated/M21-GAP-02425-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02425", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02426", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02426-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02426.py -- tests/files/web/generated/M21-GAP-02426-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02426", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02427", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02427-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02427.py -- tests/files/web/generated/M21-GAP-02427-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02427", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02428", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02428-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02428.py -- tests/files/web/generated/M21-GAP-02428-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02428", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02429", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02429-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02429.py -- tests/files/web/generated/M21-GAP-02429-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02429", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02430", + "gapId": "keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02430-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02430.py -- tests/files/web/generated/M21-GAP-02430-keymap-item-Primitive-Tool-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02430", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02431", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02431-keymap-item-Property-Editor-PROPERTIES-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02431.py -- tests/files/web/generated/M21-GAP-02431-keymap-item-Property-Editor-PROPERTIES-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02431", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02432", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02432-keymap-item-Property-Editor-PROPERTIES-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02432.py -- tests/files/web/generated/M21-GAP-02432-keymap-item-Property-Editor-PROPERTIES-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02432", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02433", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02433-keymap-item-Property-Editor-PROPERTIES-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02433.py -- tests/files/web/generated/M21-GAP-02433-keymap-item-Property-Editor-PROPERTIES-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02433", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02434", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02434-keymap-item-Property-Editor-PROPERTIES-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02434.py -- tests/files/web/generated/M21-GAP-02434-keymap-item-Property-Editor-PROPERTIES-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02434", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02435", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02435-keymap-item-Property-Editor-PROPERTIES-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02435.py -- tests/files/web/generated/M21-GAP-02435-keymap-item-Property-Editor-PROPERTIES-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02435", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02436", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02436-keymap-item-Property-Editor-PROPERTIES-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02436.py -- tests/files/web/generated/M21-GAP-02436-keymap-item-Property-Editor-PROPERTIES-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02436", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02437", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02437-keymap-item-Property-Editor-PROPERTIES-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02437.py -- tests/files/web/generated/M21-GAP-02437-keymap-item-Property-Editor-PROPERTIES-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02437", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02438", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02438-keymap-item-Property-Editor-PROPERTIES-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02438.py -- tests/files/web/generated/M21-GAP-02438-keymap-item-Property-Editor-PROPERTIES-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02438", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02439", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02439-keymap-item-Property-Editor-PROPERTIES-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02439.py -- tests/files/web/generated/M21-GAP-02439-keymap-item-Property-Editor-PROPERTIES-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02439", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02440", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02440-keymap-item-Property-Editor-PROPERTIES-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02440.py -- tests/files/web/generated/M21-GAP-02440-keymap-item-Property-Editor-PROPERTIES-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02440", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02441", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02441-keymap-item-Property-Editor-PROPERTIES-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02441.py -- tests/files/web/generated/M21-GAP-02441-keymap-item-Property-Editor-PROPERTIES-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02441", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02442", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02442-keymap-item-Property-Editor-PROPERTIES-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02442.py -- tests/files/web/generated/M21-GAP-02442-keymap-item-Property-Editor-PROPERTIES-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02442", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02443", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02443-keymap-item-Property-Editor-PROPERTIES-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02443.py -- tests/files/web/generated/M21-GAP-02443-keymap-item-Property-Editor-PROPERTIES-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02443", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02444", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02444-keymap-item-Property-Editor-PROPERTIES-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02444.py -- tests/files/web/generated/M21-GAP-02444-keymap-item-Property-Editor-PROPERTIES-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02444", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02445", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02445-keymap-item-Property-Editor-PROPERTIES-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02445.py -- tests/files/web/generated/M21-GAP-02445-keymap-item-Property-Editor-PROPERTIES-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02445", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02446", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02446-keymap-item-Property-Editor-PROPERTIES-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02446.py -- tests/files/web/generated/M21-GAP-02446-keymap-item-Property-Editor-PROPERTIES-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02446", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02447", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02447-keymap-item-Property-Editor-PROPERTIES-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02447.py -- tests/files/web/generated/M21-GAP-02447-keymap-item-Property-Editor-PROPERTIES-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02447", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02448", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02448-keymap-item-Property-Editor-PROPERTIES-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02448.py -- tests/files/web/generated/M21-GAP-02448-keymap-item-Property-Editor-PROPERTIES-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02448", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02449", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02449-keymap-item-Property-Editor-PROPERTIES-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02449.py -- tests/files/web/generated/M21-GAP-02449-keymap-item-Property-Editor-PROPERTIES-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02449", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02450", + "gapId": "keymap-item:Property Editor:PROPERTIES:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02450-keymap-item-Property-Editor-PROPERTIES-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02450.py -- tests/files/web/generated/M21-GAP-02450-keymap-item-Property-Editor-PROPERTIES-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02450", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02451", + "gapId": "keymap-item:Region Context Menu:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02451-keymap-item-Region-Context-Menu-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02451.py -- tests/files/web/generated/M21-GAP-02451-keymap-item-Region-Context-Menu-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02451", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02452", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02452-keymap-item-Screen-Editing-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02452.py -- tests/files/web/generated/M21-GAP-02452-keymap-item-Screen-Editing-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02452", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02453", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02453-keymap-item-Screen-Editing-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02453.py -- tests/files/web/generated/M21-GAP-02453-keymap-item-Screen-Editing-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02453", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02454", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02454-keymap-item-Screen-Editing-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02454.py -- tests/files/web/generated/M21-GAP-02454-keymap-item-Screen-Editing-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02454", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02455", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02455-keymap-item-Screen-Editing-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02455.py -- tests/files/web/generated/M21-GAP-02455-keymap-item-Screen-Editing-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02455", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02456", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02456-keymap-item-Screen-Editing-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02456.py -- tests/files/web/generated/M21-GAP-02456-keymap-item-Screen-Editing-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02456", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02457", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02457-keymap-item-Screen-Editing-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02457.py -- tests/files/web/generated/M21-GAP-02457-keymap-item-Screen-Editing-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02457", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02458", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02458-keymap-item-Screen-Editing-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02458.py -- tests/files/web/generated/M21-GAP-02458-keymap-item-Screen-Editing-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02458", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02459", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02459-keymap-item-Screen-Editing-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02459.py -- tests/files/web/generated/M21-GAP-02459-keymap-item-Screen-Editing-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02459", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02460", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02460-keymap-item-Screen-Editing-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02460.py -- tests/files/web/generated/M21-GAP-02460-keymap-item-Screen-Editing-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02460", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02461", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02461-keymap-item-Screen-Editing-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02461.py -- tests/files/web/generated/M21-GAP-02461-keymap-item-Screen-Editing-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02461", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02462", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02462-keymap-item-Screen-Editing-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02462.py -- tests/files/web/generated/M21-GAP-02462-keymap-item-Screen-Editing-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02462", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02463", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02463-keymap-item-Screen-Editing-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02463.py -- tests/files/web/generated/M21-GAP-02463-keymap-item-Screen-Editing-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02463", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02464", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02464-keymap-item-Screen-Editing-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02464.py -- tests/files/web/generated/M21-GAP-02464-keymap-item-Screen-Editing-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02464", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02465", + "gapId": "keymap-item:Screen Editing:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02465-keymap-item-Screen-Editing-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02465.py -- tests/files/web/generated/M21-GAP-02465-keymap-item-Screen-Editing-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02465", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02466", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02466-keymap-item-Screen-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02466.py -- tests/files/web/generated/M21-GAP-02466-keymap-item-Screen-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02466", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02467", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02467-keymap-item-Screen-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02467.py -- tests/files/web/generated/M21-GAP-02467-keymap-item-Screen-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02467", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02468", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02468-keymap-item-Screen-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02468.py -- tests/files/web/generated/M21-GAP-02468-keymap-item-Screen-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02468", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02469", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02469-keymap-item-Screen-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02469.py -- tests/files/web/generated/M21-GAP-02469-keymap-item-Screen-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02469", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02470", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02470-keymap-item-Screen-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02470.py -- tests/files/web/generated/M21-GAP-02470-keymap-item-Screen-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02470", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02471", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02471-keymap-item-Screen-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02471.py -- tests/files/web/generated/M21-GAP-02471-keymap-item-Screen-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02471", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02472", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02472-keymap-item-Screen-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02472.py -- tests/files/web/generated/M21-GAP-02472-keymap-item-Screen-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02472", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02473", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02473-keymap-item-Screen-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02473.py -- tests/files/web/generated/M21-GAP-02473-keymap-item-Screen-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02473", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02474", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02474-keymap-item-Screen-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02474.py -- tests/files/web/generated/M21-GAP-02474-keymap-item-Screen-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02474", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02475", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02475-keymap-item-Screen-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02475.py -- tests/files/web/generated/M21-GAP-02475-keymap-item-Screen-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02475", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02476", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02476-keymap-item-Screen-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02476.py -- tests/files/web/generated/M21-GAP-02476-keymap-item-Screen-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02476", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02477", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02477-keymap-item-Screen-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02477.py -- tests/files/web/generated/M21-GAP-02477-keymap-item-Screen-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02477", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02478", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02478-keymap-item-Screen-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02478.py -- tests/files/web/generated/M21-GAP-02478-keymap-item-Screen-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02478", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02479", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02479-keymap-item-Screen-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02479.py -- tests/files/web/generated/M21-GAP-02479-keymap-item-Screen-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02479", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02480", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02480-keymap-item-Screen-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02480.py -- tests/files/web/generated/M21-GAP-02480-keymap-item-Screen-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02480", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02481", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02481-keymap-item-Screen-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02481.py -- tests/files/web/generated/M21-GAP-02481-keymap-item-Screen-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02481", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02482", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02482-keymap-item-Screen-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02482.py -- tests/files/web/generated/M21-GAP-02482-keymap-item-Screen-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02482", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02483", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02483-keymap-item-Screen-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02483.py -- tests/files/web/generated/M21-GAP-02483-keymap-item-Screen-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02483", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02484", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02484-keymap-item-Screen-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02484.py -- tests/files/web/generated/M21-GAP-02484-keymap-item-Screen-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02484", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02485", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02485-keymap-item-Screen-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02485.py -- tests/files/web/generated/M21-GAP-02485-keymap-item-Screen-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02485", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02486", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02486-keymap-item-Screen-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02486.py -- tests/files/web/generated/M21-GAP-02486-keymap-item-Screen-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02486", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02487", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02487-keymap-item-Screen-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02487.py -- tests/files/web/generated/M21-GAP-02487-keymap-item-Screen-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02487", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02488", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02488-keymap-item-Screen-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02488.py -- tests/files/web/generated/M21-GAP-02488-keymap-item-Screen-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02488", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02489", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02489-keymap-item-Screen-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02489.py -- tests/files/web/generated/M21-GAP-02489-keymap-item-Screen-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02489", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02490", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02490-keymap-item-Screen-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02490.py -- tests/files/web/generated/M21-GAP-02490-keymap-item-Screen-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02490", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02491", + "gapId": "keymap-item:Screen:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02491-keymap-item-Screen-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02491.py -- tests/files/web/generated/M21-GAP-02491-keymap-item-Screen-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02491", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02492", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02492-keymap-item-Sculpt-Curves-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02492.py -- tests/files/web/generated/M21-GAP-02492-keymap-item-Sculpt-Curves-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02492", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02493", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02493-keymap-item-Sculpt-Curves-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02493.py -- tests/files/web/generated/M21-GAP-02493-keymap-item-Sculpt-Curves-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02493", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02494", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02494-keymap-item-Sculpt-Curves-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02494.py -- tests/files/web/generated/M21-GAP-02494-keymap-item-Sculpt-Curves-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02494", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02495", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02495-keymap-item-Sculpt-Curves-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02495.py -- tests/files/web/generated/M21-GAP-02495-keymap-item-Sculpt-Curves-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02495", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02496", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02496-keymap-item-Sculpt-Curves-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02496.py -- tests/files/web/generated/M21-GAP-02496-keymap-item-Sculpt-Curves-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02496", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02497", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02497-keymap-item-Sculpt-Curves-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02497.py -- tests/files/web/generated/M21-GAP-02497-keymap-item-Sculpt-Curves-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02497", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02498", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02498-keymap-item-Sculpt-Curves-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02498.py -- tests/files/web/generated/M21-GAP-02498-keymap-item-Sculpt-Curves-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02498", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02499", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02499-keymap-item-Sculpt-Curves-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02499.py -- tests/files/web/generated/M21-GAP-02499-keymap-item-Sculpt-Curves-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02499", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02500", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02500-keymap-item-Sculpt-Curves-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02500.py -- tests/files/web/generated/M21-GAP-02500-keymap-item-Sculpt-Curves-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02500", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02501", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02501-keymap-item-Sculpt-Curves-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02501.py -- tests/files/web/generated/M21-GAP-02501-keymap-item-Sculpt-Curves-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02501", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02502", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02502-keymap-item-Sculpt-Curves-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02502.py -- tests/files/web/generated/M21-GAP-02502-keymap-item-Sculpt-Curves-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02502", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02503", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02503-keymap-item-Sculpt-Curves-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02503.py -- tests/files/web/generated/M21-GAP-02503-keymap-item-Sculpt-Curves-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02503", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02504", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02504-keymap-item-Sculpt-Curves-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02504.py -- tests/files/web/generated/M21-GAP-02504-keymap-item-Sculpt-Curves-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02504", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02505", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02505-keymap-item-Sculpt-Curves-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02505.py -- tests/files/web/generated/M21-GAP-02505-keymap-item-Sculpt-Curves-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02505", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02506", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02506-keymap-item-Sculpt-Curves-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02506.py -- tests/files/web/generated/M21-GAP-02506-keymap-item-Sculpt-Curves-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02506", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02507", + "gapId": "keymap-item:Sculpt Curves:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02507-keymap-item-Sculpt-Curves-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02507.py -- tests/files/web/generated/M21-GAP-02507-keymap-item-Sculpt-Curves-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02507", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02508", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02508-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02508.py -- tests/files/web/generated/M21-GAP-02508-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02508", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02509", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02509-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02509.py -- tests/files/web/generated/M21-GAP-02509-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02509", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02510", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02510-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02510.py -- tests/files/web/generated/M21-GAP-02510-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02510", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02511", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02511-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02511.py -- tests/files/web/generated/M21-GAP-02511-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02511", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02512", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02512-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02512.py -- tests/files/web/generated/M21-GAP-02512-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02512", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02513", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02513-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02513.py -- tests/files/web/generated/M21-GAP-02513-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02513", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02514", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02514-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02514.py -- tests/files/web/generated/M21-GAP-02514-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02514", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02515", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02515-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02515.py -- tests/files/web/generated/M21-GAP-02515-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02515", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02516", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02516-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02516.py -- tests/files/web/generated/M21-GAP-02516-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02516", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02517", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02517-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02517.py -- tests/files/web/generated/M21-GAP-02517-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02517", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02518", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02518-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02518.py -- tests/files/web/generated/M21-GAP-02518-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02518", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02519", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02519-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02519.py -- tests/files/web/generated/M21-GAP-02519-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02519", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02520", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02520-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02520.py -- tests/files/web/generated/M21-GAP-02520-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02520", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02521", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02521-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02521.py -- tests/files/web/generated/M21-GAP-02521-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02521", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02522", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02522-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02522.py -- tests/files/web/generated/M21-GAP-02522-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02522", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02523", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02523-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02523.py -- tests/files/web/generated/M21-GAP-02523-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02523", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02524", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02524-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02524.py -- tests/files/web/generated/M21-GAP-02524-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02524", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02525", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02525-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02525.py -- tests/files/web/generated/M21-GAP-02525-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02525", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02526", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02526-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02526.py -- tests/files/web/generated/M21-GAP-02526-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02526", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02527", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02527-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02527.py -- tests/files/web/generated/M21-GAP-02527-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02527", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02528", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02528-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02528.py -- tests/files/web/generated/M21-GAP-02528-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02528", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02529", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02529-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02529.py -- tests/files/web/generated/M21-GAP-02529-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02529", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02530", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02530-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02530.py -- tests/files/web/generated/M21-GAP-02530-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02530", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02531", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02531-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02531.py -- tests/files/web/generated/M21-GAP-02531-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02531", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02532", + "gapId": "keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02532-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02532.py -- tests/files/web/generated/M21-GAP-02532-keymap-item-Sculpt-Expand-Modal-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02532", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02533", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02533-keymap-item-Sculpt-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02533.py -- tests/files/web/generated/M21-GAP-02533-keymap-item-Sculpt-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02533", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02534", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02534-keymap-item-Sculpt-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02534.py -- tests/files/web/generated/M21-GAP-02534-keymap-item-Sculpt-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02534", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02535", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02535-keymap-item-Sculpt-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02535.py -- tests/files/web/generated/M21-GAP-02535-keymap-item-Sculpt-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02535", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02536", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02536-keymap-item-Sculpt-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02536.py -- tests/files/web/generated/M21-GAP-02536-keymap-item-Sculpt-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02536", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02537", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02537-keymap-item-Sculpt-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02537.py -- tests/files/web/generated/M21-GAP-02537-keymap-item-Sculpt-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02537", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02538", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02538-keymap-item-Sculpt-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02538.py -- tests/files/web/generated/M21-GAP-02538-keymap-item-Sculpt-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02538", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02539", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02539-keymap-item-Sculpt-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02539.py -- tests/files/web/generated/M21-GAP-02539-keymap-item-Sculpt-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02539", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02540", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02540-keymap-item-Sculpt-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02540.py -- tests/files/web/generated/M21-GAP-02540-keymap-item-Sculpt-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02540", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02541", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02541-keymap-item-Sculpt-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02541.py -- tests/files/web/generated/M21-GAP-02541-keymap-item-Sculpt-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02541", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02542", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02542-keymap-item-Sculpt-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02542.py -- tests/files/web/generated/M21-GAP-02542-keymap-item-Sculpt-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02542", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02543", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02543-keymap-item-Sculpt-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02543.py -- tests/files/web/generated/M21-GAP-02543-keymap-item-Sculpt-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02543", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02544", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02544-keymap-item-Sculpt-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02544.py -- tests/files/web/generated/M21-GAP-02544-keymap-item-Sculpt-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02544", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02545", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02545-keymap-item-Sculpt-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02545.py -- tests/files/web/generated/M21-GAP-02545-keymap-item-Sculpt-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02545", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02546", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02546-keymap-item-Sculpt-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02546.py -- tests/files/web/generated/M21-GAP-02546-keymap-item-Sculpt-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02546", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02547", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02547-keymap-item-Sculpt-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02547.py -- tests/files/web/generated/M21-GAP-02547-keymap-item-Sculpt-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02547", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02548", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02548-keymap-item-Sculpt-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02548.py -- tests/files/web/generated/M21-GAP-02548-keymap-item-Sculpt-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02548", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02549", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02549-keymap-item-Sculpt-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02549.py -- tests/files/web/generated/M21-GAP-02549-keymap-item-Sculpt-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02549", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02550", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02550-keymap-item-Sculpt-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02550.py -- tests/files/web/generated/M21-GAP-02550-keymap-item-Sculpt-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02550", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02551", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02551-keymap-item-Sculpt-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02551.py -- tests/files/web/generated/M21-GAP-02551-keymap-item-Sculpt-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02551", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02552", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02552-keymap-item-Sculpt-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02552.py -- tests/files/web/generated/M21-GAP-02552-keymap-item-Sculpt-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02552", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02553", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02553-keymap-item-Sculpt-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02553.py -- tests/files/web/generated/M21-GAP-02553-keymap-item-Sculpt-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02553", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02554", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02554-keymap-item-Sculpt-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02554.py -- tests/files/web/generated/M21-GAP-02554-keymap-item-Sculpt-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02554", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02555", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02555-keymap-item-Sculpt-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02555.py -- tests/files/web/generated/M21-GAP-02555-keymap-item-Sculpt-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02555", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02556", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02556-keymap-item-Sculpt-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02556.py -- tests/files/web/generated/M21-GAP-02556-keymap-item-Sculpt-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02556", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02557", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02557-keymap-item-Sculpt-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02557.py -- tests/files/web/generated/M21-GAP-02557-keymap-item-Sculpt-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02557", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02558", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02558-keymap-item-Sculpt-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02558.py -- tests/files/web/generated/M21-GAP-02558-keymap-item-Sculpt-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02558", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02559", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02559-keymap-item-Sculpt-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02559.py -- tests/files/web/generated/M21-GAP-02559-keymap-item-Sculpt-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02559", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02560", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02560-keymap-item-Sculpt-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02560.py -- tests/files/web/generated/M21-GAP-02560-keymap-item-Sculpt-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02560", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02561", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02561-keymap-item-Sculpt-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02561.py -- tests/files/web/generated/M21-GAP-02561-keymap-item-Sculpt-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02561", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02562", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02562-keymap-item-Sculpt-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02562.py -- tests/files/web/generated/M21-GAP-02562-keymap-item-Sculpt-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02562", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02563", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02563-keymap-item-Sculpt-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02563.py -- tests/files/web/generated/M21-GAP-02563-keymap-item-Sculpt-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02563", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02564", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02564-keymap-item-Sculpt-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02564.py -- tests/files/web/generated/M21-GAP-02564-keymap-item-Sculpt-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02564", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02565", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02565-keymap-item-Sculpt-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02565.py -- tests/files/web/generated/M21-GAP-02565-keymap-item-Sculpt-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02565", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02566", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02566-keymap-item-Sculpt-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02566.py -- tests/files/web/generated/M21-GAP-02566-keymap-item-Sculpt-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02566", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02567", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02567-keymap-item-Sculpt-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02567.py -- tests/files/web/generated/M21-GAP-02567-keymap-item-Sculpt-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02567", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02568", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02568-keymap-item-Sculpt-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02568.py -- tests/files/web/generated/M21-GAP-02568-keymap-item-Sculpt-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02568", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02569", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02569-keymap-item-Sculpt-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02569.py -- tests/files/web/generated/M21-GAP-02569-keymap-item-Sculpt-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02569", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02570", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02570-keymap-item-Sculpt-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02570.py -- tests/files/web/generated/M21-GAP-02570-keymap-item-Sculpt-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02570", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02571", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02571-keymap-item-Sculpt-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02571.py -- tests/files/web/generated/M21-GAP-02571-keymap-item-Sculpt-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02571", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02572", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02572-keymap-item-Sculpt-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02572.py -- tests/files/web/generated/M21-GAP-02572-keymap-item-Sculpt-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02572", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02573", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02573-keymap-item-Sculpt-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02573.py -- tests/files/web/generated/M21-GAP-02573-keymap-item-Sculpt-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02573", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02574", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02574-keymap-item-Sculpt-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02574.py -- tests/files/web/generated/M21-GAP-02574-keymap-item-Sculpt-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02574", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02575", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02575-keymap-item-Sculpt-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02575.py -- tests/files/web/generated/M21-GAP-02575-keymap-item-Sculpt-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02575", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02576", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02576-keymap-item-Sculpt-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02576.py -- tests/files/web/generated/M21-GAP-02576-keymap-item-Sculpt-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02576", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02577", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02577-keymap-item-Sculpt-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02577.py -- tests/files/web/generated/M21-GAP-02577-keymap-item-Sculpt-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02577", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02578", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02578-keymap-item-Sculpt-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02578.py -- tests/files/web/generated/M21-GAP-02578-keymap-item-Sculpt-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02578", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02579", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02579-keymap-item-Sculpt-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02579.py -- tests/files/web/generated/M21-GAP-02579-keymap-item-Sculpt-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02579", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02580", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02580-keymap-item-Sculpt-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02580.py -- tests/files/web/generated/M21-GAP-02580-keymap-item-Sculpt-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02580", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02581", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02581-keymap-item-Sculpt-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02581.py -- tests/files/web/generated/M21-GAP-02581-keymap-item-Sculpt-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02581", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02582", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02582-keymap-item-Sculpt-EMPTY-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02582.py -- tests/files/web/generated/M21-GAP-02582-keymap-item-Sculpt-EMPTY-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02582", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02583", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02583-keymap-item-Sculpt-EMPTY-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02583.py -- tests/files/web/generated/M21-GAP-02583-keymap-item-Sculpt-EMPTY-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02583", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02584", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02584-keymap-item-Sculpt-EMPTY-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02584.py -- tests/files/web/generated/M21-GAP-02584-keymap-item-Sculpt-EMPTY-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02584", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02585", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02585-keymap-item-Sculpt-EMPTY-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02585.py -- tests/files/web/generated/M21-GAP-02585-keymap-item-Sculpt-EMPTY-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02585", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02586", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02586-keymap-item-Sculpt-EMPTY-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02586.py -- tests/files/web/generated/M21-GAP-02586-keymap-item-Sculpt-EMPTY-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02586", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02587", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02587-keymap-item-Sculpt-EMPTY-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02587.py -- tests/files/web/generated/M21-GAP-02587-keymap-item-Sculpt-EMPTY-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02587", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02588", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02588-keymap-item-Sculpt-EMPTY-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02588.py -- tests/files/web/generated/M21-GAP-02588-keymap-item-Sculpt-EMPTY-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02588", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02589", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02589-keymap-item-Sculpt-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02589.py -- tests/files/web/generated/M21-GAP-02589-keymap-item-Sculpt-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02589", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02590", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02590-keymap-item-Sculpt-EMPTY-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02590.py -- tests/files/web/generated/M21-GAP-02590-keymap-item-Sculpt-EMPTY-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02590", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02591", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02591-keymap-item-Sculpt-EMPTY-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02591.py -- tests/files/web/generated/M21-GAP-02591-keymap-item-Sculpt-EMPTY-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02591", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02592", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02592-keymap-item-Sculpt-EMPTY-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02592.py -- tests/files/web/generated/M21-GAP-02592-keymap-item-Sculpt-EMPTY-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02592", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02593", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02593-keymap-item-Sculpt-EMPTY-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02593.py -- tests/files/web/generated/M21-GAP-02593-keymap-item-Sculpt-EMPTY-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02593", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02594", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02594-keymap-item-Sculpt-EMPTY-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02594.py -- tests/files/web/generated/M21-GAP-02594-keymap-item-Sculpt-EMPTY-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02594", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02595", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02595-keymap-item-Sculpt-EMPTY-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02595.py -- tests/files/web/generated/M21-GAP-02595-keymap-item-Sculpt-EMPTY-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02595", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02596", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02596-keymap-item-Sculpt-EMPTY-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02596.py -- tests/files/web/generated/M21-GAP-02596-keymap-item-Sculpt-EMPTY-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02596", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02597", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02597-keymap-item-Sculpt-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02597.py -- tests/files/web/generated/M21-GAP-02597-keymap-item-Sculpt-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02597", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02598", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02598-keymap-item-Sculpt-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02598.py -- tests/files/web/generated/M21-GAP-02598-keymap-item-Sculpt-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02598", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02599", + "gapId": "keymap-item:Sculpt:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02599-keymap-item-Sculpt-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02599.py -- tests/files/web/generated/M21-GAP-02599-keymap-item-Sculpt-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02599", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02600", + "gapId": "keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02600-keymap-item-Sequencer-Channels-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02600.py -- tests/files/web/generated/M21-GAP-02600-keymap-item-Sequencer-Channels-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02600", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02601", + "gapId": "keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02601-keymap-item-Sequencer-Channels-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02601.py -- tests/files/web/generated/M21-GAP-02601-keymap-item-Sequencer-Channels-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02601", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02602", + "gapId": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02602-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02602.py -- tests/files/web/generated/M21-GAP-02602-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02602", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02603", + "gapId": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02603-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02603.py -- tests/files/web/generated/M21-GAP-02603-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02603", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02604", + "gapId": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02604-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02604.py -- tests/files/web/generated/M21-GAP-02604-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02604", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02605", + "gapId": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02605-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02605.py -- tests/files/web/generated/M21-GAP-02605-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02605", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02606", + "gapId": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02606-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02606.py -- tests/files/web/generated/M21-GAP-02606-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02606", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02607", + "gapId": "keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02607-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02607.py -- tests/files/web/generated/M21-GAP-02607-keymap-item-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02607", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02608", + "gapId": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02608-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02608.py -- tests/files/web/generated/M21-GAP-02608-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02608", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02609", + "gapId": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02609-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02609.py -- tests/files/web/generated/M21-GAP-02609-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02609", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02610", + "gapId": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02610-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02610.py -- tests/files/web/generated/M21-GAP-02610-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02610", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02611", + "gapId": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02611-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02611.py -- tests/files/web/generated/M21-GAP-02611-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02611", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02612", + "gapId": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02612-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02612.py -- tests/files/web/generated/M21-GAP-02612-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02612", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02613", + "gapId": "keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02613-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02613.py -- tests/files/web/generated/M21-GAP-02613-keymap-item-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02613", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02614", + "gapId": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02614-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02614.py -- tests/files/web/generated/M21-GAP-02614-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02614", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02615", + "gapId": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02615-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02615.py -- tests/files/web/generated/M21-GAP-02615-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02615", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02616", + "gapId": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02616-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02616.py -- tests/files/web/generated/M21-GAP-02616-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02616", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02617", + "gapId": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02617-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02617.py -- tests/files/web/generated/M21-GAP-02617-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02617", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02618", + "gapId": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02618-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02618.py -- tests/files/web/generated/M21-GAP-02618-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02618", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02619", + "gapId": "keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02619-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02619.py -- tests/files/web/generated/M21-GAP-02619-keymap-item-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02619", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02620", + "gapId": "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02620-keymap-item-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02620.py -- tests/files/web/generated/M21-GAP-02620-keymap-item-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02620", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02621", + "gapId": "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02621-keymap-item-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02621.py -- tests/files/web/generated/M21-GAP-02621-keymap-item-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02621", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02622", + "gapId": "keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02622-keymap-item-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02622.py -- tests/files/web/generated/M21-GAP-02622-keymap-item-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02622", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02623", + "gapId": "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02623-keymap-item-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02623.py -- tests/files/web/generated/M21-GAP-02623-keymap-item-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02623", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02624", + "gapId": "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02624-keymap-item-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02624.py -- tests/files/web/generated/M21-GAP-02624-keymap-item-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02624", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02625", + "gapId": "keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02625-keymap-item-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02625.py -- tests/files/web/generated/M21-GAP-02625-keymap-item-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02625", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02626", + "gapId": "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02626-keymap-item-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02626.py -- tests/files/web/generated/M21-GAP-02626-keymap-item-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02626", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02626", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02627", + "gapId": "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02627-keymap-item-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02627.py -- tests/files/web/generated/M21-GAP-02627-keymap-item-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02627", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02627", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02628", + "gapId": "keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02628-keymap-item-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02628.py -- tests/files/web/generated/M21-GAP-02628-keymap-item-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02628", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02628", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02629", + "gapId": "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02629-keymap-item-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02629.py -- tests/files/web/generated/M21-GAP-02629-keymap-item-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02629", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02629", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02630", + "gapId": "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02630-keymap-item-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02630.py -- tests/files/web/generated/M21-GAP-02630-keymap-item-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02630", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02630", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02631", + "gapId": "keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02631-keymap-item-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02631.py -- tests/files/web/generated/M21-GAP-02631-keymap-item-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02631", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02631", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02632", + "gapId": "keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02632-keymap-item-Sequencer-Tool-Slip-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02632.py -- tests/files/web/generated/M21-GAP-02632-keymap-item-Sequencer-Tool-Slip-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02632", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02632", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02633", + "gapId": "keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02633-keymap-item-Sequencer-Tool-Slip-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02633.py -- tests/files/web/generated/M21-GAP-02633-keymap-item-Sequencer-Tool-Slip-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02633", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02633", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02634", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02634-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02634.py -- tests/files/web/generated/M21-GAP-02634-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02634", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02634", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02635", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02635-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02635.py -- tests/files/web/generated/M21-GAP-02635-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02635", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02635", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02636", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02636-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02636.py -- tests/files/web/generated/M21-GAP-02636-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02636", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02636", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02637", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02637-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02637.py -- tests/files/web/generated/M21-GAP-02637-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02637", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02637", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02638", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02638-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02638.py -- tests/files/web/generated/M21-GAP-02638-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02638", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02638", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02639", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02639-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02639.py -- tests/files/web/generated/M21-GAP-02639-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02639", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02639", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02640", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02640-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02640.py -- tests/files/web/generated/M21-GAP-02640-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02640", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02640", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02641", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02641-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02641.py -- tests/files/web/generated/M21-GAP-02641-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02641", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02641", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02642", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02642-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02642.py -- tests/files/web/generated/M21-GAP-02642-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02642", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02642", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02643", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02643-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02643.py -- tests/files/web/generated/M21-GAP-02643-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02643", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02643", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02644", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02644-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02644.py -- tests/files/web/generated/M21-GAP-02644-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02644", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02644", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02645", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02645-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02645.py -- tests/files/web/generated/M21-GAP-02645-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02645", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02645", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02646", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02646-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02646.py -- tests/files/web/generated/M21-GAP-02646-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02646", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02646", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02647", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02647-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02647.py -- tests/files/web/generated/M21-GAP-02647-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02647", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02647", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02648", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02648-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02648.py -- tests/files/web/generated/M21-GAP-02648-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02648", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02648", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02649", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02649-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02649.py -- tests/files/web/generated/M21-GAP-02649-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02649", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02649", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02650", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02650-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02650.py -- tests/files/web/generated/M21-GAP-02650-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02650", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02650", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02651", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02651-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02651.py -- tests/files/web/generated/M21-GAP-02651-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02651", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02651", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02652", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02652-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02652.py -- tests/files/web/generated/M21-GAP-02652-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02652", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02652", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02653", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02653-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02653.py -- tests/files/web/generated/M21-GAP-02653-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02653", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02653", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02654", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02654-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02654.py -- tests/files/web/generated/M21-GAP-02654-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02654", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02654", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02655", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02655-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02655.py -- tests/files/web/generated/M21-GAP-02655-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02655", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02655", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02656", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02656-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02656.py -- tests/files/web/generated/M21-GAP-02656-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02656", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02656", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02657", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02657-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02657.py -- tests/files/web/generated/M21-GAP-02657-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02657", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02657", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02658", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02658-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02658.py -- tests/files/web/generated/M21-GAP-02658-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02658", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02658", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02659", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02659-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02659.py -- tests/files/web/generated/M21-GAP-02659-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02659", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02659", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02660", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02660-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02660.py -- tests/files/web/generated/M21-GAP-02660-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02660", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02660", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02661", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02661-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02661.py -- tests/files/web/generated/M21-GAP-02661-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02661", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02661", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02662", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02662-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02662.py -- tests/files/web/generated/M21-GAP-02662-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02662", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02662", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02663", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02663-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02663.py -- tests/files/web/generated/M21-GAP-02663-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02663", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02663", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02664", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02664-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02664.py -- tests/files/web/generated/M21-GAP-02664-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02664", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02664", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02665", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02665-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02665.py -- tests/files/web/generated/M21-GAP-02665-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02665", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02665", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02666", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02666-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02666.py -- tests/files/web/generated/M21-GAP-02666-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02666", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02666", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02667", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02667-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02667.py -- tests/files/web/generated/M21-GAP-02667-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02667", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02667", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02668", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02668-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02668.py -- tests/files/web/generated/M21-GAP-02668-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02668", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02668", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02669", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02669-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02669.py -- tests/files/web/generated/M21-GAP-02669-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02669", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02669", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02670", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02670-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02670.py -- tests/files/web/generated/M21-GAP-02670-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02670", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02670", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02671", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02671-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02671.py -- tests/files/web/generated/M21-GAP-02671-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02671", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02671", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02672", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02672-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02672.py -- tests/files/web/generated/M21-GAP-02672-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02672", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02672", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02673", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02673-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02673.py -- tests/files/web/generated/M21-GAP-02673-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02673", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02673", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02674", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02674-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02674.py -- tests/files/web/generated/M21-GAP-02674-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02674", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02674", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02675", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02675-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02675.py -- tests/files/web/generated/M21-GAP-02675-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02675", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02675", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02676", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02676-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02676.py -- tests/files/web/generated/M21-GAP-02676-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02676", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02676", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02677", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02677-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02677.py -- tests/files/web/generated/M21-GAP-02677-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02677", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02677", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02678", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02678-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02678.py -- tests/files/web/generated/M21-GAP-02678-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02678", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02678", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02679", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02679-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02679.py -- tests/files/web/generated/M21-GAP-02679-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02679", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02679", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02680", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02680-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02680.py -- tests/files/web/generated/M21-GAP-02680-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02680", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02680", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02681", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02681-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02681.py -- tests/files/web/generated/M21-GAP-02681-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02681", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02681", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02682", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02682-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02682.py -- tests/files/web/generated/M21-GAP-02682-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02682", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02682", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02683", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02683-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02683.py -- tests/files/web/generated/M21-GAP-02683-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02683", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02683", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02684", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02684-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02684.py -- tests/files/web/generated/M21-GAP-02684-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02684", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02684", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02685", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02685-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02685.py -- tests/files/web/generated/M21-GAP-02685-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02685", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02685", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02686", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02686-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02686.py -- tests/files/web/generated/M21-GAP-02686-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02686", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02686", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02687", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02687-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02687.py -- tests/files/web/generated/M21-GAP-02687-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02687", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02687", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02688", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02688-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02688.py -- tests/files/web/generated/M21-GAP-02688-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02688", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02688", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02689", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02689-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02689.py -- tests/files/web/generated/M21-GAP-02689-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02689", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02689", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02690", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02690-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02690.py -- tests/files/web/generated/M21-GAP-02690-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02690", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02690", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02691", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02691-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02691.py -- tests/files/web/generated/M21-GAP-02691-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02691", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02691", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02692", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02692-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02692.py -- tests/files/web/generated/M21-GAP-02692-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02692", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02692", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02693", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02693-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02693.py -- tests/files/web/generated/M21-GAP-02693-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02693", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02693", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02694", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02694-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02694.py -- tests/files/web/generated/M21-GAP-02694-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02694", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02694", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02695", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02695-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02695.py -- tests/files/web/generated/M21-GAP-02695-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02695", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02695", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02696", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02696-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02696.py -- tests/files/web/generated/M21-GAP-02696-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02696", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02696", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02697", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02697-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02697.py -- tests/files/web/generated/M21-GAP-02697-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02697", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02697", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02698", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02698-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02698.py -- tests/files/web/generated/M21-GAP-02698-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02698", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02698", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02699", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02699-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02699.py -- tests/files/web/generated/M21-GAP-02699-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02699", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02699", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02700", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02700-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02700.py -- tests/files/web/generated/M21-GAP-02700-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02700", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02700", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02701", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02701-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02701.py -- tests/files/web/generated/M21-GAP-02701-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02701", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02701", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02702", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02702-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02702.py -- tests/files/web/generated/M21-GAP-02702-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02702", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02702", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02703", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02703-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02703.py -- tests/files/web/generated/M21-GAP-02703-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02703", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02703", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02704", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02704-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02704.py -- tests/files/web/generated/M21-GAP-02704-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02704", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02704", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02705", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02705-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02705.py -- tests/files/web/generated/M21-GAP-02705-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02705", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02705", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02706", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02706-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02706.py -- tests/files/web/generated/M21-GAP-02706-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02706", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02706", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02707", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02707-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02707.py -- tests/files/web/generated/M21-GAP-02707-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02707", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02707", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02708", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02708-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02708.py -- tests/files/web/generated/M21-GAP-02708-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02708", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02708", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02709", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02709-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02709.py -- tests/files/web/generated/M21-GAP-02709-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02709", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02709", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02710", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02710-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02710.py -- tests/files/web/generated/M21-GAP-02710-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02710", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02710", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02711", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02711-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02711.py -- tests/files/web/generated/M21-GAP-02711-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02711", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02711", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02712", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02712-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02712.py -- tests/files/web/generated/M21-GAP-02712-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02712", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02712", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02713", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02713-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02713.py -- tests/files/web/generated/M21-GAP-02713-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02713", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02713", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02714", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02714-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02714.py -- tests/files/web/generated/M21-GAP-02714-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02714", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02714", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02715", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02715-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02715.py -- tests/files/web/generated/M21-GAP-02715-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02715", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02715", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02716", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02716-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02716.py -- tests/files/web/generated/M21-GAP-02716-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02716", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02716", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02717", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02717-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02717.py -- tests/files/web/generated/M21-GAP-02717-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02717", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02717", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02718", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02718-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02718.py -- tests/files/web/generated/M21-GAP-02718-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02718", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02718", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02719", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02719-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02719.py -- tests/files/web/generated/M21-GAP-02719-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02719", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02719", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02720", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02720-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02720.py -- tests/files/web/generated/M21-GAP-02720-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02720", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02720", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02721", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:88", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02721-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-88.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02721.py -- tests/files/web/generated/M21-GAP-02721-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-88.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02721", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02721", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02722", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:89", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02722-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-89.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02722.py -- tests/files/web/generated/M21-GAP-02722-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-89.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02722", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02722", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02723", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02723-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02723.py -- tests/files/web/generated/M21-GAP-02723-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02723", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02723", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02724", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:90", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02724-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-90.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02724.py -- tests/files/web/generated/M21-GAP-02724-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-90.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02724", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02724", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02725", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:91", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02725-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-91.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02725.py -- tests/files/web/generated/M21-GAP-02725-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-91.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02725", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02725", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02726", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:92", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02726-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-92.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02726.py -- tests/files/web/generated/M21-GAP-02726-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-92.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02726", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02726", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02727", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:93", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02727-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-93.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02727.py -- tests/files/web/generated/M21-GAP-02727-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-93.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02727", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02727", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02728", + "gapId": "keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:94", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02728-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-94.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02728.py -- tests/files/web/generated/M21-GAP-02728-keymap-item-Sequencer-SEQUENCE_EDITOR-WINDOW-94.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02728", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02728", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02729", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02729-keymap-item-Slip-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02729.py -- tests/files/web/generated/M21-GAP-02729-keymap-item-Slip-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02729", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02729", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02730", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02730-keymap-item-Slip-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02730.py -- tests/files/web/generated/M21-GAP-02730-keymap-item-Slip-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02730", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02730", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02731", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02731-keymap-item-Slip-Modal-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02731.py -- tests/files/web/generated/M21-GAP-02731-keymap-item-Slip-Modal-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02731", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02731", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02732", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02732-keymap-item-Slip-Modal-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02732.py -- tests/files/web/generated/M21-GAP-02732-keymap-item-Slip-Modal-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02732", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02732", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02733", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02733-keymap-item-Slip-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02733.py -- tests/files/web/generated/M21-GAP-02733-keymap-item-Slip-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02733", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02733", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02734", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02734-keymap-item-Slip-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02734.py -- tests/files/web/generated/M21-GAP-02734-keymap-item-Slip-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02734", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02734", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02735", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02735-keymap-item-Slip-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02735.py -- tests/files/web/generated/M21-GAP-02735-keymap-item-Slip-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02735", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02735", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02736", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02736-keymap-item-Slip-Modal-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02736.py -- tests/files/web/generated/M21-GAP-02736-keymap-item-Slip-Modal-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02736", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02736", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02737", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02737-keymap-item-Slip-Modal-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02737.py -- tests/files/web/generated/M21-GAP-02737-keymap-item-Slip-Modal-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02737", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02737", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02738", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02738-keymap-item-Slip-Modal-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02738.py -- tests/files/web/generated/M21-GAP-02738-keymap-item-Slip-Modal-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02738", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02738", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02739", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02739-keymap-item-Slip-Modal-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02739.py -- tests/files/web/generated/M21-GAP-02739-keymap-item-Slip-Modal-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02739", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02739", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02740", + "gapId": "keymap-item:Slip Modal:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02740-keymap-item-Slip-Modal-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02740.py -- tests/files/web/generated/M21-GAP-02740-keymap-item-Slip-Modal-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02740", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02740", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02741", + "gapId": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02741-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02741.py -- tests/files/web/generated/M21-GAP-02741-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02741", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02741", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02742", + "gapId": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02742-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02742.py -- tests/files/web/generated/M21-GAP-02742-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02742", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02742", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02743", + "gapId": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02743-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02743.py -- tests/files/web/generated/M21-GAP-02743-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02743", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02743", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02744", + "gapId": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02744-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02744.py -- tests/files/web/generated/M21-GAP-02744-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02744", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02744", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02745", + "gapId": "keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02745-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02745.py -- tests/files/web/generated/M21-GAP-02745-keymap-item-Spreadsheet-Generic-SPREADSHEET-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02745", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02745", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02746", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02746-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02746.py -- tests/files/web/generated/M21-GAP-02746-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02746", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02746", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02747", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02747-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02747.py -- tests/files/web/generated/M21-GAP-02747-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02747", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02747", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02748", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02748-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02748.py -- tests/files/web/generated/M21-GAP-02748-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02748", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02748", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02749", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02749-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02749.py -- tests/files/web/generated/M21-GAP-02749-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02749", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02749", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02750", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02750-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02750.py -- tests/files/web/generated/M21-GAP-02750-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02750", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02750", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02751", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02751-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02751.py -- tests/files/web/generated/M21-GAP-02751-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02751", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02751", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02752", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02752-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02752.py -- tests/files/web/generated/M21-GAP-02752-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02752", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02752", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02753", + "gapId": "keymap-item:Standard Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02753-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02753.py -- tests/files/web/generated/M21-GAP-02753-keymap-item-Standard-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02753", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02753", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02754", + "gapId": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02754-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02754.py -- tests/files/web/generated/M21-GAP-02754-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02754", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02754", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02755", + "gapId": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02755-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02755.py -- tests/files/web/generated/M21-GAP-02755-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02755", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02755", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02756", + "gapId": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02756-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02756.py -- tests/files/web/generated/M21-GAP-02756-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02756", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02756", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02757", + "gapId": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02757-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02757.py -- tests/files/web/generated/M21-GAP-02757-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02757", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02757", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02758", + "gapId": "keymap-item:Text Generic:TEXT_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02758-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02758.py -- tests/files/web/generated/M21-GAP-02758-keymap-item-Text-Generic-TEXT_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02758", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02758", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02759", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02759-keymap-item-Text-TEXT_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02759.py -- tests/files/web/generated/M21-GAP-02759-keymap-item-Text-TEXT_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02759", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02759", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02760", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02760-keymap-item-Text-TEXT_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02760.py -- tests/files/web/generated/M21-GAP-02760-keymap-item-Text-TEXT_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02760", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02760", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02761", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02761-keymap-item-Text-TEXT_EDITOR-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02761.py -- tests/files/web/generated/M21-GAP-02761-keymap-item-Text-TEXT_EDITOR-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02761", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02761", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02762", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02762-keymap-item-Text-TEXT_EDITOR-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02762.py -- tests/files/web/generated/M21-GAP-02762-keymap-item-Text-TEXT_EDITOR-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02762", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02762", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02763", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02763-keymap-item-Text-TEXT_EDITOR-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02763.py -- tests/files/web/generated/M21-GAP-02763-keymap-item-Text-TEXT_EDITOR-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02763", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02763", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02764", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02764-keymap-item-Text-TEXT_EDITOR-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02764.py -- tests/files/web/generated/M21-GAP-02764-keymap-item-Text-TEXT_EDITOR-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02764", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02764", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02765", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02765-keymap-item-Text-TEXT_EDITOR-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02765.py -- tests/files/web/generated/M21-GAP-02765-keymap-item-Text-TEXT_EDITOR-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02765", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02765", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02766", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02766-keymap-item-Text-TEXT_EDITOR-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02766.py -- tests/files/web/generated/M21-GAP-02766-keymap-item-Text-TEXT_EDITOR-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02766", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02766", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02767", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02767-keymap-item-Text-TEXT_EDITOR-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02767.py -- tests/files/web/generated/M21-GAP-02767-keymap-item-Text-TEXT_EDITOR-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02767", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02767", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02768", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02768-keymap-item-Text-TEXT_EDITOR-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02768.py -- tests/files/web/generated/M21-GAP-02768-keymap-item-Text-TEXT_EDITOR-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02768", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02768", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02769", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02769-keymap-item-Text-TEXT_EDITOR-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02769.py -- tests/files/web/generated/M21-GAP-02769-keymap-item-Text-TEXT_EDITOR-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02769", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02769", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02770", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02770-keymap-item-Text-TEXT_EDITOR-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02770.py -- tests/files/web/generated/M21-GAP-02770-keymap-item-Text-TEXT_EDITOR-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02770", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02770", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02771", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02771-keymap-item-Text-TEXT_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02771.py -- tests/files/web/generated/M21-GAP-02771-keymap-item-Text-TEXT_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02771", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02771", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02772", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02772-keymap-item-Text-TEXT_EDITOR-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02772.py -- tests/files/web/generated/M21-GAP-02772-keymap-item-Text-TEXT_EDITOR-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02772", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02772", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02773", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02773-keymap-item-Text-TEXT_EDITOR-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02773.py -- tests/files/web/generated/M21-GAP-02773-keymap-item-Text-TEXT_EDITOR-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02773", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02773", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02774", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02774-keymap-item-Text-TEXT_EDITOR-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02774.py -- tests/files/web/generated/M21-GAP-02774-keymap-item-Text-TEXT_EDITOR-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02774", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02774", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02775", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02775-keymap-item-Text-TEXT_EDITOR-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02775.py -- tests/files/web/generated/M21-GAP-02775-keymap-item-Text-TEXT_EDITOR-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02775", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02775", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02776", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02776-keymap-item-Text-TEXT_EDITOR-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02776.py -- tests/files/web/generated/M21-GAP-02776-keymap-item-Text-TEXT_EDITOR-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02776", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02776", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02777", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02777-keymap-item-Text-TEXT_EDITOR-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02777.py -- tests/files/web/generated/M21-GAP-02777-keymap-item-Text-TEXT_EDITOR-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02777", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02777", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02778", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02778-keymap-item-Text-TEXT_EDITOR-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02778.py -- tests/files/web/generated/M21-GAP-02778-keymap-item-Text-TEXT_EDITOR-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02778", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02778", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02779", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02779-keymap-item-Text-TEXT_EDITOR-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02779.py -- tests/files/web/generated/M21-GAP-02779-keymap-item-Text-TEXT_EDITOR-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02779", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02779", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02780", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02780-keymap-item-Text-TEXT_EDITOR-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02780.py -- tests/files/web/generated/M21-GAP-02780-keymap-item-Text-TEXT_EDITOR-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02780", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02780", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02781", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02781-keymap-item-Text-TEXT_EDITOR-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02781.py -- tests/files/web/generated/M21-GAP-02781-keymap-item-Text-TEXT_EDITOR-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02781", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02781", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02782", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02782-keymap-item-Text-TEXT_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02782.py -- tests/files/web/generated/M21-GAP-02782-keymap-item-Text-TEXT_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02782", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02782", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02783", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02783-keymap-item-Text-TEXT_EDITOR-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02783.py -- tests/files/web/generated/M21-GAP-02783-keymap-item-Text-TEXT_EDITOR-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02783", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02783", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02784", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02784-keymap-item-Text-TEXT_EDITOR-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02784.py -- tests/files/web/generated/M21-GAP-02784-keymap-item-Text-TEXT_EDITOR-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02784", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02784", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02785", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02785-keymap-item-Text-TEXT_EDITOR-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02785.py -- tests/files/web/generated/M21-GAP-02785-keymap-item-Text-TEXT_EDITOR-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02785", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02785", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02786", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02786-keymap-item-Text-TEXT_EDITOR-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02786.py -- tests/files/web/generated/M21-GAP-02786-keymap-item-Text-TEXT_EDITOR-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02786", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02786", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02787", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02787-keymap-item-Text-TEXT_EDITOR-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02787.py -- tests/files/web/generated/M21-GAP-02787-keymap-item-Text-TEXT_EDITOR-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02787", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02787", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02788", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02788-keymap-item-Text-TEXT_EDITOR-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02788.py -- tests/files/web/generated/M21-GAP-02788-keymap-item-Text-TEXT_EDITOR-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02788", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02788", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02789", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02789-keymap-item-Text-TEXT_EDITOR-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02789.py -- tests/files/web/generated/M21-GAP-02789-keymap-item-Text-TEXT_EDITOR-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02789", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02789", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02790", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02790-keymap-item-Text-TEXT_EDITOR-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02790.py -- tests/files/web/generated/M21-GAP-02790-keymap-item-Text-TEXT_EDITOR-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02790", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02790", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02791", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02791-keymap-item-Text-TEXT_EDITOR-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02791.py -- tests/files/web/generated/M21-GAP-02791-keymap-item-Text-TEXT_EDITOR-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02791", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02791", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02792", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02792-keymap-item-Text-TEXT_EDITOR-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02792.py -- tests/files/web/generated/M21-GAP-02792-keymap-item-Text-TEXT_EDITOR-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02792", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02792", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02793", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02793-keymap-item-Text-TEXT_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02793.py -- tests/files/web/generated/M21-GAP-02793-keymap-item-Text-TEXT_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02793", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02793", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02794", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02794-keymap-item-Text-TEXT_EDITOR-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02794.py -- tests/files/web/generated/M21-GAP-02794-keymap-item-Text-TEXT_EDITOR-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02794", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02794", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02795", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02795-keymap-item-Text-TEXT_EDITOR-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02795.py -- tests/files/web/generated/M21-GAP-02795-keymap-item-Text-TEXT_EDITOR-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02795", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02795", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02796", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02796-keymap-item-Text-TEXT_EDITOR-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02796.py -- tests/files/web/generated/M21-GAP-02796-keymap-item-Text-TEXT_EDITOR-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02796", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02796", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02797", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02797-keymap-item-Text-TEXT_EDITOR-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02797.py -- tests/files/web/generated/M21-GAP-02797-keymap-item-Text-TEXT_EDITOR-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02797", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02797", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02798", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02798-keymap-item-Text-TEXT_EDITOR-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02798.py -- tests/files/web/generated/M21-GAP-02798-keymap-item-Text-TEXT_EDITOR-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02798", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02798", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02799", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02799-keymap-item-Text-TEXT_EDITOR-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02799.py -- tests/files/web/generated/M21-GAP-02799-keymap-item-Text-TEXT_EDITOR-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02799", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02799", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02800", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02800-keymap-item-Text-TEXT_EDITOR-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02800.py -- tests/files/web/generated/M21-GAP-02800-keymap-item-Text-TEXT_EDITOR-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02800", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02800", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02801", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02801-keymap-item-Text-TEXT_EDITOR-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02801.py -- tests/files/web/generated/M21-GAP-02801-keymap-item-Text-TEXT_EDITOR-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02801", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02801", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02802", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02802-keymap-item-Text-TEXT_EDITOR-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02802.py -- tests/files/web/generated/M21-GAP-02802-keymap-item-Text-TEXT_EDITOR-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02802", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02802", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02803", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02803-keymap-item-Text-TEXT_EDITOR-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02803.py -- tests/files/web/generated/M21-GAP-02803-keymap-item-Text-TEXT_EDITOR-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02803", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02803", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02804", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02804-keymap-item-Text-TEXT_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02804.py -- tests/files/web/generated/M21-GAP-02804-keymap-item-Text-TEXT_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02804", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02804", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02805", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02805-keymap-item-Text-TEXT_EDITOR-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02805.py -- tests/files/web/generated/M21-GAP-02805-keymap-item-Text-TEXT_EDITOR-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02805", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02805", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02806", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02806-keymap-item-Text-TEXT_EDITOR-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02806.py -- tests/files/web/generated/M21-GAP-02806-keymap-item-Text-TEXT_EDITOR-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02806", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02806", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02807", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02807-keymap-item-Text-TEXT_EDITOR-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02807.py -- tests/files/web/generated/M21-GAP-02807-keymap-item-Text-TEXT_EDITOR-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02807", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02807", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02808", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02808-keymap-item-Text-TEXT_EDITOR-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02808.py -- tests/files/web/generated/M21-GAP-02808-keymap-item-Text-TEXT_EDITOR-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02808", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02808", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02809", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02809-keymap-item-Text-TEXT_EDITOR-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02809.py -- tests/files/web/generated/M21-GAP-02809-keymap-item-Text-TEXT_EDITOR-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02809", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02809", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02810", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02810-keymap-item-Text-TEXT_EDITOR-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02810.py -- tests/files/web/generated/M21-GAP-02810-keymap-item-Text-TEXT_EDITOR-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02810", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02810", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02811", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02811-keymap-item-Text-TEXT_EDITOR-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02811.py -- tests/files/web/generated/M21-GAP-02811-keymap-item-Text-TEXT_EDITOR-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02811", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02811", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02812", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02812-keymap-item-Text-TEXT_EDITOR-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02812.py -- tests/files/web/generated/M21-GAP-02812-keymap-item-Text-TEXT_EDITOR-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02812", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02812", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02813", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02813-keymap-item-Text-TEXT_EDITOR-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02813.py -- tests/files/web/generated/M21-GAP-02813-keymap-item-Text-TEXT_EDITOR-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02813", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02813", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02814", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02814-keymap-item-Text-TEXT_EDITOR-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02814.py -- tests/files/web/generated/M21-GAP-02814-keymap-item-Text-TEXT_EDITOR-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02814", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02814", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02815", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02815-keymap-item-Text-TEXT_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02815.py -- tests/files/web/generated/M21-GAP-02815-keymap-item-Text-TEXT_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02815", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02815", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02816", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02816-keymap-item-Text-TEXT_EDITOR-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02816.py -- tests/files/web/generated/M21-GAP-02816-keymap-item-Text-TEXT_EDITOR-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02816", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02816", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02817", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02817-keymap-item-Text-TEXT_EDITOR-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02817.py -- tests/files/web/generated/M21-GAP-02817-keymap-item-Text-TEXT_EDITOR-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02817", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02817", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02818", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02818-keymap-item-Text-TEXT_EDITOR-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02818.py -- tests/files/web/generated/M21-GAP-02818-keymap-item-Text-TEXT_EDITOR-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02818", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02818", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02819", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02819-keymap-item-Text-TEXT_EDITOR-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02819.py -- tests/files/web/generated/M21-GAP-02819-keymap-item-Text-TEXT_EDITOR-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02819", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02819", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02820", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02820-keymap-item-Text-TEXT_EDITOR-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02820.py -- tests/files/web/generated/M21-GAP-02820-keymap-item-Text-TEXT_EDITOR-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02820", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02820", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02821", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02821-keymap-item-Text-TEXT_EDITOR-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02821.py -- tests/files/web/generated/M21-GAP-02821-keymap-item-Text-TEXT_EDITOR-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02821", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02821", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02822", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02822-keymap-item-Text-TEXT_EDITOR-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02822.py -- tests/files/web/generated/M21-GAP-02822-keymap-item-Text-TEXT_EDITOR-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02822", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02822", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02823", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02823-keymap-item-Text-TEXT_EDITOR-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02823.py -- tests/files/web/generated/M21-GAP-02823-keymap-item-Text-TEXT_EDITOR-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02823", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02823", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02824", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02824-keymap-item-Text-TEXT_EDITOR-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02824.py -- tests/files/web/generated/M21-GAP-02824-keymap-item-Text-TEXT_EDITOR-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02824", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02824", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02825", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02825-keymap-item-Text-TEXT_EDITOR-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02825.py -- tests/files/web/generated/M21-GAP-02825-keymap-item-Text-TEXT_EDITOR-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02825", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02825", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02826", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02826-keymap-item-Text-TEXT_EDITOR-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02826.py -- tests/files/web/generated/M21-GAP-02826-keymap-item-Text-TEXT_EDITOR-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02826", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02826", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02827", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02827-keymap-item-Text-TEXT_EDITOR-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02827.py -- tests/files/web/generated/M21-GAP-02827-keymap-item-Text-TEXT_EDITOR-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02827", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02827", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02828", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02828-keymap-item-Text-TEXT_EDITOR-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02828.py -- tests/files/web/generated/M21-GAP-02828-keymap-item-Text-TEXT_EDITOR-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02828", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02828", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02829", + "gapId": "keymap-item:Text:TEXT_EDITOR:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02829-keymap-item-Text-TEXT_EDITOR-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02829.py -- tests/files/web/generated/M21-GAP-02829-keymap-item-Text-TEXT_EDITOR-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02829", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02829", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02830", + "gapId": "keymap-item:Time Scrub:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02830-keymap-item-Time-Scrub-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02830.py -- tests/files/web/generated/M21-GAP-02830-keymap-item-Time-Scrub-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02830", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02830", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02831", + "gapId": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02831-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02831.py -- tests/files/web/generated/M21-GAP-02831-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02831", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02831", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02832", + "gapId": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02832-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02832.py -- tests/files/web/generated/M21-GAP-02832-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02832", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02832", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02833", + "gapId": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02833-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02833.py -- tests/files/web/generated/M21-GAP-02833-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02833", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02833", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02834", + "gapId": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02834-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02834.py -- tests/files/web/generated/M21-GAP-02834-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02834", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02834", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02835", + "gapId": "keymap-item:Toolbar Popup:EMPTY:TEMPORARY:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02835-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02835.py -- tests/files/web/generated/M21-GAP-02835-keymap-item-Toolbar-Popup-EMPTY-TEMPORARY-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02835", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02835", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02836", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02836-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02836.py -- tests/files/web/generated/M21-GAP-02836-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02836", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02836", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02837", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02837-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02837.py -- tests/files/web/generated/M21-GAP-02837-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02837", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02837", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02838", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02838-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02838.py -- tests/files/web/generated/M21-GAP-02838-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02838", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02838", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02839", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02839-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02839.py -- tests/files/web/generated/M21-GAP-02839-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02839", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02839", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02840", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02840-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02840.py -- tests/files/web/generated/M21-GAP-02840-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02840", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02840", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02841", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02841-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02841.py -- tests/files/web/generated/M21-GAP-02841-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02841", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02841", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02842", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02842-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02842.py -- tests/files/web/generated/M21-GAP-02842-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02842", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02842", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02843", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02843-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02843.py -- tests/files/web/generated/M21-GAP-02843-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02843", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02843", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02844", + "gapId": "keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02844-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02844.py -- tests/files/web/generated/M21-GAP-02844-keymap-item-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02844", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02844", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02845", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02845-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02845.py -- tests/files/web/generated/M21-GAP-02845-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02845", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02845", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02846", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02846-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02846.py -- tests/files/web/generated/M21-GAP-02846-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02846", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02846", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02847", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02847-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02847.py -- tests/files/web/generated/M21-GAP-02847-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02847", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02847", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02848", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02848-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02848.py -- tests/files/web/generated/M21-GAP-02848-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02848", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02848", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02849", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02849-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02849.py -- tests/files/web/generated/M21-GAP-02849-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02849", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02849", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02850", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02850-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02850.py -- tests/files/web/generated/M21-GAP-02850-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02850", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02850", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02851", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02851-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02851.py -- tests/files/web/generated/M21-GAP-02851-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02851", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02851", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02852", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02852-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02852.py -- tests/files/web/generated/M21-GAP-02852-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02852", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02852", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02853", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02853-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02853.py -- tests/files/web/generated/M21-GAP-02853-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02853", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02853", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02854", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02854-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02854.py -- tests/files/web/generated/M21-GAP-02854-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02854", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02854", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02855", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02855-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02855.py -- tests/files/web/generated/M21-GAP-02855-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02855", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02855", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02856", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02856-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02856.py -- tests/files/web/generated/M21-GAP-02856-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02856", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02856", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02857", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02857-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02857.py -- tests/files/web/generated/M21-GAP-02857-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02857", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02857", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02858", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02858-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02858.py -- tests/files/web/generated/M21-GAP-02858-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02858", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02858", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02859", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02859-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02859.py -- tests/files/web/generated/M21-GAP-02859-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02859", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02859", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02860", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02860-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02860.py -- tests/files/web/generated/M21-GAP-02860-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02860", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02860", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02861", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02861-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02861.py -- tests/files/web/generated/M21-GAP-02861-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02861", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02861", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02862", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02862-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02862.py -- tests/files/web/generated/M21-GAP-02862-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02862", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02862", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02863", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02863-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02863.py -- tests/files/web/generated/M21-GAP-02863-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02863", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02863", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02864", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02864-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02864.py -- tests/files/web/generated/M21-GAP-02864-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02864", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02864", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02865", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02865-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02865.py -- tests/files/web/generated/M21-GAP-02865-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02865", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02865", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02866", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02866-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02866.py -- tests/files/web/generated/M21-GAP-02866-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02866", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02866", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02867", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02867-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02867.py -- tests/files/web/generated/M21-GAP-02867-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02867", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02867", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02868", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02868-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02868.py -- tests/files/web/generated/M21-GAP-02868-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02868", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02868", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02869", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02869-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02869.py -- tests/files/web/generated/M21-GAP-02869-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02869", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02869", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02870", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02870-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02870.py -- tests/files/web/generated/M21-GAP-02870-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02870", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02870", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02871", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02871-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02871.py -- tests/files/web/generated/M21-GAP-02871-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02871", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02871", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02872", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02872-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02872.py -- tests/files/web/generated/M21-GAP-02872-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02872", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02872", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02873", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02873-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02873.py -- tests/files/web/generated/M21-GAP-02873-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02873", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02873", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02874", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02874-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02874.py -- tests/files/web/generated/M21-GAP-02874-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02874", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02874", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02875", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02875-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02875.py -- tests/files/web/generated/M21-GAP-02875-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02875", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02875", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02876", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02876-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02876.py -- tests/files/web/generated/M21-GAP-02876-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02876", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02876", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02877", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02877-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02877.py -- tests/files/web/generated/M21-GAP-02877-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02877", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02877", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02878", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02878-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02878.py -- tests/files/web/generated/M21-GAP-02878-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02878", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02878", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02879", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02879-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02879.py -- tests/files/web/generated/M21-GAP-02879-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02879", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02879", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02880", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02880-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02880.py -- tests/files/web/generated/M21-GAP-02880-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02880", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02880", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02881", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02881-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02881.py -- tests/files/web/generated/M21-GAP-02881-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02881", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02881", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02882", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02882-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02882.py -- tests/files/web/generated/M21-GAP-02882-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02882", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02882", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02883", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02883-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02883.py -- tests/files/web/generated/M21-GAP-02883-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02883", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02883", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02884", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02884-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02884.py -- tests/files/web/generated/M21-GAP-02884-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02884", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02884", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02885", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02885-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02885.py -- tests/files/web/generated/M21-GAP-02885-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02885", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02885", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02886", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02886-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02886.py -- tests/files/web/generated/M21-GAP-02886-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02886", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02886", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02887", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02887-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02887.py -- tests/files/web/generated/M21-GAP-02887-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02887", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02887", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02888", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02888-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02888.py -- tests/files/web/generated/M21-GAP-02888-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02888", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02888", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02889", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02889-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02889.py -- tests/files/web/generated/M21-GAP-02889-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02889", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02889", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02890", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02890-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02890.py -- tests/files/web/generated/M21-GAP-02890-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02890", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02890", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02891", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02891-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02891.py -- tests/files/web/generated/M21-GAP-02891-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02891", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02891", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02892", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02892-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02892.py -- tests/files/web/generated/M21-GAP-02892-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02892", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02892", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02893", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02893-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02893.py -- tests/files/web/generated/M21-GAP-02893-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02893", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02893", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02894", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02894-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02894.py -- tests/files/web/generated/M21-GAP-02894-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02894", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02894", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02895", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02895-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02895.py -- tests/files/web/generated/M21-GAP-02895-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02895", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02895", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02896", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02896-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02896.py -- tests/files/web/generated/M21-GAP-02896-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02896", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02896", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02897", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02897-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02897.py -- tests/files/web/generated/M21-GAP-02897-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02897", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02897", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02898", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02898-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02898.py -- tests/files/web/generated/M21-GAP-02898-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02898", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02898", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02899", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02899-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02899.py -- tests/files/web/generated/M21-GAP-02899-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02899", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02899", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02900", + "gapId": "keymap-item:Transform Modal Map:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02900-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02900.py -- tests/files/web/generated/M21-GAP-02900-keymap-item-Transform-Modal-Map-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02900", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02900", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02901", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02901-keymap-item-UV-Editor-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02901.py -- tests/files/web/generated/M21-GAP-02901-keymap-item-UV-Editor-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02901", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02901", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02902", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02902-keymap-item-UV-Editor-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02902.py -- tests/files/web/generated/M21-GAP-02902-keymap-item-UV-Editor-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02902", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02902", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02903", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02903-keymap-item-UV-Editor-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02903.py -- tests/files/web/generated/M21-GAP-02903-keymap-item-UV-Editor-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02903", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02903", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02904", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02904-keymap-item-UV-Editor-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02904.py -- tests/files/web/generated/M21-GAP-02904-keymap-item-UV-Editor-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02904", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02904", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02905", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02905-keymap-item-UV-Editor-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02905.py -- tests/files/web/generated/M21-GAP-02905-keymap-item-UV-Editor-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02905", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02905", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02906", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02906-keymap-item-UV-Editor-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02906.py -- tests/files/web/generated/M21-GAP-02906-keymap-item-UV-Editor-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02906", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02906", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02907", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02907-keymap-item-UV-Editor-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02907.py -- tests/files/web/generated/M21-GAP-02907-keymap-item-UV-Editor-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02907", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02907", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02908", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02908-keymap-item-UV-Editor-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02908.py -- tests/files/web/generated/M21-GAP-02908-keymap-item-UV-Editor-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02908", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02908", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02909", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02909-keymap-item-UV-Editor-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02909.py -- tests/files/web/generated/M21-GAP-02909-keymap-item-UV-Editor-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02909", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02909", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02910", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02910-keymap-item-UV-Editor-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02910.py -- tests/files/web/generated/M21-GAP-02910-keymap-item-UV-Editor-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02910", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02910", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02911", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02911-keymap-item-UV-Editor-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02911.py -- tests/files/web/generated/M21-GAP-02911-keymap-item-UV-Editor-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02911", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02911", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02912", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02912-keymap-item-UV-Editor-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02912.py -- tests/files/web/generated/M21-GAP-02912-keymap-item-UV-Editor-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02912", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02912", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02913", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02913-keymap-item-UV-Editor-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02913.py -- tests/files/web/generated/M21-GAP-02913-keymap-item-UV-Editor-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02913", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02913", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02914", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02914-keymap-item-UV-Editor-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02914.py -- tests/files/web/generated/M21-GAP-02914-keymap-item-UV-Editor-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02914", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02914", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02915", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02915-keymap-item-UV-Editor-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02915.py -- tests/files/web/generated/M21-GAP-02915-keymap-item-UV-Editor-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02915", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02915", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02916", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02916-keymap-item-UV-Editor-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02916.py -- tests/files/web/generated/M21-GAP-02916-keymap-item-UV-Editor-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02916", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02916", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02917", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02917-keymap-item-UV-Editor-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02917.py -- tests/files/web/generated/M21-GAP-02917-keymap-item-UV-Editor-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02917", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02917", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02918", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02918-keymap-item-UV-Editor-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02918.py -- tests/files/web/generated/M21-GAP-02918-keymap-item-UV-Editor-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02918", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02918", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02919", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02919-keymap-item-UV-Editor-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02919.py -- tests/files/web/generated/M21-GAP-02919-keymap-item-UV-Editor-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02919", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02919", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02920", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02920-keymap-item-UV-Editor-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02920.py -- tests/files/web/generated/M21-GAP-02920-keymap-item-UV-Editor-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02920", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02920", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02921", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02921-keymap-item-UV-Editor-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02921.py -- tests/files/web/generated/M21-GAP-02921-keymap-item-UV-Editor-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02921", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02921", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02922", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02922-keymap-item-UV-Editor-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02922.py -- tests/files/web/generated/M21-GAP-02922-keymap-item-UV-Editor-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02922", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02922", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02923", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02923-keymap-item-UV-Editor-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02923.py -- tests/files/web/generated/M21-GAP-02923-keymap-item-UV-Editor-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02923", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02923", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02924", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02924-keymap-item-UV-Editor-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02924.py -- tests/files/web/generated/M21-GAP-02924-keymap-item-UV-Editor-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02924", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02924", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02925", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02925-keymap-item-UV-Editor-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02925.py -- tests/files/web/generated/M21-GAP-02925-keymap-item-UV-Editor-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02925", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02925", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02926", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02926-keymap-item-UV-Editor-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02926.py -- tests/files/web/generated/M21-GAP-02926-keymap-item-UV-Editor-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02926", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02926", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02927", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02927-keymap-item-UV-Editor-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02927.py -- tests/files/web/generated/M21-GAP-02927-keymap-item-UV-Editor-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02927", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02927", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02928", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02928-keymap-item-UV-Editor-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02928.py -- tests/files/web/generated/M21-GAP-02928-keymap-item-UV-Editor-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02928", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02928", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02929", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02929-keymap-item-UV-Editor-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02929.py -- tests/files/web/generated/M21-GAP-02929-keymap-item-UV-Editor-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02929", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02929", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02930", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02930-keymap-item-UV-Editor-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02930.py -- tests/files/web/generated/M21-GAP-02930-keymap-item-UV-Editor-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02930", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02930", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02931", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02931-keymap-item-UV-Editor-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02931.py -- tests/files/web/generated/M21-GAP-02931-keymap-item-UV-Editor-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02931", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02931", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02932", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02932-keymap-item-UV-Editor-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02932.py -- tests/files/web/generated/M21-GAP-02932-keymap-item-UV-Editor-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02932", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02932", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02933", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02933-keymap-item-UV-Editor-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02933.py -- tests/files/web/generated/M21-GAP-02933-keymap-item-UV-Editor-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02933", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02933", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02934", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02934-keymap-item-UV-Editor-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02934.py -- tests/files/web/generated/M21-GAP-02934-keymap-item-UV-Editor-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02934", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02934", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02935", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02935-keymap-item-UV-Editor-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02935.py -- tests/files/web/generated/M21-GAP-02935-keymap-item-UV-Editor-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02935", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02935", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02936", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02936-keymap-item-UV-Editor-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02936.py -- tests/files/web/generated/M21-GAP-02936-keymap-item-UV-Editor-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02936", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02936", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02937", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02937-keymap-item-UV-Editor-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02937.py -- tests/files/web/generated/M21-GAP-02937-keymap-item-UV-Editor-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02937", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02937", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02938", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02938-keymap-item-UV-Editor-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02938.py -- tests/files/web/generated/M21-GAP-02938-keymap-item-UV-Editor-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02938", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02938", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02939", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02939-keymap-item-UV-Editor-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02939.py -- tests/files/web/generated/M21-GAP-02939-keymap-item-UV-Editor-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02939", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02939", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02940", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02940-keymap-item-UV-Editor-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02940.py -- tests/files/web/generated/M21-GAP-02940-keymap-item-UV-Editor-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02940", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02940", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02941", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02941-keymap-item-UV-Editor-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02941.py -- tests/files/web/generated/M21-GAP-02941-keymap-item-UV-Editor-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02941", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02941", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02942", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02942-keymap-item-UV-Editor-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02942.py -- tests/files/web/generated/M21-GAP-02942-keymap-item-UV-Editor-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02942", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02942", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02943", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02943-keymap-item-UV-Editor-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02943.py -- tests/files/web/generated/M21-GAP-02943-keymap-item-UV-Editor-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02943", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02943", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02944", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02944-keymap-item-UV-Editor-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02944.py -- tests/files/web/generated/M21-GAP-02944-keymap-item-UV-Editor-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02944", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02944", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02945", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02945-keymap-item-UV-Editor-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02945.py -- tests/files/web/generated/M21-GAP-02945-keymap-item-UV-Editor-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02945", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02945", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02946", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02946-keymap-item-UV-Editor-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02946.py -- tests/files/web/generated/M21-GAP-02946-keymap-item-UV-Editor-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02946", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02946", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02947", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:50", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02947-keymap-item-UV-Editor-EMPTY-WINDOW-50.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02947.py -- tests/files/web/generated/M21-GAP-02947-keymap-item-UV-Editor-EMPTY-WINDOW-50.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02947", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02947", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02948", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:51", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02948-keymap-item-UV-Editor-EMPTY-WINDOW-51.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02948.py -- tests/files/web/generated/M21-GAP-02948-keymap-item-UV-Editor-EMPTY-WINDOW-51.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02948", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02948", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02949", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:52", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02949-keymap-item-UV-Editor-EMPTY-WINDOW-52.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02949.py -- tests/files/web/generated/M21-GAP-02949-keymap-item-UV-Editor-EMPTY-WINDOW-52.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02949", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02949", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02950", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:53", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02950-keymap-item-UV-Editor-EMPTY-WINDOW-53.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02950.py -- tests/files/web/generated/M21-GAP-02950-keymap-item-UV-Editor-EMPTY-WINDOW-53.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02950", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02950", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02951", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:54", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02951-keymap-item-UV-Editor-EMPTY-WINDOW-54.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02951.py -- tests/files/web/generated/M21-GAP-02951-keymap-item-UV-Editor-EMPTY-WINDOW-54.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02951", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02951", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02952", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:55", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02952-keymap-item-UV-Editor-EMPTY-WINDOW-55.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02952.py -- tests/files/web/generated/M21-GAP-02952-keymap-item-UV-Editor-EMPTY-WINDOW-55.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02952", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02952", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02953", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:56", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02953-keymap-item-UV-Editor-EMPTY-WINDOW-56.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02953.py -- tests/files/web/generated/M21-GAP-02953-keymap-item-UV-Editor-EMPTY-WINDOW-56.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02953", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02953", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02954", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:57", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02954-keymap-item-UV-Editor-EMPTY-WINDOW-57.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02954.py -- tests/files/web/generated/M21-GAP-02954-keymap-item-UV-Editor-EMPTY-WINDOW-57.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02954", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02954", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02955", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:58", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02955-keymap-item-UV-Editor-EMPTY-WINDOW-58.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02955.py -- tests/files/web/generated/M21-GAP-02955-keymap-item-UV-Editor-EMPTY-WINDOW-58.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02955", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02955", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02956", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:59", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02956-keymap-item-UV-Editor-EMPTY-WINDOW-59.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02956.py -- tests/files/web/generated/M21-GAP-02956-keymap-item-UV-Editor-EMPTY-WINDOW-59.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02956", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02956", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02957", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02957-keymap-item-UV-Editor-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02957.py -- tests/files/web/generated/M21-GAP-02957-keymap-item-UV-Editor-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02957", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02957", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02958", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:60", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02958-keymap-item-UV-Editor-EMPTY-WINDOW-60.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02958.py -- tests/files/web/generated/M21-GAP-02958-keymap-item-UV-Editor-EMPTY-WINDOW-60.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02958", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02958", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02959", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:61", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02959-keymap-item-UV-Editor-EMPTY-WINDOW-61.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02959.py -- tests/files/web/generated/M21-GAP-02959-keymap-item-UV-Editor-EMPTY-WINDOW-61.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02959", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02959", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02960", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:62", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02960-keymap-item-UV-Editor-EMPTY-WINDOW-62.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02960.py -- tests/files/web/generated/M21-GAP-02960-keymap-item-UV-Editor-EMPTY-WINDOW-62.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02960", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02960", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02961", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:63", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02961-keymap-item-UV-Editor-EMPTY-WINDOW-63.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02961.py -- tests/files/web/generated/M21-GAP-02961-keymap-item-UV-Editor-EMPTY-WINDOW-63.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02961", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02961", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02962", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:64", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02962-keymap-item-UV-Editor-EMPTY-WINDOW-64.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02962.py -- tests/files/web/generated/M21-GAP-02962-keymap-item-UV-Editor-EMPTY-WINDOW-64.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02962", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02962", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02963", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:65", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02963-keymap-item-UV-Editor-EMPTY-WINDOW-65.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02963.py -- tests/files/web/generated/M21-GAP-02963-keymap-item-UV-Editor-EMPTY-WINDOW-65.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02963", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02963", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02964", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:66", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02964-keymap-item-UV-Editor-EMPTY-WINDOW-66.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02964.py -- tests/files/web/generated/M21-GAP-02964-keymap-item-UV-Editor-EMPTY-WINDOW-66.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02964", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02964", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02965", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:67", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02965-keymap-item-UV-Editor-EMPTY-WINDOW-67.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02965.py -- tests/files/web/generated/M21-GAP-02965-keymap-item-UV-Editor-EMPTY-WINDOW-67.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02965", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02965", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02966", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:68", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02966-keymap-item-UV-Editor-EMPTY-WINDOW-68.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02966.py -- tests/files/web/generated/M21-GAP-02966-keymap-item-UV-Editor-EMPTY-WINDOW-68.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02966", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02966", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02967", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:69", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02967-keymap-item-UV-Editor-EMPTY-WINDOW-69.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02967.py -- tests/files/web/generated/M21-GAP-02967-keymap-item-UV-Editor-EMPTY-WINDOW-69.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02967", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02967", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02968", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02968-keymap-item-UV-Editor-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02968.py -- tests/files/web/generated/M21-GAP-02968-keymap-item-UV-Editor-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02968", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02968", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02969", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:70", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02969-keymap-item-UV-Editor-EMPTY-WINDOW-70.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02969.py -- tests/files/web/generated/M21-GAP-02969-keymap-item-UV-Editor-EMPTY-WINDOW-70.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02969", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02969", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02970", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:71", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02970-keymap-item-UV-Editor-EMPTY-WINDOW-71.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02970.py -- tests/files/web/generated/M21-GAP-02970-keymap-item-UV-Editor-EMPTY-WINDOW-71.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02970", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02970", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02971", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:72", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02971-keymap-item-UV-Editor-EMPTY-WINDOW-72.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02971.py -- tests/files/web/generated/M21-GAP-02971-keymap-item-UV-Editor-EMPTY-WINDOW-72.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02971", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02971", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02972", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:73", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02972-keymap-item-UV-Editor-EMPTY-WINDOW-73.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02972.py -- tests/files/web/generated/M21-GAP-02972-keymap-item-UV-Editor-EMPTY-WINDOW-73.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02972", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02972", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02973", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:74", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02973-keymap-item-UV-Editor-EMPTY-WINDOW-74.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02973.py -- tests/files/web/generated/M21-GAP-02973-keymap-item-UV-Editor-EMPTY-WINDOW-74.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02973", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02973", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02974", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:75", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02974-keymap-item-UV-Editor-EMPTY-WINDOW-75.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02974.py -- tests/files/web/generated/M21-GAP-02974-keymap-item-UV-Editor-EMPTY-WINDOW-75.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02974", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02974", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02975", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:76", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02975-keymap-item-UV-Editor-EMPTY-WINDOW-76.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02975.py -- tests/files/web/generated/M21-GAP-02975-keymap-item-UV-Editor-EMPTY-WINDOW-76.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02975", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02975", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02976", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:77", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02976-keymap-item-UV-Editor-EMPTY-WINDOW-77.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02976.py -- tests/files/web/generated/M21-GAP-02976-keymap-item-UV-Editor-EMPTY-WINDOW-77.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02976", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02976", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02977", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:78", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02977-keymap-item-UV-Editor-EMPTY-WINDOW-78.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02977.py -- tests/files/web/generated/M21-GAP-02977-keymap-item-UV-Editor-EMPTY-WINDOW-78.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02977", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02977", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02978", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:79", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02978-keymap-item-UV-Editor-EMPTY-WINDOW-79.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02978.py -- tests/files/web/generated/M21-GAP-02978-keymap-item-UV-Editor-EMPTY-WINDOW-79.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02978", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02978", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02979", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02979-keymap-item-UV-Editor-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02979.py -- tests/files/web/generated/M21-GAP-02979-keymap-item-UV-Editor-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02979", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02979", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02980", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:80", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02980-keymap-item-UV-Editor-EMPTY-WINDOW-80.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02980.py -- tests/files/web/generated/M21-GAP-02980-keymap-item-UV-Editor-EMPTY-WINDOW-80.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02980", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02980", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02981", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:81", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02981-keymap-item-UV-Editor-EMPTY-WINDOW-81.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02981.py -- tests/files/web/generated/M21-GAP-02981-keymap-item-UV-Editor-EMPTY-WINDOW-81.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02981", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02981", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02982", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:82", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02982-keymap-item-UV-Editor-EMPTY-WINDOW-82.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02982.py -- tests/files/web/generated/M21-GAP-02982-keymap-item-UV-Editor-EMPTY-WINDOW-82.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02982", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02982", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02983", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:83", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02983-keymap-item-UV-Editor-EMPTY-WINDOW-83.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02983.py -- tests/files/web/generated/M21-GAP-02983-keymap-item-UV-Editor-EMPTY-WINDOW-83.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02983", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02983", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02984", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:84", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02984-keymap-item-UV-Editor-EMPTY-WINDOW-84.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02984.py -- tests/files/web/generated/M21-GAP-02984-keymap-item-UV-Editor-EMPTY-WINDOW-84.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02984", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02984", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02985", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:85", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02985-keymap-item-UV-Editor-EMPTY-WINDOW-85.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02985.py -- tests/files/web/generated/M21-GAP-02985-keymap-item-UV-Editor-EMPTY-WINDOW-85.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02985", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02985", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02986", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:86", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02986-keymap-item-UV-Editor-EMPTY-WINDOW-86.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02986.py -- tests/files/web/generated/M21-GAP-02986-keymap-item-UV-Editor-EMPTY-WINDOW-86.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02986", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02986", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02987", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:87", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02987-keymap-item-UV-Editor-EMPTY-WINDOW-87.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02987.py -- tests/files/web/generated/M21-GAP-02987-keymap-item-UV-Editor-EMPTY-WINDOW-87.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02987", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02987", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02988", + "gapId": "keymap-item:UV Editor:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02988-keymap-item-UV-Editor-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02988.py -- tests/files/web/generated/M21-GAP-02988-keymap-item-UV-Editor-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02988", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02988", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02989", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02989-keymap-item-User-Interface-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02989.py -- tests/files/web/generated/M21-GAP-02989-keymap-item-User-Interface-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02989", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02989", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02990", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02990-keymap-item-User-Interface-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02990.py -- tests/files/web/generated/M21-GAP-02990-keymap-item-User-Interface-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02990", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02990", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02991", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02991-keymap-item-User-Interface-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02991.py -- tests/files/web/generated/M21-GAP-02991-keymap-item-User-Interface-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02991", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02991", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02992", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02992-keymap-item-User-Interface-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02992.py -- tests/files/web/generated/M21-GAP-02992-keymap-item-User-Interface-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02992", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02992", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02993", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02993-keymap-item-User-Interface-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02993.py -- tests/files/web/generated/M21-GAP-02993-keymap-item-User-Interface-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02993", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02993", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02994", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02994-keymap-item-User-Interface-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02994.py -- tests/files/web/generated/M21-GAP-02994-keymap-item-User-Interface-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02994", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02994", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02995", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02995-keymap-item-User-Interface-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02995.py -- tests/files/web/generated/M21-GAP-02995-keymap-item-User-Interface-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02995", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02995", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02996", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02996-keymap-item-User-Interface-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02996.py -- tests/files/web/generated/M21-GAP-02996-keymap-item-User-Interface-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02996", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02996", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02997", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02997-keymap-item-User-Interface-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02997.py -- tests/files/web/generated/M21-GAP-02997-keymap-item-User-Interface-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02997", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02997", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02998", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02998-keymap-item-User-Interface-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02998.py -- tests/files/web/generated/M21-GAP-02998-keymap-item-User-Interface-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02998", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02998", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-02999", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-02999-keymap-item-User-Interface-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-02999.py -- tests/files/web/generated/M21-GAP-02999-keymap-item-User-Interface-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-02999", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-02999", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03000", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03000-keymap-item-User-Interface-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03000.py -- tests/files/web/generated/M21-GAP-03000-keymap-item-User-Interface-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03000", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03000", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03001", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03001-keymap-item-User-Interface-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03001.py -- tests/files/web/generated/M21-GAP-03001-keymap-item-User-Interface-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03001", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03002", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03002-keymap-item-User-Interface-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03002.py -- tests/files/web/generated/M21-GAP-03002-keymap-item-User-Interface-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03002", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03003", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03003-keymap-item-User-Interface-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03003.py -- tests/files/web/generated/M21-GAP-03003-keymap-item-User-Interface-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03003", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03004", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03004-keymap-item-User-Interface-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03004.py -- tests/files/web/generated/M21-GAP-03004-keymap-item-User-Interface-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03004", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03005", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03005-keymap-item-User-Interface-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03005.py -- tests/files/web/generated/M21-GAP-03005-keymap-item-User-Interface-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03005", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03006", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03006-keymap-item-User-Interface-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03006.py -- tests/files/web/generated/M21-GAP-03006-keymap-item-User-Interface-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03006", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03007", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03007-keymap-item-User-Interface-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03007.py -- tests/files/web/generated/M21-GAP-03007-keymap-item-User-Interface-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03007", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03008", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03008-keymap-item-User-Interface-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03008.py -- tests/files/web/generated/M21-GAP-03008-keymap-item-User-Interface-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03008", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03009", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03009-keymap-item-User-Interface-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03009.py -- tests/files/web/generated/M21-GAP-03009-keymap-item-User-Interface-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03009", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03010", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03010-keymap-item-User-Interface-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03010.py -- tests/files/web/generated/M21-GAP-03010-keymap-item-User-Interface-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03010", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03011", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03011-keymap-item-User-Interface-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03011.py -- tests/files/web/generated/M21-GAP-03011-keymap-item-User-Interface-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03011", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03012", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03012-keymap-item-User-Interface-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03012.py -- tests/files/web/generated/M21-GAP-03012-keymap-item-User-Interface-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03012", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03013", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03013-keymap-item-User-Interface-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03013.py -- tests/files/web/generated/M21-GAP-03013-keymap-item-User-Interface-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03013", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03014", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03014-keymap-item-User-Interface-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03014.py -- tests/files/web/generated/M21-GAP-03014-keymap-item-User-Interface-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03014", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03015", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03015-keymap-item-User-Interface-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03015.py -- tests/files/web/generated/M21-GAP-03015-keymap-item-User-Interface-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03015", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03016", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03016-keymap-item-User-Interface-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03016.py -- tests/files/web/generated/M21-GAP-03016-keymap-item-User-Interface-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03016", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03017", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03017-keymap-item-User-Interface-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03017.py -- tests/files/web/generated/M21-GAP-03017-keymap-item-User-Interface-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03017", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03018", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03018-keymap-item-User-Interface-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03018.py -- tests/files/web/generated/M21-GAP-03018-keymap-item-User-Interface-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03018", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03019", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03019-keymap-item-User-Interface-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03019.py -- tests/files/web/generated/M21-GAP-03019-keymap-item-User-Interface-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03019", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03020", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03020-keymap-item-User-Interface-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03020.py -- tests/files/web/generated/M21-GAP-03020-keymap-item-User-Interface-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03020", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03020", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03021", + "gapId": "keymap-item:User Interface:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03021-keymap-item-User-Interface-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03021.py -- tests/files/web/generated/M21-GAP-03021-keymap-item-User-Interface-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03021", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03021", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03022", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03022-keymap-item-Vertex-Paint-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03022.py -- tests/files/web/generated/M21-GAP-03022-keymap-item-Vertex-Paint-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03022", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03022", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03023", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03023-keymap-item-Vertex-Paint-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03023.py -- tests/files/web/generated/M21-GAP-03023-keymap-item-Vertex-Paint-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03023", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03023", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03024", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03024-keymap-item-Vertex-Paint-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03024.py -- tests/files/web/generated/M21-GAP-03024-keymap-item-Vertex-Paint-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03024", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03024", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03025", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03025-keymap-item-Vertex-Paint-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03025.py -- tests/files/web/generated/M21-GAP-03025-keymap-item-Vertex-Paint-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03025", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03025", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03026", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03026-keymap-item-Vertex-Paint-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03026.py -- tests/files/web/generated/M21-GAP-03026-keymap-item-Vertex-Paint-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03026", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03026", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03027", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03027-keymap-item-Vertex-Paint-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03027.py -- tests/files/web/generated/M21-GAP-03027-keymap-item-Vertex-Paint-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03027", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03027", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03028", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03028-keymap-item-Vertex-Paint-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03028.py -- tests/files/web/generated/M21-GAP-03028-keymap-item-Vertex-Paint-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03028", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03028", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03029", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03029-keymap-item-Vertex-Paint-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03029.py -- tests/files/web/generated/M21-GAP-03029-keymap-item-Vertex-Paint-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03029", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03029", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03030", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03030-keymap-item-Vertex-Paint-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03030.py -- tests/files/web/generated/M21-GAP-03030-keymap-item-Vertex-Paint-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03030", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03030", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03031", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03031-keymap-item-Vertex-Paint-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03031.py -- tests/files/web/generated/M21-GAP-03031-keymap-item-Vertex-Paint-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03031", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03031", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03032", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03032-keymap-item-Vertex-Paint-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03032.py -- tests/files/web/generated/M21-GAP-03032-keymap-item-Vertex-Paint-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03032", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03032", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03033", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03033-keymap-item-Vertex-Paint-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03033.py -- tests/files/web/generated/M21-GAP-03033-keymap-item-Vertex-Paint-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03033", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03033", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03034", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03034-keymap-item-Vertex-Paint-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03034.py -- tests/files/web/generated/M21-GAP-03034-keymap-item-Vertex-Paint-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03034", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03034", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03035", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03035-keymap-item-Vertex-Paint-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03035.py -- tests/files/web/generated/M21-GAP-03035-keymap-item-Vertex-Paint-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03035", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03035", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03036", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03036-keymap-item-Vertex-Paint-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03036.py -- tests/files/web/generated/M21-GAP-03036-keymap-item-Vertex-Paint-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03036", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03036", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03037", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03037-keymap-item-Vertex-Paint-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03037.py -- tests/files/web/generated/M21-GAP-03037-keymap-item-Vertex-Paint-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03037", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03037", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03038", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03038-keymap-item-Vertex-Paint-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03038.py -- tests/files/web/generated/M21-GAP-03038-keymap-item-Vertex-Paint-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03038", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03038", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03039", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03039-keymap-item-Vertex-Paint-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03039.py -- tests/files/web/generated/M21-GAP-03039-keymap-item-Vertex-Paint-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03039", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03039", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03040", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03040-keymap-item-Vertex-Paint-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03040.py -- tests/files/web/generated/M21-GAP-03040-keymap-item-Vertex-Paint-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03040", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03040", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03041", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03041-keymap-item-Vertex-Paint-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03041.py -- tests/files/web/generated/M21-GAP-03041-keymap-item-Vertex-Paint-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03041", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03041", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03042", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03042-keymap-item-Vertex-Paint-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03042.py -- tests/files/web/generated/M21-GAP-03042-keymap-item-Vertex-Paint-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03042", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03042", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03043", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03043-keymap-item-Vertex-Paint-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03043.py -- tests/files/web/generated/M21-GAP-03043-keymap-item-Vertex-Paint-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03043", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03043", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03044", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03044-keymap-item-Vertex-Paint-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03044.py -- tests/files/web/generated/M21-GAP-03044-keymap-item-Vertex-Paint-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03044", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03044", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03045", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03045-keymap-item-Vertex-Paint-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03045.py -- tests/files/web/generated/M21-GAP-03045-keymap-item-Vertex-Paint-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03045", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03045", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03046", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03046-keymap-item-Vertex-Paint-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03046.py -- tests/files/web/generated/M21-GAP-03046-keymap-item-Vertex-Paint-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03046", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03046", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03047", + "gapId": "keymap-item:Vertex Paint:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03047-keymap-item-Vertex-Paint-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03047.py -- tests/files/web/generated/M21-GAP-03047-keymap-item-Vertex-Paint-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03047", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03047", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03048", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03048-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03048.py -- tests/files/web/generated/M21-GAP-03048-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03048", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03048", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03049", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03049-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03049.py -- tests/files/web/generated/M21-GAP-03049-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03049", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03049", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03050", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03050-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03050.py -- tests/files/web/generated/M21-GAP-03050-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03050", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03050", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03051", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03051-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03051.py -- tests/files/web/generated/M21-GAP-03051-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03051", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03051", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03052", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03052-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03052.py -- tests/files/web/generated/M21-GAP-03052-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03052", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03052", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03053", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03053-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03053.py -- tests/files/web/generated/M21-GAP-03053-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03053", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03053", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03054", + "gapId": "keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03054-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03054.py -- tests/files/web/generated/M21-GAP-03054-keymap-item-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03054", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03054", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03055", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03055-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03055.py -- tests/files/web/generated/M21-GAP-03055-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03055", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03055", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03056", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03056-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03056.py -- tests/files/web/generated/M21-GAP-03056-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03056", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03056", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03057", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03057-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03057.py -- tests/files/web/generated/M21-GAP-03057-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03057", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03057", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03058", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03058-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03058.py -- tests/files/web/generated/M21-GAP-03058-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03058", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03058", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03059", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03059-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03059.py -- tests/files/web/generated/M21-GAP-03059-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03059", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03059", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03060", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03060-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03060.py -- tests/files/web/generated/M21-GAP-03060-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03060", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03060", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03061", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03061-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03061.py -- tests/files/web/generated/M21-GAP-03061-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03061", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03061", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03062", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03062-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03062.py -- tests/files/web/generated/M21-GAP-03062-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03062", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03062", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03063", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03063-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03063.py -- tests/files/web/generated/M21-GAP-03063-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03063", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03063", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03064", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03064-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03064.py -- tests/files/web/generated/M21-GAP-03064-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03064", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03064", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03065", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03065-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03065.py -- tests/files/web/generated/M21-GAP-03065-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03065", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03065", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03066", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03066-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03066.py -- tests/files/web/generated/M21-GAP-03066-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03066", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03066", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03067", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03067-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03067.py -- tests/files/web/generated/M21-GAP-03067-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03067", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03067", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03068", + "gapId": "keymap-item:View2D Buttons List:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03068-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03068.py -- tests/files/web/generated/M21-GAP-03068-keymap-item-View2D-Buttons-List-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03068", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03068", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03069", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03069-keymap-item-View2D-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03069.py -- tests/files/web/generated/M21-GAP-03069-keymap-item-View2D-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03069", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03069", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03070", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03070-keymap-item-View2D-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03070.py -- tests/files/web/generated/M21-GAP-03070-keymap-item-View2D-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03070", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03070", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03071", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03071-keymap-item-View2D-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03071.py -- tests/files/web/generated/M21-GAP-03071-keymap-item-View2D-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03071", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03071", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03072", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03072-keymap-item-View2D-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03072.py -- tests/files/web/generated/M21-GAP-03072-keymap-item-View2D-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03072", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03072", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03073", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03073-keymap-item-View2D-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03073.py -- tests/files/web/generated/M21-GAP-03073-keymap-item-View2D-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03073", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03073", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03074", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03074-keymap-item-View2D-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03074.py -- tests/files/web/generated/M21-GAP-03074-keymap-item-View2D-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03074", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03074", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03075", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03075-keymap-item-View2D-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03075.py -- tests/files/web/generated/M21-GAP-03075-keymap-item-View2D-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03075", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03075", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03076", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03076-keymap-item-View2D-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03076.py -- tests/files/web/generated/M21-GAP-03076-keymap-item-View2D-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03076", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03076", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03077", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03077-keymap-item-View2D-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03077.py -- tests/files/web/generated/M21-GAP-03077-keymap-item-View2D-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03077", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03077", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03078", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03078-keymap-item-View2D-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03078.py -- tests/files/web/generated/M21-GAP-03078-keymap-item-View2D-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03078", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03078", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03079", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03079-keymap-item-View2D-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03079.py -- tests/files/web/generated/M21-GAP-03079-keymap-item-View2D-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03079", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03079", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03080", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03080-keymap-item-View2D-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03080.py -- tests/files/web/generated/M21-GAP-03080-keymap-item-View2D-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03080", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03080", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03081", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03081-keymap-item-View2D-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03081.py -- tests/files/web/generated/M21-GAP-03081-keymap-item-View2D-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03081", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03081", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03082", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03082-keymap-item-View2D-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03082.py -- tests/files/web/generated/M21-GAP-03082-keymap-item-View2D-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03082", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03082", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03083", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03083-keymap-item-View2D-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03083.py -- tests/files/web/generated/M21-GAP-03083-keymap-item-View2D-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03083", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03083", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03084", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03084-keymap-item-View2D-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03084.py -- tests/files/web/generated/M21-GAP-03084-keymap-item-View2D-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03084", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03084", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03085", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03085-keymap-item-View2D-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03085.py -- tests/files/web/generated/M21-GAP-03085-keymap-item-View2D-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03085", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03085", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03086", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03086-keymap-item-View2D-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03086.py -- tests/files/web/generated/M21-GAP-03086-keymap-item-View2D-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03086", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03086", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03087", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03087-keymap-item-View2D-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03087.py -- tests/files/web/generated/M21-GAP-03087-keymap-item-View2D-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03087", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03087", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03088", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03088-keymap-item-View2D-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03088.py -- tests/files/web/generated/M21-GAP-03088-keymap-item-View2D-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03088", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03088", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03089", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03089-keymap-item-View2D-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03089.py -- tests/files/web/generated/M21-GAP-03089-keymap-item-View2D-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03089", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03089", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03090", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03090-keymap-item-View2D-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03090.py -- tests/files/web/generated/M21-GAP-03090-keymap-item-View2D-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03090", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03090", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03091", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03091-keymap-item-View2D-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03091.py -- tests/files/web/generated/M21-GAP-03091-keymap-item-View2D-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03091", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03091", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03092", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03092-keymap-item-View2D-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03092.py -- tests/files/web/generated/M21-GAP-03092-keymap-item-View2D-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03092", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03092", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03093", + "gapId": "keymap-item:View2D:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03093-keymap-item-View2D-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03093.py -- tests/files/web/generated/M21-GAP-03093-keymap-item-View2D-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03093", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03093", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03094", + "gapId": "keymap-item:View3D Dolly Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03094-keymap-item-View3D-Dolly-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03094.py -- tests/files/web/generated/M21-GAP-03094-keymap-item-View3D-Dolly-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03094", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03094", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03095", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03095-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03095.py -- tests/files/web/generated/M21-GAP-03095-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03095", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03095", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03096", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03096-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03096.py -- tests/files/web/generated/M21-GAP-03096-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03096", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03096", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03097", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03097-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03097.py -- tests/files/web/generated/M21-GAP-03097-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03097", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03097", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03098", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03098-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03098.py -- tests/files/web/generated/M21-GAP-03098-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03098", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03098", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03099", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03099-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03099.py -- tests/files/web/generated/M21-GAP-03099-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03099", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03099", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03100", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03100-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03100.py -- tests/files/web/generated/M21-GAP-03100-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03100", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03100", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03101", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03101-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03101.py -- tests/files/web/generated/M21-GAP-03101-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03101", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03101", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03102", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03102-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03102.py -- tests/files/web/generated/M21-GAP-03102-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03102", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03102", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03103", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03103-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03103.py -- tests/files/web/generated/M21-GAP-03103-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03103", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03103", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03104", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03104-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03104.py -- tests/files/web/generated/M21-GAP-03104-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03104", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03104", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03105", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03105-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03105.py -- tests/files/web/generated/M21-GAP-03105-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03105", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03105", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03106", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03106-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03106.py -- tests/files/web/generated/M21-GAP-03106-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03106", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03106", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03107", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03107-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03107.py -- tests/files/web/generated/M21-GAP-03107-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03107", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03107", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03108", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03108-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03108.py -- tests/files/web/generated/M21-GAP-03108-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03108", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03108", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03109", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03109-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03109.py -- tests/files/web/generated/M21-GAP-03109-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03109", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03109", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03110", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03110-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03110.py -- tests/files/web/generated/M21-GAP-03110-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03110", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03110", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03111", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03111-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03111.py -- tests/files/web/generated/M21-GAP-03111-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03111", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03111", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03112", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03112-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03112.py -- tests/files/web/generated/M21-GAP-03112-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03112", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03112", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03113", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03113-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03113.py -- tests/files/web/generated/M21-GAP-03113-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03113", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03113", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03114", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03114-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03114.py -- tests/files/web/generated/M21-GAP-03114-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03114", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03114", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03115", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03115-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03115.py -- tests/files/web/generated/M21-GAP-03115-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03115", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03115", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03116", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03116-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03116.py -- tests/files/web/generated/M21-GAP-03116-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03116", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03116", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03117", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03117-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03117.py -- tests/files/web/generated/M21-GAP-03117-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03117", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03117", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03118", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03118-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03118.py -- tests/files/web/generated/M21-GAP-03118-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03118", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03118", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03119", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03119-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03119.py -- tests/files/web/generated/M21-GAP-03119-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03119", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03119", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03120", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03120-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03120.py -- tests/files/web/generated/M21-GAP-03120-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03120", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03120", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03121", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03121-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03121.py -- tests/files/web/generated/M21-GAP-03121-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03121", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03121", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03122", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03122-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03122.py -- tests/files/web/generated/M21-GAP-03122-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03122", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03122", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03123", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03123-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03123.py -- tests/files/web/generated/M21-GAP-03123-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03123", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03123", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03124", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03124-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03124.py -- tests/files/web/generated/M21-GAP-03124-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03124", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03124", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03125", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03125-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03125.py -- tests/files/web/generated/M21-GAP-03125-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03125", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03125", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03126", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03126-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03126.py -- tests/files/web/generated/M21-GAP-03126-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03126", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03126", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03127", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03127-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03127.py -- tests/files/web/generated/M21-GAP-03127-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03127", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03127", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03128", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03128-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03128.py -- tests/files/web/generated/M21-GAP-03128-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03128", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03128", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03129", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03129-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03129.py -- tests/files/web/generated/M21-GAP-03129-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03129", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03129", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03130", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03130-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03130.py -- tests/files/web/generated/M21-GAP-03130-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03130", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03130", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03131", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03131-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03131.py -- tests/files/web/generated/M21-GAP-03131-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03131", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03131", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03132", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03132-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03132.py -- tests/files/web/generated/M21-GAP-03132-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03132", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03132", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03133", + "gapId": "keymap-item:View3D Fly Modal:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03133-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03133.py -- tests/files/web/generated/M21-GAP-03133-keymap-item-View3D-Fly-Modal-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03133", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03133", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03134", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03134-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03134.py -- tests/files/web/generated/M21-GAP-03134-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03134", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03134", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03135", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03135-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03135.py -- tests/files/web/generated/M21-GAP-03135-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03135", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03135", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03136", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03136-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03136.py -- tests/files/web/generated/M21-GAP-03136-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03136", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03136", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03137", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03137-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03137.py -- tests/files/web/generated/M21-GAP-03137-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03137", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03137", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03138", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03138-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03138.py -- tests/files/web/generated/M21-GAP-03138-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03138", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03138", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03139", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03139-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03139.py -- tests/files/web/generated/M21-GAP-03139-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03139", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03139", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03140", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03140-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03140.py -- tests/files/web/generated/M21-GAP-03140-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03140", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03140", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03141", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03141-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03141.py -- tests/files/web/generated/M21-GAP-03141-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03141", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03141", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03142", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03142-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03142.py -- tests/files/web/generated/M21-GAP-03142-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03142", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03142", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03143", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03143-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03143.py -- tests/files/web/generated/M21-GAP-03143-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03143", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03143", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03144", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03144-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03144.py -- tests/files/web/generated/M21-GAP-03144-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03144", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03144", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03145", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03145-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03145.py -- tests/files/web/generated/M21-GAP-03145-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03145", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03145", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03146", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03146-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03146.py -- tests/files/web/generated/M21-GAP-03146-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03146", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03146", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03147", + "gapId": "keymap-item:View3D Gesture Circle:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03147-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03147.py -- tests/files/web/generated/M21-GAP-03147-keymap-item-View3D-Gesture-Circle-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03147", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03147", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03148", + "gapId": "keymap-item:View3D Move Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03148-keymap-item-View3D-Move-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03148.py -- tests/files/web/generated/M21-GAP-03148-keymap-item-View3D-Move-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03148", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03148", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03149", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03149-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03149.py -- tests/files/web/generated/M21-GAP-03149-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03149", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03149", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03150", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03150-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03150.py -- tests/files/web/generated/M21-GAP-03150-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03150", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03150", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03151", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03151-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03151.py -- tests/files/web/generated/M21-GAP-03151-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03151", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03151", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03152", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03152-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03152.py -- tests/files/web/generated/M21-GAP-03152-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03152", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03152", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03153", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03153-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03153.py -- tests/files/web/generated/M21-GAP-03153-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03153", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03153", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03154", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03154-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03154.py -- tests/files/web/generated/M21-GAP-03154-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03154", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03154", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03155", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03155-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03155.py -- tests/files/web/generated/M21-GAP-03155-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03155", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03155", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03156", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03156-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03156.py -- tests/files/web/generated/M21-GAP-03156-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03156", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03156", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03157", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03157-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03157.py -- tests/files/web/generated/M21-GAP-03157-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03157", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03157", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03158", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03158-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03158.py -- tests/files/web/generated/M21-GAP-03158-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03158", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03158", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03159", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03159-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03159.py -- tests/files/web/generated/M21-GAP-03159-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03159", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03159", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03160", + "gapId": "keymap-item:View3D Placement Modal:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03160-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03160.py -- tests/files/web/generated/M21-GAP-03160-keymap-item-View3D-Placement-Modal-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03160", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03160", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03161", + "gapId": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03161-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03161.py -- tests/files/web/generated/M21-GAP-03161-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03161", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03161", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03162", + "gapId": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03162-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03162.py -- tests/files/web/generated/M21-GAP-03162-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03162", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03162", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03163", + "gapId": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03163-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03163.py -- tests/files/web/generated/M21-GAP-03163-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03163", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03163", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03164", + "gapId": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03164-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03164.py -- tests/files/web/generated/M21-GAP-03164-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03164", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03164", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03165", + "gapId": "keymap-item:View3D Rotate Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03165-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03165.py -- tests/files/web/generated/M21-GAP-03165-keymap-item-View3D-Rotate-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03165", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03165", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03166", + "gapId": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03166-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03166.py -- tests/files/web/generated/M21-GAP-03166-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03166", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03166", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03167", + "gapId": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03167-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03167.py -- tests/files/web/generated/M21-GAP-03167-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03167", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03167", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03168", + "gapId": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03168-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03168.py -- tests/files/web/generated/M21-GAP-03168-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03168", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03168", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03169", + "gapId": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03169-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03169.py -- tests/files/web/generated/M21-GAP-03169-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03169", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03169", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03170", + "gapId": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03170-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03170.py -- tests/files/web/generated/M21-GAP-03170-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03170", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03170", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03171", + "gapId": "keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03171-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03171.py -- tests/files/web/generated/M21-GAP-03171-keymap-item-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03171", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03171", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03172", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03172-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03172.py -- tests/files/web/generated/M21-GAP-03172-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03172", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03172", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03173", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03173-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03173.py -- tests/files/web/generated/M21-GAP-03173-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03173", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03173", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03174", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03174-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03174.py -- tests/files/web/generated/M21-GAP-03174-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03174", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03174", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03175", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03175-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03175.py -- tests/files/web/generated/M21-GAP-03175-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03175", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03175", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03176", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03176-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03176.py -- tests/files/web/generated/M21-GAP-03176-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03176", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03176", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03177", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03177-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03177.py -- tests/files/web/generated/M21-GAP-03177-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03177", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03177", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03178", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03178-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03178.py -- tests/files/web/generated/M21-GAP-03178-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03178", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03178", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03179", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03179-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03179.py -- tests/files/web/generated/M21-GAP-03179-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03179", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03179", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03180", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03180-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03180.py -- tests/files/web/generated/M21-GAP-03180-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03180", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03180", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03181", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03181-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03181.py -- tests/files/web/generated/M21-GAP-03181-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03181", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03181", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03182", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03182-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03182.py -- tests/files/web/generated/M21-GAP-03182-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03182", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03182", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03183", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03183-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03183.py -- tests/files/web/generated/M21-GAP-03183-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03183", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03183", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03184", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03184-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03184.py -- tests/files/web/generated/M21-GAP-03184-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03184", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03184", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03185", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03185-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03185.py -- tests/files/web/generated/M21-GAP-03185-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03185", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03185", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03186", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03186-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03186.py -- tests/files/web/generated/M21-GAP-03186-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03186", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03186", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03187", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03187-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03187.py -- tests/files/web/generated/M21-GAP-03187-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03187", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03187", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03188", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03188-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03188.py -- tests/files/web/generated/M21-GAP-03188-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03188", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03188", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03189", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03189-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03189.py -- tests/files/web/generated/M21-GAP-03189-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03189", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03189", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03190", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03190-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03190.py -- tests/files/web/generated/M21-GAP-03190-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03190", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03190", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03191", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03191-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03191.py -- tests/files/web/generated/M21-GAP-03191-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03191", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03191", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03192", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03192-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03192.py -- tests/files/web/generated/M21-GAP-03192-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03192", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03192", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03193", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03193-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03193.py -- tests/files/web/generated/M21-GAP-03193-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03193", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03193", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03194", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03194-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03194.py -- tests/files/web/generated/M21-GAP-03194-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03194", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03194", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03195", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03195-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03195.py -- tests/files/web/generated/M21-GAP-03195-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03195", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03195", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03196", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03196-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03196.py -- tests/files/web/generated/M21-GAP-03196-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03196", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03196", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03197", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03197-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03197.py -- tests/files/web/generated/M21-GAP-03197-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03197", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03197", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03198", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03198-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03198.py -- tests/files/web/generated/M21-GAP-03198-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03198", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03198", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03199", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:33", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03199-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-33.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03199.py -- tests/files/web/generated/M21-GAP-03199-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-33.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03199", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03199", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03200", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:34", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03200-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-34.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03200.py -- tests/files/web/generated/M21-GAP-03200-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-34.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03200", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03200", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03201", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:35", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03201-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-35.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03201.py -- tests/files/web/generated/M21-GAP-03201-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-35.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03201", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03201", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03202", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:36", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03202-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-36.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03202.py -- tests/files/web/generated/M21-GAP-03202-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-36.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03202", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03202", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03203", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:37", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03203-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-37.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03203.py -- tests/files/web/generated/M21-GAP-03203-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-37.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03203", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03203", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03204", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:38", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03204-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-38.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03204.py -- tests/files/web/generated/M21-GAP-03204-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-38.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03204", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03204", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03205", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:39", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03205-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-39.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03205.py -- tests/files/web/generated/M21-GAP-03205-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-39.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03205", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03205", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03206", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03206-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03206.py -- tests/files/web/generated/M21-GAP-03206-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03206", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03206", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03207", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:40", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03207-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-40.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03207.py -- tests/files/web/generated/M21-GAP-03207-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-40.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03207", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03207", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03208", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:41", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03208-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-41.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03208.py -- tests/files/web/generated/M21-GAP-03208-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-41.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03208", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03208", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03209", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:42", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03209-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-42.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03209.py -- tests/files/web/generated/M21-GAP-03209-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-42.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03209", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03209", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03210", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:43", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03210-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-43.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03210.py -- tests/files/web/generated/M21-GAP-03210-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-43.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03210", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03210", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03211", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:44", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03211-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-44.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03211.py -- tests/files/web/generated/M21-GAP-03211-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-44.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03211", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03211", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03212", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:45", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03212-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-45.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03212.py -- tests/files/web/generated/M21-GAP-03212-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-45.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03212", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03212", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03213", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:46", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03213-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-46.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03213.py -- tests/files/web/generated/M21-GAP-03213-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-46.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03213", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03213", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03214", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:47", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03214-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-47.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03214.py -- tests/files/web/generated/M21-GAP-03214-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-47.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03214", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03214", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03215", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:48", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03215-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-48.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03215.py -- tests/files/web/generated/M21-GAP-03215-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-48.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03215", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03215", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03216", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:49", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03216-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-49.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03216.py -- tests/files/web/generated/M21-GAP-03216-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-49.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03216", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03216", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03217", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03217-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03217.py -- tests/files/web/generated/M21-GAP-03217-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03217", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03217", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03218", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03218-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03218.py -- tests/files/web/generated/M21-GAP-03218-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03218", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03218", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03219", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03219-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03219.py -- tests/files/web/generated/M21-GAP-03219-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03219", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03219", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03220", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03220-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03220.py -- tests/files/web/generated/M21-GAP-03220-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03220", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03220", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03221", + "gapId": "keymap-item:View3D Walk Modal:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03221-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03221.py -- tests/files/web/generated/M21-GAP-03221-keymap-item-View3D-Walk-Modal-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03221", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03221", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03222", + "gapId": "keymap-item:View3D Zoom Modal:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03222-keymap-item-View3D-Zoom-Modal-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03222.py -- tests/files/web/generated/M21-GAP-03222-keymap-item-View3D-Zoom-Modal-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03222", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03222", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03223", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03223-keymap-item-Weight-Paint-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03223.py -- tests/files/web/generated/M21-GAP-03223-keymap-item-Weight-Paint-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03223", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03223", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03224", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03224-keymap-item-Weight-Paint-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03224.py -- tests/files/web/generated/M21-GAP-03224-keymap-item-Weight-Paint-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03224", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03224", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03225", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03225-keymap-item-Weight-Paint-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03225.py -- tests/files/web/generated/M21-GAP-03225-keymap-item-Weight-Paint-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03225", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03225", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03226", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03226-keymap-item-Weight-Paint-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03226.py -- tests/files/web/generated/M21-GAP-03226-keymap-item-Weight-Paint-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03226", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03226", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03227", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03227-keymap-item-Weight-Paint-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03227.py -- tests/files/web/generated/M21-GAP-03227-keymap-item-Weight-Paint-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03227", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03227", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03228", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03228-keymap-item-Weight-Paint-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03228.py -- tests/files/web/generated/M21-GAP-03228-keymap-item-Weight-Paint-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03228", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03228", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03229", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03229-keymap-item-Weight-Paint-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03229.py -- tests/files/web/generated/M21-GAP-03229-keymap-item-Weight-Paint-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03229", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03229", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03230", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03230-keymap-item-Weight-Paint-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03230.py -- tests/files/web/generated/M21-GAP-03230-keymap-item-Weight-Paint-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03230", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03230", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03231", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03231-keymap-item-Weight-Paint-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03231.py -- tests/files/web/generated/M21-GAP-03231-keymap-item-Weight-Paint-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03231", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03231", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03232", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03232-keymap-item-Weight-Paint-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03232.py -- tests/files/web/generated/M21-GAP-03232-keymap-item-Weight-Paint-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03232", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03232", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03233", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03233-keymap-item-Weight-Paint-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03233.py -- tests/files/web/generated/M21-GAP-03233-keymap-item-Weight-Paint-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03233", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03233", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03234", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03234-keymap-item-Weight-Paint-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03234.py -- tests/files/web/generated/M21-GAP-03234-keymap-item-Weight-Paint-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03234", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03234", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03235", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03235-keymap-item-Weight-Paint-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03235.py -- tests/files/web/generated/M21-GAP-03235-keymap-item-Weight-Paint-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03235", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03235", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03236", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03236-keymap-item-Weight-Paint-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03236.py -- tests/files/web/generated/M21-GAP-03236-keymap-item-Weight-Paint-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03236", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03236", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03237", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03237-keymap-item-Weight-Paint-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03237.py -- tests/files/web/generated/M21-GAP-03237-keymap-item-Weight-Paint-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03237", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03237", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03238", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03238-keymap-item-Weight-Paint-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03238.py -- tests/files/web/generated/M21-GAP-03238-keymap-item-Weight-Paint-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03238", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03238", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03239", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03239-keymap-item-Weight-Paint-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03239.py -- tests/files/web/generated/M21-GAP-03239-keymap-item-Weight-Paint-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03239", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03239", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03240", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03240-keymap-item-Weight-Paint-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03240.py -- tests/files/web/generated/M21-GAP-03240-keymap-item-Weight-Paint-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03240", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03240", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03241", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03241-keymap-item-Weight-Paint-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03241.py -- tests/files/web/generated/M21-GAP-03241-keymap-item-Weight-Paint-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03241", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03241", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03242", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03242-keymap-item-Weight-Paint-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03242.py -- tests/files/web/generated/M21-GAP-03242-keymap-item-Weight-Paint-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03242", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03242", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03243", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03243-keymap-item-Weight-Paint-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03243.py -- tests/files/web/generated/M21-GAP-03243-keymap-item-Weight-Paint-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03243", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03243", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03244", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03244-keymap-item-Weight-Paint-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03244.py -- tests/files/web/generated/M21-GAP-03244-keymap-item-Weight-Paint-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03244", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03244", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03245", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03245-keymap-item-Weight-Paint-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03245.py -- tests/files/web/generated/M21-GAP-03245-keymap-item-Weight-Paint-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03245", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03245", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03246", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03246-keymap-item-Weight-Paint-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03246.py -- tests/files/web/generated/M21-GAP-03246-keymap-item-Weight-Paint-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03246", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03246", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03247", + "gapId": "keymap-item:Weight Paint:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03247-keymap-item-Weight-Paint-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03247.py -- tests/files/web/generated/M21-GAP-03247-keymap-item-Weight-Paint-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03247", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03247", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03248", + "gapId": "keymap-item:Window:EMPTY:WINDOW:0", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03248-keymap-item-Window-EMPTY-WINDOW-0.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03248.py -- tests/files/web/generated/M21-GAP-03248-keymap-item-Window-EMPTY-WINDOW-0.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03248", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03248", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03249", + "gapId": "keymap-item:Window:EMPTY:WINDOW:1", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03249-keymap-item-Window-EMPTY-WINDOW-1.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03249.py -- tests/files/web/generated/M21-GAP-03249-keymap-item-Window-EMPTY-WINDOW-1.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03249", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03249", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03250", + "gapId": "keymap-item:Window:EMPTY:WINDOW:10", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03250-keymap-item-Window-EMPTY-WINDOW-10.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03250.py -- tests/files/web/generated/M21-GAP-03250-keymap-item-Window-EMPTY-WINDOW-10.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03250", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03250", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03251", + "gapId": "keymap-item:Window:EMPTY:WINDOW:11", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03251-keymap-item-Window-EMPTY-WINDOW-11.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03251.py -- tests/files/web/generated/M21-GAP-03251-keymap-item-Window-EMPTY-WINDOW-11.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03251", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03251", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03252", + "gapId": "keymap-item:Window:EMPTY:WINDOW:12", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03252-keymap-item-Window-EMPTY-WINDOW-12.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03252.py -- tests/files/web/generated/M21-GAP-03252-keymap-item-Window-EMPTY-WINDOW-12.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03252", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03252", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03253", + "gapId": "keymap-item:Window:EMPTY:WINDOW:13", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03253-keymap-item-Window-EMPTY-WINDOW-13.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03253.py -- tests/files/web/generated/M21-GAP-03253-keymap-item-Window-EMPTY-WINDOW-13.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03253", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03253", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03254", + "gapId": "keymap-item:Window:EMPTY:WINDOW:14", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03254-keymap-item-Window-EMPTY-WINDOW-14.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03254.py -- tests/files/web/generated/M21-GAP-03254-keymap-item-Window-EMPTY-WINDOW-14.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03254", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03254", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03255", + "gapId": "keymap-item:Window:EMPTY:WINDOW:15", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03255-keymap-item-Window-EMPTY-WINDOW-15.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03255.py -- tests/files/web/generated/M21-GAP-03255-keymap-item-Window-EMPTY-WINDOW-15.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03255", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03255", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03256", + "gapId": "keymap-item:Window:EMPTY:WINDOW:16", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03256-keymap-item-Window-EMPTY-WINDOW-16.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03256.py -- tests/files/web/generated/M21-GAP-03256-keymap-item-Window-EMPTY-WINDOW-16.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03256", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03256", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03257", + "gapId": "keymap-item:Window:EMPTY:WINDOW:17", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03257-keymap-item-Window-EMPTY-WINDOW-17.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03257.py -- tests/files/web/generated/M21-GAP-03257-keymap-item-Window-EMPTY-WINDOW-17.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03257", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03257", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03258", + "gapId": "keymap-item:Window:EMPTY:WINDOW:18", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03258-keymap-item-Window-EMPTY-WINDOW-18.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03258.py -- tests/files/web/generated/M21-GAP-03258-keymap-item-Window-EMPTY-WINDOW-18.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03258", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03258", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03259", + "gapId": "keymap-item:Window:EMPTY:WINDOW:19", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03259-keymap-item-Window-EMPTY-WINDOW-19.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03259.py -- tests/files/web/generated/M21-GAP-03259-keymap-item-Window-EMPTY-WINDOW-19.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03259", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03259", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03260", + "gapId": "keymap-item:Window:EMPTY:WINDOW:2", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03260-keymap-item-Window-EMPTY-WINDOW-2.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03260.py -- tests/files/web/generated/M21-GAP-03260-keymap-item-Window-EMPTY-WINDOW-2.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03260", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03260", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03261", + "gapId": "keymap-item:Window:EMPTY:WINDOW:20", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03261-keymap-item-Window-EMPTY-WINDOW-20.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03261.py -- tests/files/web/generated/M21-GAP-03261-keymap-item-Window-EMPTY-WINDOW-20.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03261", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03261", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03262", + "gapId": "keymap-item:Window:EMPTY:WINDOW:21", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03262-keymap-item-Window-EMPTY-WINDOW-21.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03262.py -- tests/files/web/generated/M21-GAP-03262-keymap-item-Window-EMPTY-WINDOW-21.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03262", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03262", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03263", + "gapId": "keymap-item:Window:EMPTY:WINDOW:22", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03263-keymap-item-Window-EMPTY-WINDOW-22.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03263.py -- tests/files/web/generated/M21-GAP-03263-keymap-item-Window-EMPTY-WINDOW-22.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03263", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03263", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03264", + "gapId": "keymap-item:Window:EMPTY:WINDOW:23", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03264-keymap-item-Window-EMPTY-WINDOW-23.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03264.py -- tests/files/web/generated/M21-GAP-03264-keymap-item-Window-EMPTY-WINDOW-23.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03264", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03264", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03265", + "gapId": "keymap-item:Window:EMPTY:WINDOW:24", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03265-keymap-item-Window-EMPTY-WINDOW-24.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03265.py -- tests/files/web/generated/M21-GAP-03265-keymap-item-Window-EMPTY-WINDOW-24.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03265", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03265", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03266", + "gapId": "keymap-item:Window:EMPTY:WINDOW:25", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03266-keymap-item-Window-EMPTY-WINDOW-25.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03266.py -- tests/files/web/generated/M21-GAP-03266-keymap-item-Window-EMPTY-WINDOW-25.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03266", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03266", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03267", + "gapId": "keymap-item:Window:EMPTY:WINDOW:26", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03267-keymap-item-Window-EMPTY-WINDOW-26.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03267.py -- tests/files/web/generated/M21-GAP-03267-keymap-item-Window-EMPTY-WINDOW-26.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03267", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03267", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03268", + "gapId": "keymap-item:Window:EMPTY:WINDOW:27", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03268-keymap-item-Window-EMPTY-WINDOW-27.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03268.py -- tests/files/web/generated/M21-GAP-03268-keymap-item-Window-EMPTY-WINDOW-27.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03268", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03268", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03269", + "gapId": "keymap-item:Window:EMPTY:WINDOW:28", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03269-keymap-item-Window-EMPTY-WINDOW-28.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03269.py -- tests/files/web/generated/M21-GAP-03269-keymap-item-Window-EMPTY-WINDOW-28.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03269", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03269", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03270", + "gapId": "keymap-item:Window:EMPTY:WINDOW:29", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03270-keymap-item-Window-EMPTY-WINDOW-29.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03270.py -- tests/files/web/generated/M21-GAP-03270-keymap-item-Window-EMPTY-WINDOW-29.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03270", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03270", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03271", + "gapId": "keymap-item:Window:EMPTY:WINDOW:3", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03271-keymap-item-Window-EMPTY-WINDOW-3.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03271.py -- tests/files/web/generated/M21-GAP-03271-keymap-item-Window-EMPTY-WINDOW-3.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03271", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03271", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03272", + "gapId": "keymap-item:Window:EMPTY:WINDOW:30", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03272-keymap-item-Window-EMPTY-WINDOW-30.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03272.py -- tests/files/web/generated/M21-GAP-03272-keymap-item-Window-EMPTY-WINDOW-30.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03272", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03272", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03273", + "gapId": "keymap-item:Window:EMPTY:WINDOW:31", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03273-keymap-item-Window-EMPTY-WINDOW-31.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03273.py -- tests/files/web/generated/M21-GAP-03273-keymap-item-Window-EMPTY-WINDOW-31.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03273", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03273", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03274", + "gapId": "keymap-item:Window:EMPTY:WINDOW:32", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03274-keymap-item-Window-EMPTY-WINDOW-32.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03274.py -- tests/files/web/generated/M21-GAP-03274-keymap-item-Window-EMPTY-WINDOW-32.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03274", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03274", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03275", + "gapId": "keymap-item:Window:EMPTY:WINDOW:4", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03275-keymap-item-Window-EMPTY-WINDOW-4.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03275.py -- tests/files/web/generated/M21-GAP-03275-keymap-item-Window-EMPTY-WINDOW-4.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03275", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03275", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03276", + "gapId": "keymap-item:Window:EMPTY:WINDOW:5", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03276-keymap-item-Window-EMPTY-WINDOW-5.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03276.py -- tests/files/web/generated/M21-GAP-03276-keymap-item-Window-EMPTY-WINDOW-5.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03276", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03276", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03277", + "gapId": "keymap-item:Window:EMPTY:WINDOW:6", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03277-keymap-item-Window-EMPTY-WINDOW-6.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03277.py -- tests/files/web/generated/M21-GAP-03277-keymap-item-Window-EMPTY-WINDOW-6.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03277", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03277", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03278", + "gapId": "keymap-item:Window:EMPTY:WINDOW:7", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03278-keymap-item-Window-EMPTY-WINDOW-7.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03278.py -- tests/files/web/generated/M21-GAP-03278-keymap-item-Window-EMPTY-WINDOW-7.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03278", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03278", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03279", + "gapId": "keymap-item:Window:EMPTY:WINDOW:8", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03279-keymap-item-Window-EMPTY-WINDOW-8.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03279.py -- tests/files/web/generated/M21-GAP-03279-keymap-item-Window-EMPTY-WINDOW-8.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03279", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03279", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03280", + "gapId": "keymap-item:Window:EMPTY:WINDOW:9", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03280-keymap-item-Window-EMPTY-WINDOW-9.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03280.py -- tests/files/web/generated/M21-GAP-03280-keymap-item-Window-EMPTY-WINDOW-9.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03280", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03280", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03281", + "gapId": "keymap:3D View Generic:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03281-keymap-3D-View-Generic-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03281.py -- tests/files/web/generated/M21-GAP-03281-keymap-3D-View-Generic-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03281", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03281", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03282", + "gapId": "keymap:3D View Tool: Bend:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03282-keymap-3D-View-Tool-Bend-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03282.py -- tests/files/web/generated/M21-GAP-03282-keymap-3D-View-Tool-Bend-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03282", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03282", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03283", + "gapId": "keymap:3D View Tool: Breakdowner:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03283-keymap-3D-View-Tool-Breakdowner-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03283.py -- tests/files/web/generated/M21-GAP-03283-keymap-3D-View-Tool-Breakdowner-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03283", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03283", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03284", + "gapId": "keymap:3D View Tool: Cursor:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03284-keymap-3D-View-Tool-Cursor-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03284.py -- tests/files/web/generated/M21-GAP-03284-keymap-3D-View-Tool-Cursor-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03284", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03284", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03285", + "gapId": "keymap:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03285-keymap-3D-View-Tool-Edit-Armature-B-Bone-Size-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03285.py -- tests/files/web/generated/M21-GAP-03285-keymap-3D-View-Tool-Edit-Armature-B-Bone-Size-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03285", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03285", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03286", + "gapId": "keymap:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03286-keymap-3D-View-Tool-Edit-Armature-Bone-Envelope-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03286.py -- tests/files/web/generated/M21-GAP-03286-keymap-3D-View-Tool-Edit-Armature-Bone-Envelope-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03286", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03286", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03287", + "gapId": "keymap:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03287-keymap-3D-View-Tool-Edit-Armature-Extrude-to-Cursor-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03287.py -- tests/files/web/generated/M21-GAP-03287-keymap-3D-View-Tool-Edit-Armature-Extrude-to-Cursor-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03287", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03287", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03288", + "gapId": "keymap:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03288-keymap-3D-View-Tool-Edit-Armature-Extrude-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03288.py -- tests/files/web/generated/M21-GAP-03288-keymap-3D-View-Tool-Edit-Armature-Extrude-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03288", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03288", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03289", + "gapId": "keymap:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03289-keymap-3D-View-Tool-Edit-Armature-Roll-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03289.py -- tests/files/web/generated/M21-GAP-03289-keymap-3D-View-Tool-Edit-Armature-Roll-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03289", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03289", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03290", + "gapId": "keymap:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03290-keymap-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03290.py -- tests/files/web/generated/M21-GAP-03290-keymap-3D-View-Tool-Edit-Curve-Curve-Pen-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03290", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03290", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03291", + "gapId": "keymap:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03291-keymap-3D-View-Tool-Edit-Curve-Draw-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03291.py -- tests/files/web/generated/M21-GAP-03291-keymap-3D-View-Tool-Edit-Curve-Draw-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03291", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03291", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03292", + "gapId": "keymap:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03292-keymap-3D-View-Tool-Edit-Curve-Extrude-to-Cursor-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03292.py -- tests/files/web/generated/M21-GAP-03292-keymap-3D-View-Tool-Edit-Curve-Extrude-to-Cursor-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03292", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03292", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03293", + "gapId": "keymap:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03293-keymap-3D-View-Tool-Edit-Curve-Extrude-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03293.py -- tests/files/web/generated/M21-GAP-03293-keymap-3D-View-Tool-Edit-Curve-Extrude-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03293", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03293", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03294", + "gapId": "keymap:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03294-keymap-3D-View-Tool-Edit-Curve-Radius-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03294.py -- tests/files/web/generated/M21-GAP-03294-keymap-3D-View-Tool-Edit-Curve-Radius-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03294", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03294", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03295", + "gapId": "keymap:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03295-keymap-3D-View-Tool-Edit-Curve-Randomize-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03295.py -- tests/files/web/generated/M21-GAP-03295-keymap-3D-View-Tool-Edit-Curve-Randomize-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03295", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03295", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03296", + "gapId": "keymap:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03296-keymap-3D-View-Tool-Edit-Curve-Tilt-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03296.py -- tests/files/web/generated/M21-GAP-03296-keymap-3D-View-Tool-Edit-Curve-Tilt-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03296", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03296", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03297", + "gapId": "keymap:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03297-keymap-3D-View-Tool-Edit-Curves-Draw-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03297.py -- tests/files/web/generated/M21-GAP-03297-keymap-3D-View-Tool-Edit-Curves-Draw-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03297", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03297", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03298", + "gapId": "keymap:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03298-keymap-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03298.py -- tests/files/web/generated/M21-GAP-03298-keymap-3D-View-Tool-Edit-Curves-Pen-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03298", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03298", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03299", + "gapId": "keymap:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03299-keymap-3D-View-Tool-Edit-Grease-Pencil-Gradient-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03299.py -- tests/files/web/generated/M21-GAP-03299-keymap-3D-View-Tool-Edit-Grease-Pencil-Gradient-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03299", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03299", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03300", + "gapId": "keymap:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03300-keymap-3D-View-Tool-Edit-Grease-Pencil-Interpolate-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03300.py -- tests/files/web/generated/M21-GAP-03300-keymap-3D-View-Tool-Edit-Grease-Pencil-Interpolate-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03300", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03300", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03301", + "gapId": "keymap:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03301-keymap-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03301.py -- tests/files/web/generated/M21-GAP-03301-keymap-3D-View-Tool-Edit-Grease-Pencil-Pen-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03301", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03301", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03302", + "gapId": "keymap:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03302-keymap-3D-View-Tool-Edit-Mesh-Bevel-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03302.py -- tests/files/web/generated/M21-GAP-03302-keymap-3D-View-Tool-Edit-Mesh-Bevel-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03302", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03302", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03303", + "gapId": "keymap:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03303-keymap-3D-View-Tool-Edit-Mesh-Bisect-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03303.py -- tests/files/web/generated/M21-GAP-03303-keymap-3D-View-Tool-Edit-Mesh-Bisect-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03303", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03303", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03304", + "gapId": "keymap:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03304-keymap-3D-View-Tool-Edit-Mesh-Edge-Slide-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03304.py -- tests/files/web/generated/M21-GAP-03304-keymap-3D-View-Tool-Edit-Mesh-Edge-Slide-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03304", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03304", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03305", + "gapId": "keymap:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03305-keymap-3D-View-Tool-Edit-Mesh-Extrude-Along-Normals-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03305.py -- tests/files/web/generated/M21-GAP-03305-keymap-3D-View-Tool-Edit-Mesh-Extrude-Along-Normals-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03305", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03305", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03306", + "gapId": "keymap:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03306-keymap-3D-View-Tool-Edit-Mesh-Extrude-Individual-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03306.py -- tests/files/web/generated/M21-GAP-03306-keymap-3D-View-Tool-Edit-Mesh-Extrude-Individual-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03306", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03306", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03307", + "gapId": "keymap:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03307-keymap-3D-View-Tool-Edit-Mesh-Extrude-Manifold-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03307.py -- tests/files/web/generated/M21-GAP-03307-keymap-3D-View-Tool-Edit-Mesh-Extrude-Manifold-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03307", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03307", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03308", + "gapId": "keymap:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03308-keymap-3D-View-Tool-Edit-Mesh-Extrude-Region-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03308.py -- tests/files/web/generated/M21-GAP-03308-keymap-3D-View-Tool-Edit-Mesh-Extrude-Region-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03308", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03308", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03309", + "gapId": "keymap:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03309-keymap-3D-View-Tool-Edit-Mesh-Extrude-to-Cursor-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03309.py -- tests/files/web/generated/M21-GAP-03309-keymap-3D-View-Tool-Edit-Mesh-Extrude-to-Cursor-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03309", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03309", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03310", + "gapId": "keymap:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03310-keymap-3D-View-Tool-Edit-Mesh-Inset-Faces-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03310.py -- tests/files/web/generated/M21-GAP-03310-keymap-3D-View-Tool-Edit-Mesh-Inset-Faces-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03310", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03310", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03311", + "gapId": "keymap:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03311-keymap-3D-View-Tool-Edit-Mesh-Knife-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03311.py -- tests/files/web/generated/M21-GAP-03311-keymap-3D-View-Tool-Edit-Mesh-Knife-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03311", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03311", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03312", + "gapId": "keymap:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03312-keymap-3D-View-Tool-Edit-Mesh-Loop-Cut-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03312.py -- tests/files/web/generated/M21-GAP-03312-keymap-3D-View-Tool-Edit-Mesh-Loop-Cut-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03312", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03312", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03313", + "gapId": "keymap:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03313-keymap-3D-View-Tool-Edit-Mesh-Offset-Edge-Loop-Cut-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03313.py -- tests/files/web/generated/M21-GAP-03313-keymap-3D-View-Tool-Edit-Mesh-Offset-Edge-Loop-Cut-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03313", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03313", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03314", + "gapId": "keymap:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03314-keymap-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03314.py -- tests/files/web/generated/M21-GAP-03314-keymap-3D-View-Tool-Edit-Mesh-Poly-Build-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03314", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03314", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03315", + "gapId": "keymap:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03315-keymap-3D-View-Tool-Edit-Mesh-Push-Pull-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03315.py -- tests/files/web/generated/M21-GAP-03315-keymap-3D-View-Tool-Edit-Mesh-Push-Pull-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03315", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03315", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03316", + "gapId": "keymap:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03316-keymap-3D-View-Tool-Edit-Mesh-Randomize-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03316.py -- tests/files/web/generated/M21-GAP-03316-keymap-3D-View-Tool-Edit-Mesh-Randomize-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03316", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03316", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03317", + "gapId": "keymap:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03317-keymap-3D-View-Tool-Edit-Mesh-Rip-Edge-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03317.py -- tests/files/web/generated/M21-GAP-03317-keymap-3D-View-Tool-Edit-Mesh-Rip-Edge-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03317", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03317", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03318", + "gapId": "keymap:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03318-keymap-3D-View-Tool-Edit-Mesh-Rip-Region-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03318.py -- tests/files/web/generated/M21-GAP-03318-keymap-3D-View-Tool-Edit-Mesh-Rip-Region-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03318", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03318", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03319", + "gapId": "keymap:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03319-keymap-3D-View-Tool-Edit-Mesh-Shrink-Fatten-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03319.py -- tests/files/web/generated/M21-GAP-03319-keymap-3D-View-Tool-Edit-Mesh-Shrink-Fatten-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03319", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03319", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03320", + "gapId": "keymap:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03320-keymap-3D-View-Tool-Edit-Mesh-Smooth-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03320.py -- tests/files/web/generated/M21-GAP-03320-keymap-3D-View-Tool-Edit-Mesh-Smooth-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03320", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03320", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03321", + "gapId": "keymap:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03321-keymap-3D-View-Tool-Edit-Mesh-Spin-Duplicates-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03321.py -- tests/files/web/generated/M21-GAP-03321-keymap-3D-View-Tool-Edit-Mesh-Spin-Duplicates-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03321", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03321", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03322", + "gapId": "keymap:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03322-keymap-3D-View-Tool-Edit-Mesh-Spin-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03322.py -- tests/files/web/generated/M21-GAP-03322-keymap-3D-View-Tool-Edit-Mesh-Spin-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03322", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03322", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03323", + "gapId": "keymap:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03323-keymap-3D-View-Tool-Edit-Mesh-To-Sphere-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03323.py -- tests/files/web/generated/M21-GAP-03323-keymap-3D-View-Tool-Edit-Mesh-To-Sphere-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03323", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03323", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03324", + "gapId": "keymap:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03324-keymap-3D-View-Tool-Edit-Mesh-Vertex-Slide-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03324.py -- tests/files/web/generated/M21-GAP-03324-keymap-3D-View-Tool-Edit-Mesh-Vertex-Slide-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03324", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03324", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03325", + "gapId": "keymap:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03325-keymap-3D-View-Tool-Edit-Text-Select-Text-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03325.py -- tests/files/web/generated/M21-GAP-03325-keymap-3D-View-Tool-Edit-Text-Select-Text-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03325", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03325", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03326", + "gapId": "keymap:3D View Tool: Measure:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03326-keymap-3D-View-Tool-Measure-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03326.py -- tests/files/web/generated/M21-GAP-03326-keymap-3D-View-Tool-Measure-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03326", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03326", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03327", + "gapId": "keymap:3D View Tool: Move:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03327-keymap-3D-View-Tool-Move-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03327.py -- tests/files/web/generated/M21-GAP-03327-keymap-3D-View-Tool-Move-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03327", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03327", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03328", + "gapId": "keymap:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03328-keymap-3D-View-Tool-Object-Add-Primitive-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03328.py -- tests/files/web/generated/M21-GAP-03328-keymap-3D-View-Tool-Object-Add-Primitive-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03328", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03328", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03329", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03329-keymap-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03329.py -- tests/files/web/generated/M21-GAP-03329-keymap-3D-View-Tool-Paint-Grease-Pencil-Arc-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03329", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03329", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03330", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03330-keymap-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03330.py -- tests/files/web/generated/M21-GAP-03330-keymap-3D-View-Tool-Paint-Grease-Pencil-Box-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03330", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03330", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03331", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03331-keymap-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03331.py -- tests/files/web/generated/M21-GAP-03331-keymap-3D-View-Tool-Paint-Grease-Pencil-Circle-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03331", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03331", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03332", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03332-keymap-3D-View-Tool-Paint-Grease-Pencil-Curve-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03332.py -- tests/files/web/generated/M21-GAP-03332-keymap-3D-View-Tool-Paint-Grease-Pencil-Curve-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03332", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03332", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03333", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03333-keymap-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03333.py -- tests/files/web/generated/M21-GAP-03333-keymap-3D-View-Tool-Paint-Grease-Pencil-Eyedropper-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03333", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03333", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03334", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03334-keymap-3D-View-Tool-Paint-Grease-Pencil-Interpolate-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03334.py -- tests/files/web/generated/M21-GAP-03334-keymap-3D-View-Tool-Paint-Grease-Pencil-Interpolate-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03334", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03334", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03335", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03335-keymap-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03335.py -- tests/files/web/generated/M21-GAP-03335-keymap-3D-View-Tool-Paint-Grease-Pencil-Line-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03335", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03335", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03336", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03336-keymap-3D-View-Tool-Paint-Grease-Pencil-Polyline-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03336.py -- tests/files/web/generated/M21-GAP-03336-keymap-3D-View-Tool-Paint-Grease-Pencil-Polyline-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03336", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03336", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03337", + "gapId": "keymap:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03337-keymap-3D-View-Tool-Paint-Grease-Pencil-Trim-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03337.py -- tests/files/web/generated/M21-GAP-03337-keymap-3D-View-Tool-Paint-Grease-Pencil-Trim-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03337", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03337", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03338", + "gapId": "keymap:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03338-keymap-3D-View-Tool-Paint-Weight-Gradient-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03338.py -- tests/files/web/generated/M21-GAP-03338-keymap-3D-View-Tool-Paint-Weight-Gradient-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03338", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03338", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03339", + "gapId": "keymap:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03339-keymap-3D-View-Tool-Paint-Weight-Sample-Vertex-Group-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03339.py -- tests/files/web/generated/M21-GAP-03339-keymap-3D-View-Tool-Paint-Weight-Sample-Vertex-Group-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03339", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03339", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03340", + "gapId": "keymap:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03340-keymap-3D-View-Tool-Paint-Weight-Sample-Weight-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03340.py -- tests/files/web/generated/M21-GAP-03340-keymap-3D-View-Tool-Paint-Weight-Sample-Weight-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03340", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03340", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03341", + "gapId": "keymap:3D View Tool: Push:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03341-keymap-3D-View-Tool-Push-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03341.py -- tests/files/web/generated/M21-GAP-03341-keymap-3D-View-Tool-Push-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03341", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03341", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03342", + "gapId": "keymap:3D View Tool: Relax:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03342-keymap-3D-View-Tool-Relax-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03342.py -- tests/files/web/generated/M21-GAP-03342-keymap-3D-View-Tool-Relax-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03342", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03342", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03343", + "gapId": "keymap:3D View Tool: Rotate:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03343-keymap-3D-View-Tool-Rotate-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03343.py -- tests/files/web/generated/M21-GAP-03343-keymap-3D-View-Tool-Rotate-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03343", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03343", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03344", + "gapId": "keymap:3D View Tool: Scale:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03344-keymap-3D-View-Tool-Scale-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03344.py -- tests/files/web/generated/M21-GAP-03344-keymap-3D-View-Tool-Scale-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03344", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03344", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03345", + "gapId": "keymap:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03345-keymap-3D-View-Tool-Sculpt-Box-Face-Set-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03345.py -- tests/files/web/generated/M21-GAP-03345-keymap-3D-View-Tool-Sculpt-Box-Face-Set-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03345", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03345", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03346", + "gapId": "keymap:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03346-keymap-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03346.py -- tests/files/web/generated/M21-GAP-03346-keymap-3D-View-Tool-Sculpt-Box-Hide-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03346", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03346", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03347", + "gapId": "keymap:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03347-keymap-3D-View-Tool-Sculpt-Box-Mask-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03347.py -- tests/files/web/generated/M21-GAP-03347-keymap-3D-View-Tool-Sculpt-Box-Mask-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03347", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03347", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03348", + "gapId": "keymap:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03348-keymap-3D-View-Tool-Sculpt-Box-Trim-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03348.py -- tests/files/web/generated/M21-GAP-03348-keymap-3D-View-Tool-Sculpt-Box-Trim-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03348", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03348", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03349", + "gapId": "keymap:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03349-keymap-3D-View-Tool-Sculpt-Cloth-Filter-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03349.py -- tests/files/web/generated/M21-GAP-03349-keymap-3D-View-Tool-Sculpt-Cloth-Filter-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03349", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03349", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03350", + "gapId": "keymap:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03350-keymap-3D-View-Tool-Sculpt-Color-Filter-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03350.py -- tests/files/web/generated/M21-GAP-03350-keymap-3D-View-Tool-Sculpt-Color-Filter-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03350", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03350", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03351", + "gapId": "keymap:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03351-keymap-3D-View-Tool-Sculpt-Face-Set-Edit-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03351.py -- tests/files/web/generated/M21-GAP-03351-keymap-3D-View-Tool-Sculpt-Face-Set-Edit-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03351", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03351", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03352", + "gapId": "keymap:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03352-keymap-3D-View-Tool-Sculpt-Lasso-Face-Set-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03352.py -- tests/files/web/generated/M21-GAP-03352-keymap-3D-View-Tool-Sculpt-Lasso-Face-Set-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03352", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03352", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03353", + "gapId": "keymap:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03353-keymap-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03353.py -- tests/files/web/generated/M21-GAP-03353-keymap-3D-View-Tool-Sculpt-Lasso-Hide-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03353", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03353", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03354", + "gapId": "keymap:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03354-keymap-3D-View-Tool-Sculpt-Lasso-Mask-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03354.py -- tests/files/web/generated/M21-GAP-03354-keymap-3D-View-Tool-Sculpt-Lasso-Mask-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03354", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03354", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03355", + "gapId": "keymap:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03355-keymap-3D-View-Tool-Sculpt-Lasso-Trim-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03355.py -- tests/files/web/generated/M21-GAP-03355-keymap-3D-View-Tool-Sculpt-Lasso-Trim-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03355", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03355", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03356", + "gapId": "keymap:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03356-keymap-3D-View-Tool-Sculpt-Line-Face-Set-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03356.py -- tests/files/web/generated/M21-GAP-03356-keymap-3D-View-Tool-Sculpt-Line-Face-Set-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03356", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03356", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03357", + "gapId": "keymap:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03357-keymap-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03357.py -- tests/files/web/generated/M21-GAP-03357-keymap-3D-View-Tool-Sculpt-Line-Hide-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03357", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03357", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03358", + "gapId": "keymap:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03358-keymap-3D-View-Tool-Sculpt-Line-Mask-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03358.py -- tests/files/web/generated/M21-GAP-03358-keymap-3D-View-Tool-Sculpt-Line-Mask-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03358", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03358", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03359", + "gapId": "keymap:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03359-keymap-3D-View-Tool-Sculpt-Line-Project-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03359.py -- tests/files/web/generated/M21-GAP-03359-keymap-3D-View-Tool-Sculpt-Line-Project-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03359", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03359", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03360", + "gapId": "keymap:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03360-keymap-3D-View-Tool-Sculpt-Line-Trim-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03360.py -- tests/files/web/generated/M21-GAP-03360-keymap-3D-View-Tool-Sculpt-Line-Trim-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03360", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03360", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03361", + "gapId": "keymap:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03361-keymap-3D-View-Tool-Sculpt-Mask-by-Color-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03361.py -- tests/files/web/generated/M21-GAP-03361-keymap-3D-View-Tool-Sculpt-Mask-by-Color-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03361", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03361", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03362", + "gapId": "keymap:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03362-keymap-3D-View-Tool-Sculpt-Mesh-Filter-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03362.py -- tests/files/web/generated/M21-GAP-03362-keymap-3D-View-Tool-Sculpt-Mesh-Filter-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03362", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03362", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03363", + "gapId": "keymap:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03363-keymap-3D-View-Tool-Sculpt-Polyline-Face-Set-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03363.py -- tests/files/web/generated/M21-GAP-03363-keymap-3D-View-Tool-Sculpt-Polyline-Face-Set-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03363", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03363", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03364", + "gapId": "keymap:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03364-keymap-3D-View-Tool-Sculpt-Polyline-Hide-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03364.py -- tests/files/web/generated/M21-GAP-03364-keymap-3D-View-Tool-Sculpt-Polyline-Hide-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03364", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03364", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03365", + "gapId": "keymap:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03365-keymap-3D-View-Tool-Sculpt-Polyline-Mask-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03365.py -- tests/files/web/generated/M21-GAP-03365-keymap-3D-View-Tool-Sculpt-Polyline-Mask-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03365", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03365", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03366", + "gapId": "keymap:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03366-keymap-3D-View-Tool-Sculpt-Polyline-Trim-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03366.py -- tests/files/web/generated/M21-GAP-03366-keymap-3D-View-Tool-Sculpt-Polyline-Trim-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03366", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03366", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03367", + "gapId": "keymap:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03367-keymap-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03367.py -- tests/files/web/generated/M21-GAP-03367-keymap-3D-View-Tool-Select-Box-fallback-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03367", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03367", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03368", + "gapId": "keymap:3D View Tool: Select Box:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03368-keymap-3D-View-Tool-Select-Box-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03368.py -- tests/files/web/generated/M21-GAP-03368-keymap-3D-View-Tool-Select-Box-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03368", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03368", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03369", + "gapId": "keymap:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03369-keymap-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03369.py -- tests/files/web/generated/M21-GAP-03369-keymap-3D-View-Tool-Select-Circle-fallback-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03369", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03369", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03370", + "gapId": "keymap:3D View Tool: Select Circle:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03370-keymap-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03370.py -- tests/files/web/generated/M21-GAP-03370-keymap-3D-View-Tool-Select-Circle-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03370", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03370", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03371", + "gapId": "keymap:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03371-keymap-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03371.py -- tests/files/web/generated/M21-GAP-03371-keymap-3D-View-Tool-Select-Lasso-fallback-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03371", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03371", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03372", + "gapId": "keymap:3D View Tool: Select Lasso:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03372-keymap-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03372.py -- tests/files/web/generated/M21-GAP-03372-keymap-3D-View-Tool-Select-Lasso-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03372", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03372", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03373", + "gapId": "keymap:3D View Tool: Shear:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03373-keymap-3D-View-Tool-Shear-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03373.py -- tests/files/web/generated/M21-GAP-03373-keymap-3D-View-Tool-Shear-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03373", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03373", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03374", + "gapId": "keymap:3D View Tool: Transform:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03374-keymap-3D-View-Tool-Transform-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03374.py -- tests/files/web/generated/M21-GAP-03374-keymap-3D-View-Tool-Transform-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03374", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03374", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03375", + "gapId": "keymap:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03375-keymap-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03375.py -- tests/files/web/generated/M21-GAP-03375-keymap-3D-View-Tool-Tweak-fallback-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03375", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03375", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03376", + "gapId": "keymap:3D View Tool: Tweak:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03376-keymap-3D-View-Tool-Tweak-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03376.py -- tests/files/web/generated/M21-GAP-03376-keymap-3D-View-Tool-Tweak-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03376", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03376", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03377", + "gapId": "keymap:3D View:VIEW_3D:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03377-keymap-3D-View-VIEW_3D-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03377.py -- tests/files/web/generated/M21-GAP-03377-keymap-3D-View-VIEW_3D-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03377", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03377", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03378", + "gapId": "keymap:Animation Channels:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03378-keymap-Animation-Channels-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03378.py -- tests/files/web/generated/M21-GAP-03378-keymap-Animation-Channels-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03378", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03378", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03379", + "gapId": "keymap:Animation:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03379-keymap-Animation-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03379.py -- tests/files/web/generated/M21-GAP-03379-keymap-Animation-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03379", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03379", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03380", + "gapId": "keymap:Armature:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03380-keymap-Armature-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03380.py -- tests/files/web/generated/M21-GAP-03380-keymap-Armature-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03380", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03380", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03381", + "gapId": "keymap:Bevel Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03381-keymap-Bevel-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03381.py -- tests/files/web/generated/M21-GAP-03381-keymap-Bevel-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03381", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03381", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03382", + "gapId": "keymap:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03382-keymap-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03382.py -- tests/files/web/generated/M21-GAP-03382-keymap-Clip-Dopesheet-Editor-CLIP_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03382", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03382", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03383", + "gapId": "keymap:Clip Editor:CLIP_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03383-keymap-Clip-Editor-CLIP_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03383.py -- tests/files/web/generated/M21-GAP-03383-keymap-Clip-Editor-CLIP_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03383", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03383", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03384", + "gapId": "keymap:Clip Graph Editor:CLIP_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03384-keymap-Clip-Graph-Editor-CLIP_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03384.py -- tests/files/web/generated/M21-GAP-03384-keymap-Clip-Graph-Editor-CLIP_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03384", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03384", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03385", + "gapId": "keymap:Clip Time Scrub:CLIP_EDITOR:PREVIEW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03385-keymap-Clip-Time-Scrub-CLIP_EDITOR-PREVIEW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03385.py -- tests/files/web/generated/M21-GAP-03385-keymap-Clip-Time-Scrub-CLIP_EDITOR-PREVIEW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03385", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03385", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03386", + "gapId": "keymap:Clip:CLIP_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03386-keymap-Clip-CLIP_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03386.py -- tests/files/web/generated/M21-GAP-03386-keymap-Clip-CLIP_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03386", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03386", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03387", + "gapId": "keymap:Console:CONSOLE:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03387-keymap-Console-CONSOLE-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03387.py -- tests/files/web/generated/M21-GAP-03387-keymap-Console-CONSOLE-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03387", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03387", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03388", + "gapId": "keymap:Curve Pen Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03388-keymap-Curve-Pen-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03388.py -- tests/files/web/generated/M21-GAP-03388-keymap-Curve-Pen-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03388", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03388", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03389", + "gapId": "keymap:Curve:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03389-keymap-Curve-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03389.py -- tests/files/web/generated/M21-GAP-03389-keymap-Curve-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03389", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03389", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03390", + "gapId": "keymap:Curves:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03390-keymap-Curves-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03390.py -- tests/files/web/generated/M21-GAP-03390-keymap-Curves-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03390", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03390", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03391", + "gapId": "keymap:Custom Normals Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03391-keymap-Custom-Normals-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03391.py -- tests/files/web/generated/M21-GAP-03391-keymap-Custom-Normals-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03391", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03391", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03392", + "gapId": "keymap:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03392-keymap-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03392.py -- tests/files/web/generated/M21-GAP-03392-keymap-Dopesheet-Generic-DOPESHEET_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03392", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03392", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03393", + "gapId": "keymap:Dopesheet:DOPESHEET_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03393-keymap-Dopesheet-DOPESHEET_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03393.py -- tests/files/web/generated/M21-GAP-03393-keymap-Dopesheet-DOPESHEET_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03393", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03393", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03394", + "gapId": "keymap:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03394-keymap-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03394.py -- tests/files/web/generated/M21-GAP-03394-keymap-Eyedropper-ColorRamp-PointSampling-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03394", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03394", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03395", + "gapId": "keymap:Eyedropper Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03395-keymap-Eyedropper-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03395.py -- tests/files/web/generated/M21-GAP-03395-keymap-Eyedropper-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03395", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03395", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03396", + "gapId": "keymap:File Browser Buttons:FILE_BROWSER:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03396-keymap-File-Browser-Buttons-FILE_BROWSER-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03396.py -- tests/files/web/generated/M21-GAP-03396-keymap-File-Browser-Buttons-FILE_BROWSER-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03396", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03396", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03397", + "gapId": "keymap:File Browser Main:FILE_BROWSER:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03397-keymap-File-Browser-Main-FILE_BROWSER-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03397.py -- tests/files/web/generated/M21-GAP-03397-keymap-File-Browser-Main-FILE_BROWSER-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03397", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03397", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03398", + "gapId": "keymap:File Browser:FILE_BROWSER:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03398-keymap-File-Browser-FILE_BROWSER-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03398.py -- tests/files/web/generated/M21-GAP-03398-keymap-File-Browser-FILE_BROWSER-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03398", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03398", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03399", + "gapId": "keymap:Fill Tool Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03399-keymap-Fill-Tool-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03399.py -- tests/files/web/generated/M21-GAP-03399-keymap-Fill-Tool-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03399", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03399", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03400", + "gapId": "keymap:Font:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03400-keymap-Font-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03400.py -- tests/files/web/generated/M21-GAP-03400-keymap-Font-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03400", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03400", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03401", + "gapId": "keymap:Frames:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03401-keymap-Frames-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03401.py -- tests/files/web/generated/M21-GAP-03401-keymap-Frames-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03401", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03401", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03402", + "gapId": "keymap:Generic Gizmo Click Drag:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03402-keymap-Generic-Gizmo-Click-Drag-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03402.py -- tests/files/web/generated/M21-GAP-03402-keymap-Generic-Gizmo-Click-Drag-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03402", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03402", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03403", + "gapId": "keymap:Generic Gizmo Drag:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03403-keymap-Generic-Gizmo-Drag-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03403.py -- tests/files/web/generated/M21-GAP-03403-keymap-Generic-Gizmo-Drag-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03403", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03403", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03404", + "gapId": "keymap:Generic Gizmo Maybe Drag:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03404-keymap-Generic-Gizmo-Maybe-Drag-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03404.py -- tests/files/web/generated/M21-GAP-03404-keymap-Generic-Gizmo-Maybe-Drag-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03404", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03404", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03405", + "gapId": "keymap:Generic Gizmo Select:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03405-keymap-Generic-Gizmo-Select-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03405.py -- tests/files/web/generated/M21-GAP-03405-keymap-Generic-Gizmo-Select-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03405", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03405", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03406", + "gapId": "keymap:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03406-keymap-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03406.py -- tests/files/web/generated/M21-GAP-03406-keymap-Generic-Gizmo-Tweak-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03406", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03406", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03407", + "gapId": "keymap:Generic Gizmo:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03407-keymap-Generic-Gizmo-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03407.py -- tests/files/web/generated/M21-GAP-03407-keymap-Generic-Gizmo-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03407", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03407", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03408", + "gapId": "keymap:Generic Tool: Annotate Eraser:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03408-keymap-Generic-Tool-Annotate-Eraser-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03408.py -- tests/files/web/generated/M21-GAP-03408-keymap-Generic-Tool-Annotate-Eraser-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03408", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03408", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03409", + "gapId": "keymap:Generic Tool: Annotate Line:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03409-keymap-Generic-Tool-Annotate-Line-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03409.py -- tests/files/web/generated/M21-GAP-03409-keymap-Generic-Tool-Annotate-Line-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03409", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03409", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03410", + "gapId": "keymap:Generic Tool: Annotate Polygon:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03410-keymap-Generic-Tool-Annotate-Polygon-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03410.py -- tests/files/web/generated/M21-GAP-03410-keymap-Generic-Tool-Annotate-Polygon-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03410", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03410", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03411", + "gapId": "keymap:Generic Tool: Annotate:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03411-keymap-Generic-Tool-Annotate-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03411.py -- tests/files/web/generated/M21-GAP-03411-keymap-Generic-Tool-Annotate-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03411", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03411", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03412", + "gapId": "keymap:Gesture Box:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03412-keymap-Gesture-Box-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03412.py -- tests/files/web/generated/M21-GAP-03412-keymap-Gesture-Box-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03412", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03412", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03413", + "gapId": "keymap:Gesture Lasso:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03413-keymap-Gesture-Lasso-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03413.py -- tests/files/web/generated/M21-GAP-03413-keymap-Gesture-Lasso-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03413", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03413", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03414", + "gapId": "keymap:Gesture Polyline:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03414-keymap-Gesture-Polyline-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03414.py -- tests/files/web/generated/M21-GAP-03414-keymap-Gesture-Polyline-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03414", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03414", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03415", + "gapId": "keymap:Gesture Straight Line:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03415-keymap-Gesture-Straight-Line-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03415.py -- tests/files/web/generated/M21-GAP-03415-keymap-Gesture-Straight-Line-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03415", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03415", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03416", + "gapId": "keymap:Gesture Zoom Border:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03416-keymap-Gesture-Zoom-Border-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03416.py -- tests/files/web/generated/M21-GAP-03416-keymap-Gesture-Zoom-Border-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03416", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03416", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03417", + "gapId": "keymap:Graph Editor Generic:GRAPH_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03417-keymap-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03417.py -- tests/files/web/generated/M21-GAP-03417-keymap-Graph-Editor-Generic-GRAPH_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03417", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03417", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03418", + "gapId": "keymap:Graph Editor:GRAPH_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03418-keymap-Graph-Editor-GRAPH_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03418.py -- tests/files/web/generated/M21-GAP-03418-keymap-Graph-Editor-GRAPH_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03418", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03418", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03419", + "gapId": "keymap:Grease Pencil Brush Stroke:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03419-keymap-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03419.py -- tests/files/web/generated/M21-GAP-03419-keymap-Grease-Pencil-Brush-Stroke-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03419", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03419", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03420", + "gapId": "keymap:Grease Pencil Draw Mode:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03420-keymap-Grease-Pencil-Draw-Mode-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03420.py -- tests/files/web/generated/M21-GAP-03420-keymap-Grease-Pencil-Draw-Mode-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03420", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03420", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03421", + "gapId": "keymap:Grease Pencil Edit Mode:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03421-keymap-Grease-Pencil-Edit-Mode-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03421.py -- tests/files/web/generated/M21-GAP-03421-keymap-Grease-Pencil-Edit-Mode-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03421", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03421", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03422", + "gapId": "keymap:Grease Pencil Fill Tool:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03422-keymap-Grease-Pencil-Fill-Tool-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03422.py -- tests/files/web/generated/M21-GAP-03422-keymap-Grease-Pencil-Fill-Tool-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03422", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03422", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03423", + "gapId": "keymap:Grease Pencil Sculpt Mode:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03423-keymap-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03423.py -- tests/files/web/generated/M21-GAP-03423-keymap-Grease-Pencil-Sculpt-Mode-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03423", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03423", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03424", + "gapId": "keymap:Grease Pencil Selection:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03424-keymap-Grease-Pencil-Selection-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03424.py -- tests/files/web/generated/M21-GAP-03424-keymap-Grease-Pencil-Selection-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03424", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03424", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03425", + "gapId": "keymap:Grease Pencil Vertex Paint:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03425-keymap-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03425.py -- tests/files/web/generated/M21-GAP-03425-keymap-Grease-Pencil-Vertex-Paint-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03425", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03425", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03426", + "gapId": "keymap:Grease Pencil Weight Paint:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03426-keymap-Grease-Pencil-Weight-Paint-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03426.py -- tests/files/web/generated/M21-GAP-03426-keymap-Grease-Pencil-Weight-Paint-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03426", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03426", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03427", + "gapId": "keymap:Grease Pencil:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03427-keymap-Grease-Pencil-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03427.py -- tests/files/web/generated/M21-GAP-03427-keymap-Grease-Pencil-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03427", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03427", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03428", + "gapId": "keymap:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03428-keymap-Image-Editor-Tool-Mask-Box-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03428.py -- tests/files/web/generated/M21-GAP-03428-keymap-Image-Editor-Tool-Mask-Box-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03428", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03428", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03429", + "gapId": "keymap:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03429-keymap-Image-Editor-Tool-Mask-Circle-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03429.py -- tests/files/web/generated/M21-GAP-03429-keymap-Image-Editor-Tool-Mask-Circle-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03429", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03429", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03430", + "gapId": "keymap:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03430-keymap-Image-Editor-Tool-Mask-Cursor-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03430.py -- tests/files/web/generated/M21-GAP-03430-keymap-Image-Editor-Tool-Mask-Cursor-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03430", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03430", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03431", + "gapId": "keymap:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03431-keymap-Image-Editor-Tool-Mask-Move-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03431.py -- tests/files/web/generated/M21-GAP-03431-keymap-Image-Editor-Tool-Mask-Move-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03431", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03431", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03432", + "gapId": "keymap:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03432-keymap-Image-Editor-Tool-Mask-Rotate-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03432.py -- tests/files/web/generated/M21-GAP-03432-keymap-Image-Editor-Tool-Mask-Rotate-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03432", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03432", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03433", + "gapId": "keymap:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03433-keymap-Image-Editor-Tool-Mask-Scale-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03433.py -- tests/files/web/generated/M21-GAP-03433-keymap-Image-Editor-Tool-Mask-Scale-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03433", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03433", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03434", + "gapId": "keymap:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03434-keymap-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03434.py -- tests/files/web/generated/M21-GAP-03434-keymap-Image-Editor-Tool-Mask-Select-Box-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03434", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03434", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03435", + "gapId": "keymap:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03435-keymap-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03435.py -- tests/files/web/generated/M21-GAP-03435-keymap-Image-Editor-Tool-Mask-Select-Box-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03435", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03435", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03436", + "gapId": "keymap:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03436-keymap-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03436.py -- tests/files/web/generated/M21-GAP-03436-keymap-Image-Editor-Tool-Mask-Select-Circle-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03436", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03436", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03437", + "gapId": "keymap:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03437-keymap-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03437.py -- tests/files/web/generated/M21-GAP-03437-keymap-Image-Editor-Tool-Mask-Select-Circle-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03437", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03437", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03438", + "gapId": "keymap:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03438-keymap-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03438.py -- tests/files/web/generated/M21-GAP-03438-keymap-Image-Editor-Tool-Mask-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03438", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03438", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03439", + "gapId": "keymap:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03439-keymap-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03439.py -- tests/files/web/generated/M21-GAP-03439-keymap-Image-Editor-Tool-Mask-Select-Lasso-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03439", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03439", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03440", + "gapId": "keymap:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03440-keymap-Image-Editor-Tool-Mask-Transform-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03440.py -- tests/files/web/generated/M21-GAP-03440-keymap-Image-Editor-Tool-Mask-Transform-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03440", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03440", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03441", + "gapId": "keymap:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03441-keymap-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03441.py -- tests/files/web/generated/M21-GAP-03441-keymap-Image-Editor-Tool-Mask-Tweak-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03441", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03441", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03442", + "gapId": "keymap:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03442-keymap-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03442.py -- tests/files/web/generated/M21-GAP-03442-keymap-Image-Editor-Tool-Mask-Tweak-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03442", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03442", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03443", + "gapId": "keymap:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03443-keymap-Image-Editor-Tool-Sample-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03443.py -- tests/files/web/generated/M21-GAP-03443-keymap-Image-Editor-Tool-Sample-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03443", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03443", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03444", + "gapId": "keymap:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03444-keymap-Image-Editor-Tool-Uv-Cursor-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03444.py -- tests/files/web/generated/M21-GAP-03444-keymap-Image-Editor-Tool-Uv-Cursor-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03444", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03444", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03445", + "gapId": "keymap:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03445-keymap-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03445.py -- tests/files/web/generated/M21-GAP-03445-keymap-Image-Editor-Tool-Uv-Grab-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03445", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03445", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03446", + "gapId": "keymap:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03446-keymap-Image-Editor-Tool-Uv-Move-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03446.py -- tests/files/web/generated/M21-GAP-03446-keymap-Image-Editor-Tool-Uv-Move-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03446", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03446", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03447", + "gapId": "keymap:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03447-keymap-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03447.py -- tests/files/web/generated/M21-GAP-03447-keymap-Image-Editor-Tool-Uv-Pinch-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03447", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03447", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03448", + "gapId": "keymap:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03448-keymap-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03448.py -- tests/files/web/generated/M21-GAP-03448-keymap-Image-Editor-Tool-Uv-Relax-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03448", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03448", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03449", + "gapId": "keymap:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03449-keymap-Image-Editor-Tool-Uv-Rip-Region-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03449.py -- tests/files/web/generated/M21-GAP-03449-keymap-Image-Editor-Tool-Uv-Rip-Region-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03449", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03449", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03450", + "gapId": "keymap:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03450-keymap-Image-Editor-Tool-Uv-Rotate-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03450.py -- tests/files/web/generated/M21-GAP-03450-keymap-Image-Editor-Tool-Uv-Rotate-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03450", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03450", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03451", + "gapId": "keymap:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03451-keymap-Image-Editor-Tool-Uv-Scale-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03451.py -- tests/files/web/generated/M21-GAP-03451-keymap-Image-Editor-Tool-Uv-Scale-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03451", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03451", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03452", + "gapId": "keymap:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03452-keymap-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03452.py -- tests/files/web/generated/M21-GAP-03452-keymap-Image-Editor-Tool-Uv-Select-Box-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03452", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03452", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03453", + "gapId": "keymap:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03453-keymap-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03453.py -- tests/files/web/generated/M21-GAP-03453-keymap-Image-Editor-Tool-Uv-Select-Box-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03453", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03453", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03454", + "gapId": "keymap:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03454-keymap-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03454.py -- tests/files/web/generated/M21-GAP-03454-keymap-Image-Editor-Tool-Uv-Select-Circle-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03454", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03454", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03455", + "gapId": "keymap:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03455-keymap-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03455.py -- tests/files/web/generated/M21-GAP-03455-keymap-Image-Editor-Tool-Uv-Select-Circle-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03455", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03455", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03456", + "gapId": "keymap:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03456-keymap-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03456.py -- tests/files/web/generated/M21-GAP-03456-keymap-Image-Editor-Tool-Uv-Select-Lasso-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03456", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03456", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03457", + "gapId": "keymap:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03457-keymap-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03457.py -- tests/files/web/generated/M21-GAP-03457-keymap-Image-Editor-Tool-Uv-Select-Lasso-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03457", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03457", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03458", + "gapId": "keymap:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03458-keymap-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03458.py -- tests/files/web/generated/M21-GAP-03458-keymap-Image-Editor-Tool-Uv-Tweak-fallback-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03458", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03458", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03459", + "gapId": "keymap:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03459-keymap-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03459.py -- tests/files/web/generated/M21-GAP-03459-keymap-Image-Editor-Tool-Uv-Tweak-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03459", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03459", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03460", + "gapId": "keymap:Image Generic:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03460-keymap-Image-Generic-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03460.py -- tests/files/web/generated/M21-GAP-03460-keymap-Image-Generic-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03460", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03460", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03461", + "gapId": "keymap:Image Paint:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03461-keymap-Image-Paint-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03461.py -- tests/files/web/generated/M21-GAP-03461-keymap-Image-Paint-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03461", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03461", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03462", + "gapId": "keymap:Image:IMAGE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03462-keymap-Image-IMAGE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03462.py -- tests/files/web/generated/M21-GAP-03462-keymap-Image-IMAGE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03462", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03462", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03463", + "gapId": "keymap:Info:INFO:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03463-keymap-Info-INFO-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03463.py -- tests/files/web/generated/M21-GAP-03463-keymap-Info-INFO-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03463", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03463", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03464", + "gapId": "keymap:Interpolate Tool Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03464-keymap-Interpolate-Tool-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03464.py -- tests/files/web/generated/M21-GAP-03464-keymap-Interpolate-Tool-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03464", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03464", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03465", + "gapId": "keymap:Knife Tool Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03465-keymap-Knife-Tool-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03465.py -- tests/files/web/generated/M21-GAP-03465-keymap-Knife-Tool-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03465", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03465", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03466", + "gapId": "keymap:Lattice:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03466-keymap-Lattice-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03466.py -- tests/files/web/generated/M21-GAP-03466-keymap-Lattice-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03466", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03466", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03467", + "gapId": "keymap:Markers:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03467-keymap-Markers-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03467.py -- tests/files/web/generated/M21-GAP-03467-keymap-Markers-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03467", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03467", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03468", + "gapId": "keymap:Mask Editing:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03468-keymap-Mask-Editing-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03468.py -- tests/files/web/generated/M21-GAP-03468-keymap-Mask-Editing-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03468", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03468", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03469", + "gapId": "keymap:Mesh Filter Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03469-keymap-Mesh-Filter-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03469.py -- tests/files/web/generated/M21-GAP-03469-keymap-Mesh-Filter-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03469", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03469", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03470", + "gapId": "keymap:Mesh:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03470-keymap-Mesh-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03470.py -- tests/files/web/generated/M21-GAP-03470-keymap-Mesh-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03470", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03470", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03471", + "gapId": "keymap:Metaball:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03471-keymap-Metaball-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03471.py -- tests/files/web/generated/M21-GAP-03471-keymap-Metaball-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03471", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03471", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03472", + "gapId": "keymap:NLA Editor:NLA_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03472-keymap-NLA-Editor-NLA_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03472.py -- tests/files/web/generated/M21-GAP-03472-keymap-NLA-Editor-NLA_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03472", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03472", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03473", + "gapId": "keymap:NLA Generic:NLA_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03473-keymap-NLA-Generic-NLA_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03473.py -- tests/files/web/generated/M21-GAP-03473-keymap-NLA-Generic-NLA_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03473", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03473", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03474", + "gapId": "keymap:NLA Tracks:NLA_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03474-keymap-NLA-Tracks-NLA_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03474.py -- tests/files/web/generated/M21-GAP-03474-keymap-NLA-Tracks-NLA_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03474", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03474", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03475", + "gapId": "keymap:Node Editor:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03475-keymap-Node-Editor-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03475.py -- tests/files/web/generated/M21-GAP-03475-keymap-Node-Editor-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03475", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03475", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03476", + "gapId": "keymap:Node Generic:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03476-keymap-Node-Generic-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03476.py -- tests/files/web/generated/M21-GAP-03476-keymap-Node-Generic-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03476", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03476", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03477", + "gapId": "keymap:Node Link Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03477-keymap-Node-Link-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03477.py -- tests/files/web/generated/M21-GAP-03477-keymap-Node-Link-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03477", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03477", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03478", + "gapId": "keymap:Node Resize Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03478-keymap-Node-Resize-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03478.py -- tests/files/web/generated/M21-GAP-03478-keymap-Node-Resize-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03478", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03478", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03479", + "gapId": "keymap:Node Tool: Add Reroute:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03479-keymap-Node-Tool-Add-Reroute-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03479.py -- tests/files/web/generated/M21-GAP-03479-keymap-Node-Tool-Add-Reroute-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03479", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03479", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03480", + "gapId": "keymap:Node Tool: Links Cut:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03480-keymap-Node-Tool-Links-Cut-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03480.py -- tests/files/web/generated/M21-GAP-03480-keymap-Node-Tool-Links-Cut-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03480", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03480", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03481", + "gapId": "keymap:Node Tool: Mute Links:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03481-keymap-Node-Tool-Mute-Links-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03481.py -- tests/files/web/generated/M21-GAP-03481-keymap-Node-Tool-Mute-Links-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03481", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03481", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03482", + "gapId": "keymap:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03482-keymap-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03482.py -- tests/files/web/generated/M21-GAP-03482-keymap-Node-Tool-Select-Box-fallback-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03482", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03482", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03483", + "gapId": "keymap:Node Tool: Select Box:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03483-keymap-Node-Tool-Select-Box-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03483.py -- tests/files/web/generated/M21-GAP-03483-keymap-Node-Tool-Select-Box-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03483", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03483", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03484", + "gapId": "keymap:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03484-keymap-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03484.py -- tests/files/web/generated/M21-GAP-03484-keymap-Node-Tool-Select-Circle-fallback-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03484", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03484", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03485", + "gapId": "keymap:Node Tool: Select Circle:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03485-keymap-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03485.py -- tests/files/web/generated/M21-GAP-03485-keymap-Node-Tool-Select-Circle-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03485", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03485", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03486", + "gapId": "keymap:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03486-keymap-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03486.py -- tests/files/web/generated/M21-GAP-03486-keymap-Node-Tool-Select-Lasso-fallback-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03486", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03486", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03487", + "gapId": "keymap:Node Tool: Select Lasso:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03487-keymap-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03487.py -- tests/files/web/generated/M21-GAP-03487-keymap-Node-Tool-Select-Lasso-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03487", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03487", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03488", + "gapId": "keymap:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03488-keymap-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03488.py -- tests/files/web/generated/M21-GAP-03488-keymap-Node-Tool-Tweak-fallback-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03488", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03488", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03489", + "gapId": "keymap:Node Tool: Tweak:NODE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03489-keymap-Node-Tool-Tweak-NODE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03489.py -- tests/files/web/generated/M21-GAP-03489-keymap-Node-Tool-Tweak-NODE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03489", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03489", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03490", + "gapId": "keymap:Object Mode:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03490-keymap-Object-Mode-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03490.py -- tests/files/web/generated/M21-GAP-03490-keymap-Object-Mode-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03490", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03490", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03491", + "gapId": "keymap:Object Non-modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03491-keymap-Object-Non-modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03491.py -- tests/files/web/generated/M21-GAP-03491-keymap-Object-Non-modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03491", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03491", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03492", + "gapId": "keymap:Outliner:OUTLINER:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03492-keymap-Outliner-OUTLINER-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03492.py -- tests/files/web/generated/M21-GAP-03492-keymap-Outliner-OUTLINER-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03492", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03492", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03493", + "gapId": "keymap:Paint Curve:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03493-keymap-Paint-Curve-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03493.py -- tests/files/web/generated/M21-GAP-03493-keymap-Paint-Curve-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03493", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03493", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03494", + "gapId": "keymap:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03494-keymap-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03494.py -- tests/files/web/generated/M21-GAP-03494-keymap-Paint-Face-Mask-Weight-Vertex-Texture-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03494", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03494", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03495", + "gapId": "keymap:Paint Stroke Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03495-keymap-Paint-Stroke-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03495.py -- tests/files/web/generated/M21-GAP-03495-keymap-Paint-Stroke-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03495", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03495", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03496", + "gapId": "keymap:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03496-keymap-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03496.py -- tests/files/web/generated/M21-GAP-03496-keymap-Paint-Vertex-Selection-Weight-Vertex-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03496", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03496", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03497", + "gapId": "keymap:Particle:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03497-keymap-Particle-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03497.py -- tests/files/web/generated/M21-GAP-03497-keymap-Particle-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03497", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03497", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03498", + "gapId": "keymap:Pen Tool Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03498-keymap-Pen-Tool-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03498.py -- tests/files/web/generated/M21-GAP-03498-keymap-Pen-Tool-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03498", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03498", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03499", + "gapId": "keymap:Point Cloud:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03499-keymap-Point-Cloud-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03499.py -- tests/files/web/generated/M21-GAP-03499-keymap-Point-Cloud-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03499", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03499", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03500", + "gapId": "keymap:Pose:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03500-keymap-Pose-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03500.py -- tests/files/web/generated/M21-GAP-03500-keymap-Pose-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03500", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03500", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03501", + "gapId": "keymap:Preferences:PREFERENCES:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03501-keymap-Preferences-PREFERENCES-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03501.py -- tests/files/web/generated/M21-GAP-03501-keymap-Preferences-PREFERENCES-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03501", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03501", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03502", + "gapId": "keymap:Preferences_nav:PREFERENCES:UI", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03502-keymap-Preferences_nav-PREFERENCES-UI.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03502.py -- tests/files/web/generated/M21-GAP-03502-keymap-Preferences_nav-PREFERENCES-UI.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03502", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03502", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03503", + "gapId": "keymap:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03503-keymap-Preview-Tool-Cursor-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03503.py -- tests/files/web/generated/M21-GAP-03503-keymap-Preview-Tool-Cursor-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03503", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03503", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03504", + "gapId": "keymap:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03504-keymap-Preview-Tool-Move-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03504.py -- tests/files/web/generated/M21-GAP-03504-keymap-Preview-Tool-Move-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03504", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03504", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03505", + "gapId": "keymap:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03505-keymap-Preview-Tool-Rotate-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03505.py -- tests/files/web/generated/M21-GAP-03505-keymap-Preview-Tool-Rotate-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03505", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03505", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03506", + "gapId": "keymap:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03506-keymap-Preview-Tool-Sample-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03506.py -- tests/files/web/generated/M21-GAP-03506-keymap-Preview-Tool-Sample-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03506", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03506", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03507", + "gapId": "keymap:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03507-keymap-Preview-Tool-Scale-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03507.py -- tests/files/web/generated/M21-GAP-03507-keymap-Preview-Tool-Scale-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03507", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03507", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03508", + "gapId": "keymap:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03508-keymap-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03508.py -- tests/files/web/generated/M21-GAP-03508-keymap-Preview-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03508", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03508", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03509", + "gapId": "keymap:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03509-keymap-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03509.py -- tests/files/web/generated/M21-GAP-03509-keymap-Preview-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03509", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03509", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03510", + "gapId": "keymap:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03510-keymap-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03510.py -- tests/files/web/generated/M21-GAP-03510-keymap-Preview-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03510", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03510", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03511", + "gapId": "keymap:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03511-keymap-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03511.py -- tests/files/web/generated/M21-GAP-03511-keymap-Preview-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03511", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03511", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03512", + "gapId": "keymap:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03512-keymap-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03512.py -- tests/files/web/generated/M21-GAP-03512-keymap-Preview-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03512", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03512", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03513", + "gapId": "keymap:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03513-keymap-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03513.py -- tests/files/web/generated/M21-GAP-03513-keymap-Preview-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03513", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03513", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03514", + "gapId": "keymap:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03514-keymap-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03514.py -- tests/files/web/generated/M21-GAP-03514-keymap-Preview-Tool-Tweak-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03514", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03514", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03515", + "gapId": "keymap:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03515-keymap-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03515.py -- tests/files/web/generated/M21-GAP-03515-keymap-Preview-Tool-Tweak-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03515", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03515", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03516", + "gapId": "keymap:Preview:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03516-keymap-Preview-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03516.py -- tests/files/web/generated/M21-GAP-03516-keymap-Preview-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03516", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03516", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03517", + "gapId": "keymap:Primitive Tool Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03517-keymap-Primitive-Tool-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03517.py -- tests/files/web/generated/M21-GAP-03517-keymap-Primitive-Tool-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03517", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03517", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03518", + "gapId": "keymap:Property Editor:PROPERTIES:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03518-keymap-Property-Editor-PROPERTIES-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03518.py -- tests/files/web/generated/M21-GAP-03518-keymap-Property-Editor-PROPERTIES-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03518", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03518", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03519", + "gapId": "keymap:Region Context Menu:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03519-keymap-Region-Context-Menu-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03519.py -- tests/files/web/generated/M21-GAP-03519-keymap-Region-Context-Menu-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03519", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03519", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03520", + "gapId": "keymap:Screen Editing:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03520-keymap-Screen-Editing-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03520.py -- tests/files/web/generated/M21-GAP-03520-keymap-Screen-Editing-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03520", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03520", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03521", + "gapId": "keymap:Screen:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03521-keymap-Screen-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03521.py -- tests/files/web/generated/M21-GAP-03521-keymap-Screen-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03521", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03521", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03522", + "gapId": "keymap:Sculpt Curves:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03522-keymap-Sculpt-Curves-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03522.py -- tests/files/web/generated/M21-GAP-03522-keymap-Sculpt-Curves-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03522", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03522", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03523", + "gapId": "keymap:Sculpt Expand Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03523-keymap-Sculpt-Expand-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03523.py -- tests/files/web/generated/M21-GAP-03523-keymap-Sculpt-Expand-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03523", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03523", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03524", + "gapId": "keymap:Sculpt:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03524-keymap-Sculpt-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03524.py -- tests/files/web/generated/M21-GAP-03524-keymap-Sculpt-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03524", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03524", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03525", + "gapId": "keymap:Sequencer Channels:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03525-keymap-Sequencer-Channels-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03525.py -- tests/files/web/generated/M21-GAP-03525-keymap-Sequencer-Channels-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03525", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03525", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03526", + "gapId": "keymap:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03526-keymap-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03526.py -- tests/files/web/generated/M21-GAP-03526-keymap-Sequencer-Tool-Blade-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03526", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03526", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03527", + "gapId": "keymap:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03527-keymap-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03527.py -- tests/files/web/generated/M21-GAP-03527-keymap-Sequencer-Tool-Select-Box-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03527", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03527", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03528", + "gapId": "keymap:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03528-keymap-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03528.py -- tests/files/web/generated/M21-GAP-03528-keymap-Sequencer-Tool-Select-Box-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03528", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03528", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03529", + "gapId": "keymap:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03529-keymap-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03529.py -- tests/files/web/generated/M21-GAP-03529-keymap-Sequencer-Tool-Select-Circle-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03529", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03529", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03530", + "gapId": "keymap:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03530-keymap-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03530.py -- tests/files/web/generated/M21-GAP-03530-keymap-Sequencer-Tool-Select-Circle-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03530", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03530", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03531", + "gapId": "keymap:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03531-keymap-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03531.py -- tests/files/web/generated/M21-GAP-03531-keymap-Sequencer-Tool-Select-Lasso-fallback-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03531", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03531", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03532", + "gapId": "keymap:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03532-keymap-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03532.py -- tests/files/web/generated/M21-GAP-03532-keymap-Sequencer-Tool-Select-Lasso-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03532", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03532", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03533", + "gapId": "keymap:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03533-keymap-Sequencer-Tool-Slip-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03533.py -- tests/files/web/generated/M21-GAP-03533-keymap-Sequencer-Tool-Slip-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03533", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03533", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03534", + "gapId": "keymap:Sequencer:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03534-keymap-Sequencer-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03534.py -- tests/files/web/generated/M21-GAP-03534-keymap-Sequencer-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03534", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03534", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03535", + "gapId": "keymap:Slip Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03535-keymap-Slip-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03535.py -- tests/files/web/generated/M21-GAP-03535-keymap-Slip-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03535", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03535", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03536", + "gapId": "keymap:Spreadsheet Generic:SPREADSHEET:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03536-keymap-Spreadsheet-Generic-SPREADSHEET-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03536.py -- tests/files/web/generated/M21-GAP-03536-keymap-Spreadsheet-Generic-SPREADSHEET-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03536", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03536", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03537", + "gapId": "keymap:Standard Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03537-keymap-Standard-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03537.py -- tests/files/web/generated/M21-GAP-03537-keymap-Standard-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03537", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03537", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03538", + "gapId": "keymap:Text Generic:TEXT_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03538-keymap-Text-Generic-TEXT_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03538.py -- tests/files/web/generated/M21-GAP-03538-keymap-Text-Generic-TEXT_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03538", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03538", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03539", + "gapId": "keymap:Text:TEXT_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03539-keymap-Text-TEXT_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03539.py -- tests/files/web/generated/M21-GAP-03539-keymap-Text-TEXT_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03539", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03539", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03540", + "gapId": "keymap:Time Scrub:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03540-keymap-Time-Scrub-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03540.py -- tests/files/web/generated/M21-GAP-03540-keymap-Time-Scrub-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03540", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03540", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03541", + "gapId": "keymap:Toolbar Popup:EMPTY:TEMPORARY", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03541-keymap-Toolbar-Popup-EMPTY-TEMPORARY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03541.py -- tests/files/web/generated/M21-GAP-03541-keymap-Toolbar-Popup-EMPTY-TEMPORARY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03541", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03541", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03542", + "gapId": "keymap:Transform Axis Target Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03542-keymap-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03542.py -- tests/files/web/generated/M21-GAP-03542-keymap-Transform-Axis-Target-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03542", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03542", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03543", + "gapId": "keymap:Transform Modal Map:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03543-keymap-Transform-Modal-Map-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03543.py -- tests/files/web/generated/M21-GAP-03543-keymap-Transform-Modal-Map-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03543", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03543", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03544", + "gapId": "keymap:UV Editor:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03544-keymap-UV-Editor-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03544.py -- tests/files/web/generated/M21-GAP-03544-keymap-UV-Editor-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03544", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03544", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03545", + "gapId": "keymap:User Interface:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03545-keymap-User-Interface-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03545.py -- tests/files/web/generated/M21-GAP-03545-keymap-User-Interface-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03545", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03545", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03546", + "gapId": "keymap:Vertex Paint:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03546-keymap-Vertex-Paint-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03546.py -- tests/files/web/generated/M21-GAP-03546-keymap-Vertex-Paint-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03546", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03546", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03547", + "gapId": "keymap:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03547-keymap-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03547.py -- tests/files/web/generated/M21-GAP-03547-keymap-Video-Sequence-Editor-SEQUENCE_EDITOR-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03547", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03547", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03548", + "gapId": "keymap:View2D Buttons List:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03548-keymap-View2D-Buttons-List-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03548.py -- tests/files/web/generated/M21-GAP-03548-keymap-View2D-Buttons-List-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03548", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03548", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03549", + "gapId": "keymap:View2D:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03549-keymap-View2D-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03549.py -- tests/files/web/generated/M21-GAP-03549-keymap-View2D-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03549", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03549", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03550", + "gapId": "keymap:View3D Dolly Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03550-keymap-View3D-Dolly-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03550.py -- tests/files/web/generated/M21-GAP-03550-keymap-View3D-Dolly-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03550", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03550", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03551", + "gapId": "keymap:View3D Fly Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03551-keymap-View3D-Fly-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03551.py -- tests/files/web/generated/M21-GAP-03551-keymap-View3D-Fly-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03551", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03551", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03552", + "gapId": "keymap:View3D Gesture Circle:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03552-keymap-View3D-Gesture-Circle-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03552.py -- tests/files/web/generated/M21-GAP-03552-keymap-View3D-Gesture-Circle-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03552", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03552", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03553", + "gapId": "keymap:View3D Move Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03553-keymap-View3D-Move-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03553.py -- tests/files/web/generated/M21-GAP-03553-keymap-View3D-Move-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03553", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03553", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03554", + "gapId": "keymap:View3D Placement Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03554-keymap-View3D-Placement-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03554.py -- tests/files/web/generated/M21-GAP-03554-keymap-View3D-Placement-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03554", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03554", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03555", + "gapId": "keymap:View3D Rotate Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03555-keymap-View3D-Rotate-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03555.py -- tests/files/web/generated/M21-GAP-03555-keymap-View3D-Rotate-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03555", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03555", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03556", + "gapId": "keymap:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03556-keymap-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03556.py -- tests/files/web/generated/M21-GAP-03556-keymap-View3D-VR-Location-Scouting-Capture-Review-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03556", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03556", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03557", + "gapId": "keymap:View3D Walk Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03557-keymap-View3D-Walk-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03557.py -- tests/files/web/generated/M21-GAP-03557-keymap-View3D-Walk-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03557", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03557", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03558", + "gapId": "keymap:View3D Zoom Modal:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03558-keymap-View3D-Zoom-Modal-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03558.py -- tests/files/web/generated/M21-GAP-03558-keymap-View3D-Zoom-Modal-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03558", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03558", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03559", + "gapId": "keymap:Weight Paint:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03559-keymap-Weight-Paint-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03559.py -- tests/files/web/generated/M21-GAP-03559-keymap-Weight-Paint-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03559", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03559", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03560", + "gapId": "keymap:Window:EMPTY:WINDOW", + "ownerFamily": "KEYMAP", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03560-keymap-Window-EMPTY-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03560.py -- tests/files/web/generated/M21-GAP-03560-keymap-Window-EMPTY-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03560", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03560", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03561", + "gapId": "region:ASSET_SHELF", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03561-region-ASSET_SHELF.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03561.py -- tests/files/web/generated/M21-GAP-03561-region-ASSET_SHELF.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03561", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03561", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03562", + "gapId": "region:ASSET_SHELF_HEADER", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03562-region-ASSET_SHELF_HEADER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03562.py -- tests/files/web/generated/M21-GAP-03562-region-ASSET_SHELF_HEADER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03562", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03562", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03563", + "gapId": "region:CHANNELS", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03563-region-CHANNELS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03563.py -- tests/files/web/generated/M21-GAP-03563-region-CHANNELS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03563", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03563", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03564", + "gapId": "region:EXECUTE", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03564-region-EXECUTE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03564.py -- tests/files/web/generated/M21-GAP-03564-region-EXECUTE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03564", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03564", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03565", + "gapId": "region:FOOTER", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03565-region-FOOTER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03565.py -- tests/files/web/generated/M21-GAP-03565-region-FOOTER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03565", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03565", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03566", + "gapId": "region:HEADER", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03566-region-HEADER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03566.py -- tests/files/web/generated/M21-GAP-03566-region-HEADER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03566", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03566", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03567", + "gapId": "region:HUD", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03567-region-HUD.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03567.py -- tests/files/web/generated/M21-GAP-03567-region-HUD.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03567", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03567", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03568", + "gapId": "region:NAVIGATION_BAR", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03568-region-NAVIGATION_BAR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03568.py -- tests/files/web/generated/M21-GAP-03568-region-NAVIGATION_BAR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03568", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03568", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03569", + "gapId": "region:PREVIEW", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03569-region-PREVIEW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03569.py -- tests/files/web/generated/M21-GAP-03569-region-PREVIEW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03569", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03569", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03570", + "gapId": "region:SCRUBBING", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03570-region-SCRUBBING.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03570.py -- tests/files/web/generated/M21-GAP-03570-region-SCRUBBING.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03570", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03570", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03571", + "gapId": "region:TEMPORARY", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03571-region-TEMPORARY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03571.py -- tests/files/web/generated/M21-GAP-03571-region-TEMPORARY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03571", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03571", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03572", + "gapId": "region:TOOLS", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03572-region-TOOLS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03572.py -- tests/files/web/generated/M21-GAP-03572-region-TOOLS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03572", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03572", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03573", + "gapId": "region:TOOL_HEADER", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03573-region-TOOL_HEADER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03573.py -- tests/files/web/generated/M21-GAP-03573-region-TOOL_HEADER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03573", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03573", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03574", + "gapId": "region:TOOL_PROPS", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03574-region-TOOL_PROPS.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03574.py -- tests/files/web/generated/M21-GAP-03574-region-TOOL_PROPS.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03574", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03574", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03575", + "gapId": "region:UI", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03575-region-UI.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03575.py -- tests/files/web/generated/M21-GAP-03575-region-UI.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03575", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03575", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03576", + "gapId": "region:WINDOW", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03576-region-WINDOW.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03576.py -- tests/files/web/generated/M21-GAP-03576-region-WINDOW.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03576", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03576", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03577", + "gapId": "region:XR", + "ownerFamily": "REGION", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03577-region-XR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03577.py -- tests/files/web/generated/M21-GAP-03577-region-XR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03577", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03577", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03578", + "gapId": "space-class:SpaceClipEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03578-space-class-SpaceClipEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03578.py -- tests/files/web/generated/M21-GAP-03578-space-class-SpaceClipEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03578", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03578", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03579", + "gapId": "space-class:SpaceConsole", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03579-space-class-SpaceConsole.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03579.py -- tests/files/web/generated/M21-GAP-03579-space-class-SpaceConsole.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03579", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03579", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03580", + "gapId": "space-class:SpaceDopeSheetEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03580-space-class-SpaceDopeSheetEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03580.py -- tests/files/web/generated/M21-GAP-03580-space-class-SpaceDopeSheetEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03580", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03580", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03581", + "gapId": "space-class:SpaceFileBrowser", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03581-space-class-SpaceFileBrowser.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03581.py -- tests/files/web/generated/M21-GAP-03581-space-class-SpaceFileBrowser.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03581", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03581", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03582", + "gapId": "space-class:SpaceGraphEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03582-space-class-SpaceGraphEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03582.py -- tests/files/web/generated/M21-GAP-03582-space-class-SpaceGraphEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03582", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03582", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03583", + "gapId": "space-class:SpaceImageEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03583-space-class-SpaceImageEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03583.py -- tests/files/web/generated/M21-GAP-03583-space-class-SpaceImageEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03583", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03583", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03584", + "gapId": "space-class:SpaceInfo", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03584-space-class-SpaceInfo.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03584.py -- tests/files/web/generated/M21-GAP-03584-space-class-SpaceInfo.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03584", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03584", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03585", + "gapId": "space-class:SpaceNLA", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03585-space-class-SpaceNLA.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03585.py -- tests/files/web/generated/M21-GAP-03585-space-class-SpaceNLA.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03585", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03585", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03586", + "gapId": "space-class:SpaceNodeEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03586-space-class-SpaceNodeEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03586.py -- tests/files/web/generated/M21-GAP-03586-space-class-SpaceNodeEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03586", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03586", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03587", + "gapId": "space-class:SpaceOutliner", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03587-space-class-SpaceOutliner.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03587.py -- tests/files/web/generated/M21-GAP-03587-space-class-SpaceOutliner.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03587", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03587", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03588", + "gapId": "space-class:SpacePreferences", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03588-space-class-SpacePreferences.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03588.py -- tests/files/web/generated/M21-GAP-03588-space-class-SpacePreferences.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03588", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03588", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03589", + "gapId": "space-class:SpaceProperties", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03589-space-class-SpaceProperties.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03589.py -- tests/files/web/generated/M21-GAP-03589-space-class-SpaceProperties.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03589", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03589", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03590", + "gapId": "space-class:SpaceSequenceEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03590-space-class-SpaceSequenceEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03590.py -- tests/files/web/generated/M21-GAP-03590-space-class-SpaceSequenceEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03590", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03590", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03591", + "gapId": "space-class:SpaceSpreadsheet", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03591-space-class-SpaceSpreadsheet.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03591.py -- tests/files/web/generated/M21-GAP-03591-space-class-SpaceSpreadsheet.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03591", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03591", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03592", + "gapId": "space-class:SpaceTextEditor", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03592-space-class-SpaceTextEditor.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03592.py -- tests/files/web/generated/M21-GAP-03592-space-class-SpaceTextEditor.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03592", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03592", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03593", + "gapId": "space-class:SpaceView3D", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03593-space-class-SpaceView3D.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03593.py -- tests/files/web/generated/M21-GAP-03593-space-class-SpaceView3D.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03593", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03593", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03594", + "gapId": "space:CLIP_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03594-space-CLIP_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03594.py -- tests/files/web/generated/M21-GAP-03594-space-CLIP_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03594", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03594", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03595", + "gapId": "space:CONSOLE", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03595-space-CONSOLE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03595.py -- tests/files/web/generated/M21-GAP-03595-space-CONSOLE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03595", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03595", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03596", + "gapId": "space:DOPESHEET_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03596-space-DOPESHEET_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03596.py -- tests/files/web/generated/M21-GAP-03596-space-DOPESHEET_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03596", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03596", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03597", + "gapId": "space:EMPTY", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03597-space-EMPTY.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03597.py -- tests/files/web/generated/M21-GAP-03597-space-EMPTY.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03597", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03597", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03598", + "gapId": "space:FILE_BROWSER", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03598-space-FILE_BROWSER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03598.py -- tests/files/web/generated/M21-GAP-03598-space-FILE_BROWSER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03598", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03598", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03599", + "gapId": "space:GRAPH_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03599-space-GRAPH_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03599.py -- tests/files/web/generated/M21-GAP-03599-space-GRAPH_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03599", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03599", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03600", + "gapId": "space:IMAGE_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03600-space-IMAGE_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03600.py -- tests/files/web/generated/M21-GAP-03600-space-IMAGE_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03600", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03600", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03601", + "gapId": "space:INFO", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03601-space-INFO.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03601.py -- tests/files/web/generated/M21-GAP-03601-space-INFO.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03601", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03601", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03602", + "gapId": "space:NLA_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03602-space-NLA_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03602.py -- tests/files/web/generated/M21-GAP-03602-space-NLA_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03602", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03602", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03603", + "gapId": "space:NODE_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03603-space-NODE_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03603.py -- tests/files/web/generated/M21-GAP-03603-space-NODE_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03603", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03603", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03604", + "gapId": "space:OUTLINER", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03604-space-OUTLINER.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03604.py -- tests/files/web/generated/M21-GAP-03604-space-OUTLINER.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03604", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03604", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03605", + "gapId": "space:PREFERENCES", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03605-space-PREFERENCES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03605.py -- tests/files/web/generated/M21-GAP-03605-space-PREFERENCES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03605", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03605", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03606", + "gapId": "space:PROPERTIES", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03606-space-PROPERTIES.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03606.py -- tests/files/web/generated/M21-GAP-03606-space-PROPERTIES.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03606", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03606", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03607", + "gapId": "space:SEQUENCE_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03607-space-SEQUENCE_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03607.py -- tests/files/web/generated/M21-GAP-03607-space-SEQUENCE_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03607", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03607", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03608", + "gapId": "space:SPREADSHEET", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03608-space-SPREADSHEET.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03608.py -- tests/files/web/generated/M21-GAP-03608-space-SPREADSHEET.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03608", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03608", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03609", + "gapId": "space:STATUSBAR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03609-space-STATUSBAR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03609.py -- tests/files/web/generated/M21-GAP-03609-space-STATUSBAR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03609", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03609", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03610", + "gapId": "space:TEXT_EDITOR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03610-space-TEXT_EDITOR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03610.py -- tests/files/web/generated/M21-GAP-03610-space-TEXT_EDITOR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03610", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03610", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03611", + "gapId": "space:TOPBAR", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03611-space-TOPBAR.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03611.py -- tests/files/web/generated/M21-GAP-03611-space-TOPBAR.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03611", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03611", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03612", + "gapId": "space:VIEW_3D", + "ownerFamily": "SPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03612-space-VIEW_3D.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03612.py -- tests/files/web/generated/M21-GAP-03612-space-VIEW_3D.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03612", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03612", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03613", + "gapId": "workspace:EDIT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03613-workspace-EDIT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03613.py -- tests/files/web/generated/M21-GAP-03613-workspace-EDIT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03613", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03613", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03614", + "gapId": "workspace:EDIT_GPENCIL", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03614-workspace-EDIT_GPENCIL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03614.py -- tests/files/web/generated/M21-GAP-03614-workspace-EDIT_GPENCIL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03614", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03614", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03615", + "gapId": "workspace:OBJECT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03615-workspace-OBJECT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03615.py -- tests/files/web/generated/M21-GAP-03615-workspace-OBJECT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03615", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03615", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03616", + "gapId": "workspace:PAINT_GREASE_PENCIL", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03616-workspace-PAINT_GREASE_PENCIL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03616.py -- tests/files/web/generated/M21-GAP-03616-workspace-PAINT_GREASE_PENCIL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03616", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03616", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03617", + "gapId": "workspace:PARTICLE_EDIT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03617-workspace-PARTICLE_EDIT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03617.py -- tests/files/web/generated/M21-GAP-03617-workspace-PARTICLE_EDIT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03617", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03617", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03618", + "gapId": "workspace:POSE", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03618-workspace-POSE.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03618.py -- tests/files/web/generated/M21-GAP-03618-workspace-POSE.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03618", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03618", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03619", + "gapId": "workspace:SCULPT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03619-workspace-SCULPT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03619.py -- tests/files/web/generated/M21-GAP-03619-workspace-SCULPT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03619", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03619", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03620", + "gapId": "workspace:SCULPT_GREASE_PENCIL", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03620-workspace-SCULPT_GREASE_PENCIL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03620.py -- tests/files/web/generated/M21-GAP-03620-workspace-SCULPT_GREASE_PENCIL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03620", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03620", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03621", + "gapId": "workspace:TEXTURE_PAINT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03621-workspace-TEXTURE_PAINT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03621.py -- tests/files/web/generated/M21-GAP-03621-workspace-TEXTURE_PAINT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03621", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03621", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03622", + "gapId": "workspace:VERTEX_GREASE_PENCIL", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03622-workspace-VERTEX_GREASE_PENCIL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03622.py -- tests/files/web/generated/M21-GAP-03622-workspace-VERTEX_GREASE_PENCIL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03622", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03622", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03623", + "gapId": "workspace:VERTEX_PAINT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03623-workspace-VERTEX_PAINT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03623.py -- tests/files/web/generated/M21-GAP-03623-workspace-VERTEX_PAINT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03623", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03623", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03624", + "gapId": "workspace:WEIGHT_GREASE_PENCIL", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03624-workspace-WEIGHT_GREASE_PENCIL.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03624.py -- tests/files/web/generated/M21-GAP-03624-workspace-WEIGHT_GREASE_PENCIL.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03624", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03624", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M21-GAP-03625", + "gapId": "workspace:WEIGHT_PAINT", + "ownerFamily": "WORKSPACE", + "sourceTask": "M15-01E", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M21-GAP-03625-workspace-WEIGHT_PAINT.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M21-GAP-03625.py -- tests/files/web/generated/M21-GAP-03625-workspace-WEIGHT_PAINT.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M21-GAP-03625", + "comparator": "node tools/web/check-generated-gap.mjs --task M21-GAP-03625", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00001", + "gapId": "rna:Depsgraph:Depsgraph", + "ownerFamily": "Depsgraph", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00001-rna-Depsgraph-Depsgraph.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00001.py -- tests/files/web/generated/M22-GAP-00001-rna-Depsgraph-Depsgraph.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00001", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00001", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00002", + "gapId": "rna:Depsgraph:DepsgraphObjectInstance", + "ownerFamily": "Depsgraph", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00002-rna-Depsgraph-DepsgraphObjectInstance.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00002.py -- tests/files/web/generated/M22-GAP-00002-rna-Depsgraph-DepsgraphObjectInstance.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00002", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00002", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00003", + "gapId": "rna:Depsgraph:DepsgraphUpdate", + "ownerFamily": "Depsgraph", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00003-rna-Depsgraph-DepsgraphUpdate.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00003.py -- tests/files/web/generated/M22-GAP-00003-rna-Depsgraph-DepsgraphUpdate.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00003", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00003", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00004", + "gapId": "rna:Scene:Camera", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00004-rna-Scene-Camera.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00004.py -- tests/files/web/generated/M22-GAP-00004-rna-Scene-Camera.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00004", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00004", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00005", + "gapId": "rna:Scene:Collection", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00005-rna-Scene-Collection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00005.py -- tests/files/web/generated/M22-GAP-00005-rna-Scene-Collection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00005", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00005", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00006", + "gapId": "rna:Scene:Constraint", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00006-rna-Scene-Constraint.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00006.py -- tests/files/web/generated/M22-GAP-00006-rna-Scene-Constraint.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00006", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00006", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00007", + "gapId": "rna:Scene:LayerCollection", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00007-rna-Scene-LayerCollection.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00007.py -- tests/files/web/generated/M22-GAP-00007-rna-Scene-LayerCollection.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00007", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00007", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00008", + "gapId": "rna:Scene:Light", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00008-rna-Scene-Light.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00008.py -- tests/files/web/generated/M22-GAP-00008-rna-Scene-Light.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00008", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00008", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00009", + "gapId": "rna:Scene:Material", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00009-rna-Scene-Material.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00009.py -- tests/files/web/generated/M22-GAP-00009-rna-Scene-Material.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00009", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00009", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00010", + "gapId": "rna:Scene:Modifier", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00010-rna-Scene-Modifier.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00010.py -- tests/files/web/generated/M22-GAP-00010-rna-Scene-Modifier.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00010", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00010", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00011", + "gapId": "rna:Scene:NodeTree", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00011-rna-Scene-NodeTree.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00011.py -- tests/files/web/generated/M22-GAP-00011-rna-Scene-NodeTree.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00011", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00011", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00012", + "gapId": "rna:Scene:Object", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00012-rna-Scene-Object.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00012.py -- tests/files/web/generated/M22-GAP-00012-rna-Scene-Object.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00012", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00012", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00013", + "gapId": "rna:Scene:RenderSettings", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00013-rna-Scene-RenderSettings.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00013.py -- tests/files/web/generated/M22-GAP-00013-rna-Scene-RenderSettings.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00013", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00013", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00014", + "gapId": "rna:Scene:Scene", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00014-rna-Scene-Scene.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00014.py -- tests/files/web/generated/M22-GAP-00014-rna-Scene-Scene.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00014", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00014", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00015", + "gapId": "rna:Scene:Screen", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00015-rna-Scene-Screen.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00015.py -- tests/files/web/generated/M22-GAP-00015-rna-Scene-Screen.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00015", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00015", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00016", + "gapId": "rna:Scene:ViewLayer", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00016-rna-Scene-ViewLayer.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00016.py -- tests/files/web/generated/M22-GAP-00016-rna-Scene-ViewLayer.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00016", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00016", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00017", + "gapId": "rna:Scene:Window", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00017-rna-Scene-Window.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00017.py -- tests/files/web/generated/M22-GAP-00017-rna-Scene-Window.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00017", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00017", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00018", + "gapId": "rna:Scene:WindowManager", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00018-rna-Scene-WindowManager.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00018.py -- tests/files/web/generated/M22-GAP-00018-rna-Scene-WindowManager.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00018", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00018", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + }, + { + "id": "M22-GAP-00019", + "gapId": "rna:Scene:World", + "ownerFamily": "Scene", + "sourceTask": "M15-01F", + "state": "pending", + "dependencies": [], + "targetImplementationClass": "LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M22-GAP-00019-rna-Scene-World.blend", + "state": "REQUIRED" + }, + "desktopCommand": "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M22-GAP-00019.py -- tests/files/web/generated/M22-GAP-00019-rna-Scene-World.blend", + "webCommand": "npm --prefix web run test:generated-gap -- --task M22-GAP-00019", + "comparator": "node tools/web/check-generated-gap.mjs --task M22-GAP-00019", + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ] + } + ], + "firstTask": "M16-GAP-00071", + "closureGate": "M15-03E", + "nextTask": "M15-03B" +} diff --git a/tests/golden/M15-03A/task-catalog.jsonl b/tests/golden/M15-03A/task-catalog.jsonl new file mode 100644 index 00000000..ccd355cd --- /dev/null +++ b/tests/golden/M15-03A/task-catalog.jsonl @@ -0,0 +1,6900 @@ +{"id":"M16-GAP-00001","gapId":"datablock:Action","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00002","gapId":"datablock:Armature","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00003","gapId":"datablock:Brush","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00004","gapId":"datablock:Camera","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00005","gapId":"datablock:Collection","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00006","gapId":"datablock:Curve","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00007","gapId":"datablock:Curves","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00008","gapId":"datablock:FreestyleLineStyle","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00009","gapId":"datablock:GreasePencil","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00010","gapId":"datablock:Lattice","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00011","gapId":"datablock:Library","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00012","gapId":"datablock:Light","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00013","gapId":"datablock:Material","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00014","gapId":"datablock:Mesh","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00015","gapId":"datablock:MetaBall","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00016","gapId":"datablock:NodeTree","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00017","gapId":"datablock:Object","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00018","gapId":"datablock:ParticleSettings","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00019","gapId":"datablock:PointCloud","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00020","gapId":"datablock:Scene","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00021","gapId":"datablock:Screen","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00022","gapId":"datablock:Sound","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00023","gapId":"datablock:Speaker","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00024","gapId":"datablock:Text","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00025","gapId":"datablock:Texture","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00026","gapId":"datablock:Volume","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00027","gapId":"datablock:WindowManager","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00028","gapId":"datablock:WorkSpace","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00029","gapId":"datablock:World","ownerFamily":"RNA_DATABLOCK","sourceTask":"M15-01A","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00030","gapId":"modifier:ARMATURE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00031","gapId":"modifier:ARRAY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00032","gapId":"modifier:BEVEL","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00033","gapId":"modifier:BOOLEAN","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00034","gapId":"modifier:BUILD","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00035","gapId":"modifier:CAST","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00036","gapId":"modifier:CLOTH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00037","gapId":"modifier:COLLISION","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00038","gapId":"modifier:CORRECTIVE_SMOOTH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00039","gapId":"modifier:CURVE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00040","gapId":"modifier:DATA_TRANSFER","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00041","gapId":"modifier:DECIMATE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00042","gapId":"modifier:DISPLACE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00043","gapId":"modifier:DYNAMIC_PAINT","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00044","gapId":"modifier:EDGE_SPLIT","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00045","gapId":"modifier:EXPLODE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00046","gapId":"modifier:FLUID","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00047","gapId":"modifier:GREASE_PENCIL_ARMATURE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00048","gapId":"modifier:GREASE_PENCIL_ARRAY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00049","gapId":"modifier:GREASE_PENCIL_BUILD","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00050","gapId":"modifier:GREASE_PENCIL_COLOR","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00051","gapId":"modifier:GREASE_PENCIL_DASH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00052","gapId":"modifier:GREASE_PENCIL_ENVELOPE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00053","gapId":"modifier:GREASE_PENCIL_HOOK","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00054","gapId":"modifier:GREASE_PENCIL_LATTICE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00055","gapId":"modifier:GREASE_PENCIL_LENGTH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00056","gapId":"modifier:GREASE_PENCIL_MIRROR","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00057","gapId":"modifier:GREASE_PENCIL_MULTIPLY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00058","gapId":"modifier:GREASE_PENCIL_NOISE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00059","gapId":"modifier:GREASE_PENCIL_OFFSET","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00060","gapId":"modifier:GREASE_PENCIL_OPACITY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00061","gapId":"modifier:GREASE_PENCIL_OUTLINE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00062","gapId":"modifier:GREASE_PENCIL_SHRINKWRAP","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00063","gapId":"modifier:GREASE_PENCIL_SIMPLIFY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00064","gapId":"modifier:GREASE_PENCIL_SMOOTH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00065","gapId":"modifier:GREASE_PENCIL_SUBDIV","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00066","gapId":"modifier:GREASE_PENCIL_TEXTURE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00067","gapId":"modifier:GREASE_PENCIL_THICKNESS","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00068","gapId":"modifier:GREASE_PENCIL_TIME","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00069","gapId":"modifier:GREASE_PENCIL_TINT","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00070","gapId":"modifier:GREASE_PENCIL_VERTEX_WEIGHT_ANGLE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"completed","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00071","gapId":"modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"active","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00072","gapId":"modifier:HOOK","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00073","gapId":"modifier:LAPLACIANDEFORM","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00074","gapId":"modifier:LAPLACIANSMOOTH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00075","gapId":"modifier:LATTICE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00076","gapId":"modifier:LINEART","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00077","gapId":"modifier:MASK","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00078","gapId":"modifier:MESH_CACHE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00079","gapId":"modifier:MESH_DEFORM","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00080","gapId":"modifier:MESH_SEQUENCE_CACHE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00081","gapId":"modifier:MESH_TO_VOLUME","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00082","gapId":"modifier:MIRROR","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00083","gapId":"modifier:MULTIRES","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00084","gapId":"modifier:NODES","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00085","gapId":"modifier:NORMAL_EDIT","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00086","gapId":"modifier:OCEAN","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00087","gapId":"modifier:PARTICLE_INSTANCE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00088","gapId":"modifier:PARTICLE_SYSTEM","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00089","gapId":"modifier:REMESH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00090","gapId":"modifier:SCREW","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00091","gapId":"modifier:SHRINKWRAP","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00092","gapId":"modifier:SIMPLE_DEFORM","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00093","gapId":"modifier:SKIN","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00094","gapId":"modifier:SMOOTH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00095","gapId":"modifier:SOFT_BODY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00096","gapId":"modifier:SOLIDIFY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00097","gapId":"modifier:SUBSURF","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00098","gapId":"modifier:SURFACE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00099","gapId":"modifier:SURFACE_DEFORM","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00100","gapId":"modifier:TRIANGULATE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00101","gapId":"modifier:UV_PROJECT","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00102","gapId":"modifier:UV_WARP","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00103","gapId":"modifier:VERTEX_WEIGHT_EDIT","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00104","gapId":"modifier:VERTEX_WEIGHT_MIX","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00105","gapId":"modifier:VERTEX_WEIGHT_PROXIMITY","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00106","gapId":"modifier:VOLUME_DISPLACE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00107","gapId":"modifier:VOLUME_TO_MESH","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00108","gapId":"modifier:WARP","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00109","gapId":"modifier:WAVE","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00110","gapId":"modifier:WEIGHTED_NORMAL","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00111","gapId":"modifier:WELD","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00112","gapId":"modifier:WIREFRAME","ownerFamily":"MODIFIER","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00113","gapId":"operator:action.bake_keys","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00114","gapId":"operator:action.clean","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00115","gapId":"operator:action.clickselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00116","gapId":"operator:action.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00117","gapId":"operator:action.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00118","gapId":"operator:action.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00119","gapId":"operator:action.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00120","gapId":"operator:action.easing_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00121","gapId":"operator:action.extrapolation_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00122","gapId":"operator:action.frame_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00123","gapId":"operator:action.handle_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00124","gapId":"operator:action.interpolation_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00125","gapId":"operator:action.keyframe_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00126","gapId":"operator:action.keyframe_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00127","gapId":"operator:action.markers_make_local","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00128","gapId":"operator:action.mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00129","gapId":"operator:action.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00130","gapId":"operator:action.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00131","gapId":"operator:action.previewrange_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00132","gapId":"operator:action.push_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00133","gapId":"operator:action.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00134","gapId":"operator:action.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00135","gapId":"operator:action.select_by_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00136","gapId":"operator:action.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00137","gapId":"operator:action.select_column","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00138","gapId":"operator:action.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00139","gapId":"operator:action.select_leftright","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00140","gapId":"operator:action.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00141","gapId":"operator:action.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00142","gapId":"operator:action.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00143","gapId":"operator:action.snap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00144","gapId":"operator:action.stash","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00145","gapId":"operator:action.stash_and_create","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00146","gapId":"operator:action.unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00147","gapId":"operator:action.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00148","gapId":"operator:action.view_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00149","gapId":"operator:action.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00150","gapId":"operator:anim.change_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00151","gapId":"operator:anim.channel_select_keys","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00152","gapId":"operator:anim.channel_view_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00153","gapId":"operator:anim.channels_bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00154","gapId":"operator:anim.channels_clean_empty","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00155","gapId":"operator:anim.channels_click","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00156","gapId":"operator:anim.channels_collapse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00157","gapId":"operator:anim.channels_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00158","gapId":"operator:anim.channels_editable_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00159","gapId":"operator:anim.channels_expand","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00160","gapId":"operator:anim.channels_fcurves_enable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00161","gapId":"operator:anim.channels_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00162","gapId":"operator:anim.channels_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00163","gapId":"operator:anim.channels_rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00164","gapId":"operator:anim.channels_select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00165","gapId":"operator:anim.channels_select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00166","gapId":"operator:anim.channels_select_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00167","gapId":"operator:anim.channels_setting_disable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00168","gapId":"operator:anim.channels_setting_enable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00169","gapId":"operator:anim.channels_setting_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00170","gapId":"operator:anim.channels_ungroup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00171","gapId":"operator:anim.channels_view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00172","gapId":"operator:anim.clear_useless_actions","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00173","gapId":"operator:anim.copy_driver_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00174","gapId":"operator:anim.driver_button_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00175","gapId":"operator:anim.driver_button_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00176","gapId":"operator:anim.driver_button_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00177","gapId":"operator:anim.end_frame_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00178","gapId":"operator:anim.keyframe_clear_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00179","gapId":"operator:anim.keyframe_clear_v3d","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00180","gapId":"operator:anim.keyframe_clear_vse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00181","gapId":"operator:anim.keyframe_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00182","gapId":"operator:anim.keyframe_delete_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00183","gapId":"operator:anim.keyframe_delete_by_name","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00184","gapId":"operator:anim.keyframe_delete_v3d","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00185","gapId":"operator:anim.keyframe_delete_vse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00186","gapId":"operator:anim.keyframe_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00187","gapId":"operator:anim.keyframe_insert_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00188","gapId":"operator:anim.keyframe_insert_by_name","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00189","gapId":"operator:anim.keyframe_insert_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00190","gapId":"operator:anim.keying_set_active_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00191","gapId":"operator:anim.keying_set_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00192","gapId":"operator:anim.keying_set_export","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00193","gapId":"operator:anim.keying_set_path_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00194","gapId":"operator:anim.keying_set_path_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00195","gapId":"operator:anim.keying_set_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00196","gapId":"operator:anim.keyingset_button_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00197","gapId":"operator:anim.keyingset_button_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00198","gapId":"operator:anim.merge_animation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00199","gapId":"operator:anim.paste_driver_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00200","gapId":"operator:anim.previewrange_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00201","gapId":"operator:anim.previewrange_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00202","gapId":"operator:anim.replace_action","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00203","gapId":"operator:anim.replace_action_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00204","gapId":"operator:anim.scene_range_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00205","gapId":"operator:anim.separate_slots","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00206","gapId":"operator:anim.slot_channels_move_to_new_action","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00207","gapId":"operator:anim.slot_new_for_id","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00208","gapId":"operator:anim.slot_unassign_from_constraint","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00209","gapId":"operator:anim.slot_unassign_from_id","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00210","gapId":"operator:anim.slot_unassign_from_nla_strip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00211","gapId":"operator:anim.start_frame_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00212","gapId":"operator:anim.update_animated_transform_constraints","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00213","gapId":"operator:anim.version_bone_hide_property","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00214","gapId":"operator:anim.view_curve_in_graph_editor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00215","gapId":"operator:armature.align","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00216","gapId":"operator:armature.assign_to_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00217","gapId":"operator:armature.autoside_names","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00218","gapId":"operator:armature.bone_primitive_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00219","gapId":"operator:armature.calculate_roll","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00220","gapId":"operator:armature.click_extrude","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00221","gapId":"operator:armature.collection_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00222","gapId":"operator:armature.collection_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00223","gapId":"operator:armature.collection_create_and_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00224","gapId":"operator:armature.collection_deselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00225","gapId":"operator:armature.collection_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00226","gapId":"operator:armature.collection_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00227","gapId":"operator:armature.collection_remove_unused","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00228","gapId":"operator:armature.collection_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00229","gapId":"operator:armature.collection_show_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00230","gapId":"operator:armature.collection_unassign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00231","gapId":"operator:armature.collection_unassign_named","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00232","gapId":"operator:armature.collection_unsolo_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00233","gapId":"operator:armature.copy_bone_color_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00234","gapId":"operator:armature.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00235","gapId":"operator:armature.dissolve","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00236","gapId":"operator:armature.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00237","gapId":"operator:armature.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00238","gapId":"operator:armature.duplicate_rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00239","gapId":"operator:armature.extrude","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00240","gapId":"operator:armature.extrude_forked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00241","gapId":"operator:armature.extrude_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00242","gapId":"operator:armature.fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00243","gapId":"operator:armature.flip_names","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00244","gapId":"operator:armature.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00245","gapId":"operator:armature.move_to_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00246","gapId":"operator:armature.parent_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00247","gapId":"operator:armature.parent_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00248","gapId":"operator:armature.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00249","gapId":"operator:armature.roll_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00250","gapId":"operator:armature.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00251","gapId":"operator:armature.select_hierarchy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00252","gapId":"operator:armature.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00253","gapId":"operator:armature.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00254","gapId":"operator:armature.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00255","gapId":"operator:armature.select_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00256","gapId":"operator:armature.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00257","gapId":"operator:armature.select_similar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00258","gapId":"operator:armature.separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00259","gapId":"operator:armature.shortest_path_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00260","gapId":"operator:armature.split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00261","gapId":"operator:armature.subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00262","gapId":"operator:armature.switch_direction","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00263","gapId":"operator:armature.symmetrize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00264","gapId":"operator:asset.asset_download","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00265","gapId":"operator:asset.assets_download","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00266","gapId":"operator:asset.assign_action","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00267","gapId":"operator:asset.browse_containing_blend_file","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00268","gapId":"operator:asset.bundle_install","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00269","gapId":"operator:asset.catalog_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00270","gapId":"operator:asset.catalog_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00271","gapId":"operator:asset.catalog_redo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00272","gapId":"operator:asset.catalog_undo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00273","gapId":"operator:asset.catalog_undo_push","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00274","gapId":"operator:asset.catalogs_save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00275","gapId":"operator:asset.clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00276","gapId":"operator:asset.clear_single","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00277","gapId":"operator:asset.library_refresh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00278","gapId":"operator:asset.library_reload_listing","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00279","gapId":"operator:asset.mark","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00280","gapId":"operator:asset.mark_single","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00281","gapId":"operator:asset.open_containing_blend_file","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00282","gapId":"operator:asset.screenshot_preview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00283","gapId":"operator:asset.tag_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00284","gapId":"operator:asset.tag_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00285","gapId":"operator:boid.rule_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00286","gapId":"operator:boid.rule_del","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00287","gapId":"operator:boid.rule_move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00288","gapId":"operator:boid.rule_move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00289","gapId":"operator:boid.state_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00290","gapId":"operator:boid.state_del","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00291","gapId":"operator:boid.state_move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00292","gapId":"operator:boid.state_move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00293","gapId":"operator:brush.asset_activate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00294","gapId":"operator:brush.asset_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00295","gapId":"operator:brush.asset_edit_metadata","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00296","gapId":"operator:brush.asset_load_preview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00297","gapId":"operator:brush.asset_revert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00298","gapId":"operator:brush.asset_save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00299","gapId":"operator:brush.asset_save_as","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00300","gapId":"operator:brush.scale_size","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00301","gapId":"operator:brush.stencil_control","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00302","gapId":"operator:brush.stencil_fit_image_aspect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00303","gapId":"operator:brush.stencil_reset_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00304","gapId":"operator:buttons.clear_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00305","gapId":"operator:buttons.context_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00306","gapId":"operator:buttons.directory_browse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00307","gapId":"operator:buttons.file_browse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00308","gapId":"operator:buttons.start_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00309","gapId":"operator:buttons.toggle_pin","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00310","gapId":"operator:cachefile.layer_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00311","gapId":"operator:cachefile.layer_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00312","gapId":"operator:cachefile.layer_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00313","gapId":"operator:cachefile.open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00314","gapId":"operator:cachefile.reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00315","gapId":"operator:camera.preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00316","gapId":"operator:camera.safe_areas_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00317","gapId":"operator:clip.add_marker","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00318","gapId":"operator:clip.add_marker_at_click","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00319","gapId":"operator:clip.add_marker_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00320","gapId":"operator:clip.add_marker_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00321","gapId":"operator:clip.apply_solution_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00322","gapId":"operator:clip.average_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00323","gapId":"operator:clip.bundles_to_mesh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00324","gapId":"operator:clip.camera_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00325","gapId":"operator:clip.change_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00326","gapId":"operator:clip.clean_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00327","gapId":"operator:clip.clear_solution","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00328","gapId":"operator:clip.clear_track_path","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00329","gapId":"operator:clip.constraint_to_fcurve","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00330","gapId":"operator:clip.copy_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00331","gapId":"operator:clip.create_plane_track","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00332","gapId":"operator:clip.cursor_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00333","gapId":"operator:clip.delete_marker","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00334","gapId":"operator:clip.delete_proxy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00335","gapId":"operator:clip.delete_track","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00336","gapId":"operator:clip.detect_features","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00337","gapId":"operator:clip.disable_markers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00338","gapId":"operator:clip.dopesheet_select_channel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00339","gapId":"operator:clip.dopesheet_view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00340","gapId":"operator:clip.filter_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00341","gapId":"operator:clip.frame_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00342","gapId":"operator:clip.graph_center_current_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00343","gapId":"operator:clip.graph_delete_curve","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00344","gapId":"operator:clip.graph_delete_knot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00345","gapId":"operator:clip.graph_disable_markers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00346","gapId":"operator:clip.graph_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00347","gapId":"operator:clip.graph_select_all_markers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00348","gapId":"operator:clip.graph_select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00349","gapId":"operator:clip.graph_view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00350","gapId":"operator:clip.hide_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00351","gapId":"operator:clip.hide_tracks_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00352","gapId":"operator:clip.join_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00353","gapId":"operator:clip.keyframe_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00354","gapId":"operator:clip.keyframe_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00355","gapId":"operator:clip.lock_selection_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00356","gapId":"operator:clip.lock_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00357","gapId":"operator:clip.mode_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00358","gapId":"operator:clip.new_image_from_plane_marker","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00359","gapId":"operator:clip.open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00360","gapId":"operator:clip.paste_tracks","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00361","gapId":"operator:clip.prefetch","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00362","gapId":"operator:clip.rebuild_proxy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00363","gapId":"operator:clip.refine_markers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00364","gapId":"operator:clip.reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00365","gapId":"operator:clip.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00366","gapId":"operator:clip.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00367","gapId":"operator:clip.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00368","gapId":"operator:clip.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00369","gapId":"operator:clip.select_grouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00370","gapId":"operator:clip.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00371","gapId":"operator:clip.set_active_clip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00372","gapId":"operator:clip.set_axis","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00373","gapId":"operator:clip.set_origin","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00374","gapId":"operator:clip.set_plane","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00375","gapId":"operator:clip.set_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00376","gapId":"operator:clip.set_scene_frames","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00377","gapId":"operator:clip.set_solution_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00378","gapId":"operator:clip.set_solver_keyframe","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00379","gapId":"operator:clip.set_viewport_background","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00380","gapId":"operator:clip.setup_tracking_scene","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00381","gapId":"operator:clip.slide_marker","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00382","gapId":"operator:clip.slide_plane_marker","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00383","gapId":"operator:clip.solve_camera","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00384","gapId":"operator:clip.stabilize_2d_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00385","gapId":"operator:clip.stabilize_2d_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00386","gapId":"operator:clip.stabilize_2d_rotation_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00387","gapId":"operator:clip.stabilize_2d_rotation_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00388","gapId":"operator:clip.stabilize_2d_rotation_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00389","gapId":"operator:clip.stabilize_2d_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00390","gapId":"operator:clip.track_color_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00391","gapId":"operator:clip.track_copy_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00392","gapId":"operator:clip.track_markers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00393","gapId":"operator:clip.track_settings_as_default","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00394","gapId":"operator:clip.track_settings_to_track","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00395","gapId":"operator:clip.track_to_empty","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00396","gapId":"operator:clip.tracking_object_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00397","gapId":"operator:clip.tracking_object_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00398","gapId":"operator:clip.tracking_settings_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00399","gapId":"operator:clip.update_image_from_plane_marker","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00400","gapId":"operator:clip.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00401","gapId":"operator:clip.view_center_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00402","gapId":"operator:clip.view_ndof","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00403","gapId":"operator:clip.view_pan","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00404","gapId":"operator:clip.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00405","gapId":"operator:clip.view_zoom","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00406","gapId":"operator:clip.view_zoom_in","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00407","gapId":"operator:clip.view_zoom_out","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00408","gapId":"operator:clip.view_zoom_ratio","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00409","gapId":"operator:cloth.preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00410","gapId":"operator:collection.create","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00411","gapId":"operator:collection.export_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00412","gapId":"operator:collection.exporter_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00413","gapId":"operator:collection.exporter_export","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00414","gapId":"operator:collection.exporter_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00415","gapId":"operator:collection.exporter_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00416","gapId":"operator:collection.importer_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00417","gapId":"operator:collection.importer_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00418","gapId":"operator:collection.objects_add_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00419","gapId":"operator:collection.objects_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00420","gapId":"operator:collection.objects_remove_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00421","gapId":"operator:collection.objects_remove_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00422","gapId":"operator:console.autocomplete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00423","gapId":"operator:console.banner","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00424","gapId":"operator:console.clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00425","gapId":"operator:console.clear_line","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00426","gapId":"operator:console.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00427","gapId":"operator:console.copy_as_script","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00428","gapId":"operator:console.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00429","gapId":"operator:console.execute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00430","gapId":"operator:console.history_append","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00431","gapId":"operator:console.history_cycle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00432","gapId":"operator:console.indent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00433","gapId":"operator:console.indent_or_autocomplete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00434","gapId":"operator:console.insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00435","gapId":"operator:console.language","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00436","gapId":"operator:console.move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00437","gapId":"operator:console.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00438","gapId":"operator:console.scrollback_append","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00439","gapId":"operator:console.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00440","gapId":"operator:console.select_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00441","gapId":"operator:console.select_word","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00442","gapId":"operator:console.unindent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00443","gapId":"operator:constraint.add_target","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00444","gapId":"operator:constraint.apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00445","gapId":"operator:constraint.childof_clear_inverse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00446","gapId":"operator:constraint.childof_set_inverse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00447","gapId":"operator:constraint.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00448","gapId":"operator:constraint.copy_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00449","gapId":"operator:constraint.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00450","gapId":"operator:constraint.disable_keep_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00451","gapId":"operator:constraint.followpath_path_animate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00452","gapId":"operator:constraint.limitdistance_reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00453","gapId":"operator:constraint.move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00454","gapId":"operator:constraint.move_to_index","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00455","gapId":"operator:constraint.move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00456","gapId":"operator:constraint.normalize_target_weights","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00457","gapId":"operator:constraint.objectsolver_clear_inverse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00458","gapId":"operator:constraint.objectsolver_set_inverse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00459","gapId":"operator:constraint.remove_target","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00460","gapId":"operator:constraint.stretchto_reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00461","gapId":"operator:curve.cyclic_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00462","gapId":"operator:curve.de_select_first","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00463","gapId":"operator:curve.de_select_last","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00464","gapId":"operator:curve.decimate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00465","gapId":"operator:curve.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00466","gapId":"operator:curve.dissolve_verts","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00467","gapId":"operator:curve.draw","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00468","gapId":"operator:curve.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00469","gapId":"operator:curve.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00470","gapId":"operator:curve.extrude","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00471","gapId":"operator:curve.extrude_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00472","gapId":"operator:curve.handle_type_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00473","gapId":"operator:curve.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00474","gapId":"operator:curve.make_segment","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00475","gapId":"operator:curve.match_texture_space","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00476","gapId":"operator:curve.normals_make_consistent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00477","gapId":"operator:curve.pen","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00478","gapId":"operator:curve.primitive_bezier_circle_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00479","gapId":"operator:curve.primitive_bezier_curve_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00480","gapId":"operator:curve.primitive_nurbs_circle_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00481","gapId":"operator:curve.primitive_nurbs_curve_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00482","gapId":"operator:curve.primitive_nurbs_path_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00483","gapId":"operator:curve.radius_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00484","gapId":"operator:curve.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00485","gapId":"operator:curve.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00486","gapId":"operator:curve.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00487","gapId":"operator:curve.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00488","gapId":"operator:curve.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00489","gapId":"operator:curve.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00490","gapId":"operator:curve.select_next","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00491","gapId":"operator:curve.select_nth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00492","gapId":"operator:curve.select_previous","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00493","gapId":"operator:curve.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00494","gapId":"operator:curve.select_row","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00495","gapId":"operator:curve.select_similar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00496","gapId":"operator:curve.separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00497","gapId":"operator:curve.shade_flat","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00498","gapId":"operator:curve.shade_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00499","gapId":"operator:curve.shortest_path_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00500","gapId":"operator:curve.smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00501","gapId":"operator:curve.smooth_radius","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00502","gapId":"operator:curve.smooth_tilt","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00503","gapId":"operator:curve.smooth_weight","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00504","gapId":"operator:curve.spin","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00505","gapId":"operator:curve.spline_type_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00506","gapId":"operator:curve.spline_weight_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00507","gapId":"operator:curve.split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00508","gapId":"operator:curve.subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00509","gapId":"operator:curve.switch_direction","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00510","gapId":"operator:curve.tilt_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00511","gapId":"operator:curve.vertex_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00512","gapId":"operator:curves.add_bezier","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00513","gapId":"operator:curves.add_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00514","gapId":"operator:curves.attribute_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00515","gapId":"operator:curves.convert_from_particle_system","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00516","gapId":"operator:curves.convert_to_particle_system","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00517","gapId":"operator:curves.curve_type_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00518","gapId":"operator:curves.cyclic_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00519","gapId":"operator:curves.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00520","gapId":"operator:curves.draw","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00521","gapId":"operator:curves.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00522","gapId":"operator:curves.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00523","gapId":"operator:curves.extrude","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00524","gapId":"operator:curves.extrude_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00525","gapId":"operator:curves.handle_type_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00526","gapId":"operator:curves.pen","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00527","gapId":"operator:curves.sculptmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00528","gapId":"operator:curves.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00529","gapId":"operator:curves.select_ends","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00530","gapId":"operator:curves.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00531","gapId":"operator:curves.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00532","gapId":"operator:curves.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00533","gapId":"operator:curves.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00534","gapId":"operator:curves.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00535","gapId":"operator:curves.separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00536","gapId":"operator:curves.set_selection_domain","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00537","gapId":"operator:curves.snap_curves_to_surface","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00538","gapId":"operator:curves.split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00539","gapId":"operator:curves.subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00540","gapId":"operator:curves.surface_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00541","gapId":"operator:curves.switch_direction","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00542","gapId":"operator:curves.tilt_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00543","gapId":"operator:cycles.denoise_animation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00544","gapId":"operator:cycles.merge_images","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00545","gapId":"operator:cycles.use_shading_nodes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00546","gapId":"operator:dpaint.bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00547","gapId":"operator:dpaint.output_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00548","gapId":"operator:dpaint.surface_slot_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00549","gapId":"operator:dpaint.surface_slot_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00550","gapId":"operator:dpaint.type_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00551","gapId":"operator:ed.flush_edits","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00552","gapId":"operator:ed.lib_id_fake_user_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00553","gapId":"operator:ed.lib_id_generate_preview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00554","gapId":"operator:ed.lib_id_generate_preview_from_object","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00555","gapId":"operator:ed.lib_id_load_custom_preview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00556","gapId":"operator:ed.lib_id_override_editable_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00557","gapId":"operator:ed.lib_id_remove_preview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00558","gapId":"operator:ed.lib_id_unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00559","gapId":"operator:ed.redo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00560","gapId":"operator:ed.undo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00561","gapId":"operator:ed.undo_history","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00562","gapId":"operator:ed.undo_push","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00563","gapId":"operator:ed.undo_redo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00564","gapId":"operator:export_anim.bvh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00565","gapId":"operator:export_scene.fbx","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00566","gapId":"operator:export_scene.gltf","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00567","gapId":"operator:extensions.package_disable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00568","gapId":"operator:extensions.package_install","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00569","gapId":"operator:extensions.package_install_files","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00570","gapId":"operator:extensions.package_install_marked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00571","gapId":"operator:extensions.package_mark_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00572","gapId":"operator:extensions.package_mark_clear_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00573","gapId":"operator:extensions.package_mark_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00574","gapId":"operator:extensions.package_mark_set_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00575","gapId":"operator:extensions.package_obsolete_marked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00576","gapId":"operator:extensions.package_show_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00577","gapId":"operator:extensions.package_show_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00578","gapId":"operator:extensions.package_show_settings","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00579","gapId":"operator:extensions.package_theme_disable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00580","gapId":"operator:extensions.package_theme_enable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00581","gapId":"operator:extensions.package_uninstall","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00582","gapId":"operator:extensions.package_uninstall_marked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00583","gapId":"operator:extensions.package_uninstall_system","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00584","gapId":"operator:extensions.package_upgrade_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00585","gapId":"operator:extensions.repo_enable_from_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00586","gapId":"operator:extensions.repo_lock_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00587","gapId":"operator:extensions.repo_refresh_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00588","gapId":"operator:extensions.repo_sync","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00589","gapId":"operator:extensions.repo_sync_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00590","gapId":"operator:extensions.repo_unlock","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00591","gapId":"operator:extensions.repo_unlock_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00592","gapId":"operator:extensions.status_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00593","gapId":"operator:extensions.status_clear_errors","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00594","gapId":"operator:extensions.userpref_allow_online","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00595","gapId":"operator:extensions.userpref_allow_online_popup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00596","gapId":"operator:extensions.userpref_show_for_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00597","gapId":"operator:extensions.userpref_show_online","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00598","gapId":"operator:extensions.userpref_tags_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00599","gapId":"operator:file.autopack_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00600","gapId":"operator:file.bookmark_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00601","gapId":"operator:file.bookmark_cleanup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00602","gapId":"operator:file.bookmark_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00603","gapId":"operator:file.bookmark_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00604","gapId":"operator:file.cancel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00605","gapId":"operator:file.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00606","gapId":"operator:file.directory_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00607","gapId":"operator:file.edit_directory_path","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00608","gapId":"operator:file.execute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00609","gapId":"operator:file.external_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00610","gapId":"operator:file.filenum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00611","gapId":"operator:file.filepath_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00612","gapId":"operator:file.find_missing_files","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00613","gapId":"operator:file.hidedot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00614","gapId":"operator:file.highlight","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00615","gapId":"operator:file.make_paths_absolute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00616","gapId":"operator:file.make_paths_relative","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00617","gapId":"operator:file.mouse_execute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00618","gapId":"operator:file.next","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00619","gapId":"operator:file.pack_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00620","gapId":"operator:file.pack_libraries","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00621","gapId":"operator:file.parent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00622","gapId":"operator:file.previous","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00623","gapId":"operator:file.refresh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00624","gapId":"operator:file.rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00625","gapId":"operator:file.report_missing_files","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00626","gapId":"operator:file.reset_recent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00627","gapId":"operator:file.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00628","gapId":"operator:file.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00629","gapId":"operator:file.select_bookmark","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00630","gapId":"operator:file.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00631","gapId":"operator:file.select_walk","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00632","gapId":"operator:file.smoothscroll","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00633","gapId":"operator:file.sort_column_ui_context","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00634","gapId":"operator:file.start_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00635","gapId":"operator:file.unpack_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00636","gapId":"operator:file.unpack_item","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00637","gapId":"operator:file.unpack_libraries","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00638","gapId":"operator:file.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00639","gapId":"operator:fluid.bake_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00640","gapId":"operator:fluid.bake_data","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00641","gapId":"operator:fluid.bake_guides","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00642","gapId":"operator:fluid.bake_mesh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00643","gapId":"operator:fluid.bake_noise","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00644","gapId":"operator:fluid.bake_particles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00645","gapId":"operator:fluid.free_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00646","gapId":"operator:fluid.free_data","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00647","gapId":"operator:fluid.free_guides","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00648","gapId":"operator:fluid.free_mesh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00649","gapId":"operator:fluid.free_noise","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00650","gapId":"operator:fluid.free_particles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00651","gapId":"operator:fluid.pause_bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00652","gapId":"operator:fluid.preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00653","gapId":"operator:font.case_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00654","gapId":"operator:font.case_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00655","gapId":"operator:font.change_character","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00656","gapId":"operator:font.change_spacing","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00657","gapId":"operator:font.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00658","gapId":"operator:font.line_break","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00659","gapId":"operator:font.move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00660","gapId":"operator:font.move_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00661","gapId":"operator:font.open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00662","gapId":"operator:font.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00663","gapId":"operator:font.select_word","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00664","gapId":"operator:font.selection_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00665","gapId":"operator:font.style_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00666","gapId":"operator:font.style_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00667","gapId":"operator:font.text_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00668","gapId":"operator:font.text_cut","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00669","gapId":"operator:font.text_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00670","gapId":"operator:font.text_insert_unicode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00671","gapId":"operator:font.text_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00672","gapId":"operator:font.text_paste_from_file","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00673","gapId":"operator:font.textbox_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00674","gapId":"operator:font.textbox_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00675","gapId":"operator:font.unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00676","gapId":"operator:geometry.attribute_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00677","gapId":"operator:geometry.attribute_convert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00678","gapId":"operator:geometry.attribute_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00679","gapId":"operator:geometry.color_attribute_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00680","gapId":"operator:geometry.color_attribute_convert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00681","gapId":"operator:geometry.color_attribute_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00682","gapId":"operator:geometry.color_attribute_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00683","gapId":"operator:geometry.color_attribute_render_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00684","gapId":"operator:geometry.geometry_randomization","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00685","gapId":"operator:gizmogroup.gizmo_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00686","gapId":"operator:gizmogroup.gizmo_tweak","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00687","gapId":"operator:gpencil.annotate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00688","gapId":"operator:gpencil.annotation_active_frame_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00689","gapId":"operator:gpencil.annotation_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00690","gapId":"operator:gpencil.data_unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00691","gapId":"operator:gpencil.layer_annotation_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00692","gapId":"operator:gpencil.layer_annotation_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00693","gapId":"operator:gpencil.layer_annotation_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00694","gapId":"operator:graph.bake_keys","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00695","gapId":"operator:graph.blend_offset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00696","gapId":"operator:graph.blend_to_default","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00697","gapId":"operator:graph.blend_to_ease","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00698","gapId":"operator:graph.blend_to_neighbor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00699","gapId":"operator:graph.breakdown","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00700","gapId":"operator:graph.butterworth_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00701","gapId":"operator:graph.clean","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00702","gapId":"operator:graph.click_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00703","gapId":"operator:graph.clickselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00704","gapId":"operator:graph.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00705","gapId":"operator:graph.cursor_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00706","gapId":"operator:graph.decimate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00707","gapId":"operator:graph.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00708","gapId":"operator:graph.driver_delete_invalid","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00709","gapId":"operator:graph.driver_variables_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00710","gapId":"operator:graph.driver_variables_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00711","gapId":"operator:graph.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00712","gapId":"operator:graph.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00713","gapId":"operator:graph.ease","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00714","gapId":"operator:graph.easing_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00715","gapId":"operator:graph.equalize_handles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00716","gapId":"operator:graph.euler_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00717","gapId":"operator:graph.extrapolation_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00718","gapId":"operator:graph.fmodifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00719","gapId":"operator:graph.fmodifier_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00720","gapId":"operator:graph.fmodifier_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00721","gapId":"operator:graph.fmodifier_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00722","gapId":"operator:graph.frame_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00723","gapId":"operator:graph.gaussian_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00724","gapId":"operator:graph.ghost_curves_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00725","gapId":"operator:graph.ghost_curves_create","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00726","gapId":"operator:graph.handle_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00727","gapId":"operator:graph.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00728","gapId":"operator:graph.interpolation_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00729","gapId":"operator:graph.keyframe_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00730","gapId":"operator:graph.keyframe_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00731","gapId":"operator:graph.keys_to_samples","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00732","gapId":"operator:graph.local_view","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00733","gapId":"operator:graph.match_slope","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00734","gapId":"operator:graph.mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00735","gapId":"operator:graph.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00736","gapId":"operator:graph.previewrange_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00737","gapId":"operator:graph.push_pull","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00738","gapId":"operator:graph.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00739","gapId":"operator:graph.samples_to_keys","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00740","gapId":"operator:graph.scale_average","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00741","gapId":"operator:graph.scale_from_neighbor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00742","gapId":"operator:graph.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00743","gapId":"operator:graph.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00744","gapId":"operator:graph.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00745","gapId":"operator:graph.select_column","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00746","gapId":"operator:graph.select_key_handles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00747","gapId":"operator:graph.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00748","gapId":"operator:graph.select_leftright","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00749","gapId":"operator:graph.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00750","gapId":"operator:graph.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00751","gapId":"operator:graph.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00752","gapId":"operator:graph.shear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00753","gapId":"operator:graph.smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00754","gapId":"operator:graph.snap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00755","gapId":"operator:graph.snap_cursor_value","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00756","gapId":"operator:graph.sound_to_samples","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00757","gapId":"operator:graph.time_offset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00758","gapId":"operator:graph.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00759","gapId":"operator:graph.view_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00760","gapId":"operator:graph.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00761","gapId":"operator:grease_pencil.active_frame_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00762","gapId":"operator:grease_pencil.bake_grease_pencil_animation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00763","gapId":"operator:grease_pencil.brush_stroke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00764","gapId":"operator:grease_pencil.caps_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00765","gapId":"operator:grease_pencil.clean_loose","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00766","gapId":"operator:grease_pencil.convert_curve_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00767","gapId":"operator:grease_pencil.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00768","gapId":"operator:grease_pencil.cyclical_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00769","gapId":"operator:grease_pencil.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00770","gapId":"operator:grease_pencil.delete_breakdown","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00771","gapId":"operator:grease_pencil.delete_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00772","gapId":"operator:grease_pencil.dissolve","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00773","gapId":"operator:grease_pencil.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00774","gapId":"operator:grease_pencil.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00775","gapId":"operator:grease_pencil.erase_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00776","gapId":"operator:grease_pencil.erase_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00777","gapId":"operator:grease_pencil.extrude","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00778","gapId":"operator:grease_pencil.extrude_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00779","gapId":"operator:grease_pencil.fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00780","gapId":"operator:grease_pencil.frame_clean_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00781","gapId":"operator:grease_pencil.frame_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00782","gapId":"operator:grease_pencil.insert_blank_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00783","gapId":"operator:grease_pencil.interpolate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00784","gapId":"operator:grease_pencil.interpolate_sequence","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00785","gapId":"operator:grease_pencil.join_fills","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00786","gapId":"operator:grease_pencil.join_selection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00787","gapId":"operator:grease_pencil.layer_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00788","gapId":"operator:grease_pencil.layer_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00789","gapId":"operator:grease_pencil.layer_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00790","gapId":"operator:grease_pencil.layer_duplicate_object","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00791","gapId":"operator:grease_pencil.layer_group_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00792","gapId":"operator:grease_pencil.layer_group_color_tag","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00793","gapId":"operator:grease_pencil.layer_group_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00794","gapId":"operator:grease_pencil.layer_hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00795","gapId":"operator:grease_pencil.layer_isolate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00796","gapId":"operator:grease_pencil.layer_lock_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00797","gapId":"operator:grease_pencil.layer_mask_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00798","gapId":"operator:grease_pencil.layer_mask_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00799","gapId":"operator:grease_pencil.layer_mask_reorder","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00800","gapId":"operator:grease_pencil.layer_merge","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00801","gapId":"operator:grease_pencil.layer_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00802","gapId":"operator:grease_pencil.layer_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00803","gapId":"operator:grease_pencil.layer_reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00804","gapId":"operator:grease_pencil.material_copy_to_object","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00805","gapId":"operator:grease_pencil.material_hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00806","gapId":"operator:grease_pencil.material_isolate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00807","gapId":"operator:grease_pencil.material_lock_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00808","gapId":"operator:grease_pencil.material_lock_unselected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00809","gapId":"operator:grease_pencil.material_lock_unused","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00810","gapId":"operator:grease_pencil.material_reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00811","gapId":"operator:grease_pencil.material_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00812","gapId":"operator:grease_pencil.material_unlock_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00813","gapId":"operator:grease_pencil.move_to_layer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00814","gapId":"operator:grease_pencil.outline","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00815","gapId":"operator:grease_pencil.paintmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00816","gapId":"operator:grease_pencil.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00817","gapId":"operator:grease_pencil.pen","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00818","gapId":"operator:grease_pencil.primitive_arc","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00819","gapId":"operator:grease_pencil.primitive_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00820","gapId":"operator:grease_pencil.primitive_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00821","gapId":"operator:grease_pencil.primitive_curve","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00822","gapId":"operator:grease_pencil.primitive_line","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00823","gapId":"operator:grease_pencil.primitive_polyline","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00824","gapId":"operator:grease_pencil.relative_layer_mask_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00825","gapId":"operator:grease_pencil.remove_fill_guides","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00826","gapId":"operator:grease_pencil.reorder","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00827","gapId":"operator:grease_pencil.reproject","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00828","gapId":"operator:grease_pencil.reset_uvs","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00829","gapId":"operator:grease_pencil.sculpt_paint","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00830","gapId":"operator:grease_pencil.sculptmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00831","gapId":"operator:grease_pencil.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00832","gapId":"operator:grease_pencil.select_alternate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00833","gapId":"operator:grease_pencil.select_by_stroke_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00834","gapId":"operator:grease_pencil.select_ends","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00835","gapId":"operator:grease_pencil.select_fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00836","gapId":"operator:grease_pencil.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00837","gapId":"operator:grease_pencil.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00838","gapId":"operator:grease_pencil.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00839","gapId":"operator:grease_pencil.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00840","gapId":"operator:grease_pencil.select_similar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00841","gapId":"operator:grease_pencil.separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00842","gapId":"operator:grease_pencil.separate_fills","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00843","gapId":"operator:grease_pencil.set_active_material","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00844","gapId":"operator:grease_pencil.set_corner_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00845","gapId":"operator:grease_pencil.set_curve_resolution","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00846","gapId":"operator:grease_pencil.set_curve_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00847","gapId":"operator:grease_pencil.set_handle_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00848","gapId":"operator:grease_pencil.set_material","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00849","gapId":"operator:grease_pencil.set_selection_mode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00850","gapId":"operator:grease_pencil.set_start_point","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00851","gapId":"operator:grease_pencil.set_stroke_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00852","gapId":"operator:grease_pencil.set_uniform_opacity","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00853","gapId":"operator:grease_pencil.set_uniform_thickness","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00854","gapId":"operator:grease_pencil.snap_cursor_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00855","gapId":"operator:grease_pencil.snap_to_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00856","gapId":"operator:grease_pencil.snap_to_grid","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00857","gapId":"operator:grease_pencil.stroke_material_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00858","gapId":"operator:grease_pencil.stroke_merge_by_distance","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00859","gapId":"operator:grease_pencil.stroke_reset_vertex_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00860","gapId":"operator:grease_pencil.stroke_simplify","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00861","gapId":"operator:grease_pencil.stroke_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00862","gapId":"operator:grease_pencil.stroke_split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00863","gapId":"operator:grease_pencil.stroke_subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00864","gapId":"operator:grease_pencil.stroke_subdivide_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00865","gapId":"operator:grease_pencil.stroke_switch_direction","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00866","gapId":"operator:grease_pencil.stroke_trim","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00867","gapId":"operator:grease_pencil.texture_gradient","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00868","gapId":"operator:grease_pencil.trace_image","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00869","gapId":"operator:grease_pencil.vertex_brush_stroke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00870","gapId":"operator:grease_pencil.vertex_color_brightness_contrast","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00871","gapId":"operator:grease_pencil.vertex_color_hsv","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00872","gapId":"operator:grease_pencil.vertex_color_invert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00873","gapId":"operator:grease_pencil.vertex_color_levels","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00874","gapId":"operator:grease_pencil.vertex_color_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00875","gapId":"operator:grease_pencil.vertex_group_normalize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00876","gapId":"operator:grease_pencil.vertex_group_normalize_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00877","gapId":"operator:grease_pencil.vertex_group_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00878","gapId":"operator:grease_pencil.vertexmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00879","gapId":"operator:grease_pencil.weight_brush_stroke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00880","gapId":"operator:grease_pencil.weight_invert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00881","gapId":"operator:grease_pencil.weight_sample","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00882","gapId":"operator:grease_pencil.weight_toggle_direction","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00883","gapId":"operator:grease_pencil.weightmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00884","gapId":"operator:image.add_render_slot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00885","gapId":"operator:image.change_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00886","gapId":"operator:image.clear_render_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00887","gapId":"operator:image.clear_render_slot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00888","gapId":"operator:image.clipboard_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00889","gapId":"operator:image.clipboard_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00890","gapId":"operator:image.convert_to_mesh_plane","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00891","gapId":"operator:image.curves_point_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00892","gapId":"operator:image.cycle_render_slot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00893","gapId":"operator:image.external_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00894","gapId":"operator:image.file_browse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00895","gapId":"operator:image.flip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00896","gapId":"operator:image.import_as_mesh_planes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00897","gapId":"operator:image.invert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00898","gapId":"operator:image.match_movie_length","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00899","gapId":"operator:image.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00900","gapId":"operator:image.open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00901","gapId":"operator:image.open_images","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00902","gapId":"operator:image.pack","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00903","gapId":"operator:image.project_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00904","gapId":"operator:image.project_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00905","gapId":"operator:image.read_viewlayers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00906","gapId":"operator:image.reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00907","gapId":"operator:image.remove_render_slot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00908","gapId":"operator:image.render_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00909","gapId":"operator:image.replace","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00910","gapId":"operator:image.resize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00911","gapId":"operator:image.rotate_orthogonal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00912","gapId":"operator:image.sample","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00913","gapId":"operator:image.sample_line","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00914","gapId":"operator:image.save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00915","gapId":"operator:image.save_all_modified","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00916","gapId":"operator:image.save_as","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00917","gapId":"operator:image.save_sequence","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00918","gapId":"operator:image.tile_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00919","gapId":"operator:image.tile_fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00920","gapId":"operator:image.tile_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00921","gapId":"operator:image.unpack","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00922","gapId":"operator:image.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00923","gapId":"operator:image.view_center_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00924","gapId":"operator:image.view_cursor_center","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00925","gapId":"operator:image.view_ndof","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00926","gapId":"operator:image.view_pan","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00927","gapId":"operator:image.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00928","gapId":"operator:image.view_zoom","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00929","gapId":"operator:image.view_zoom_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00930","gapId":"operator:image.view_zoom_in","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00931","gapId":"operator:image.view_zoom_out","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00932","gapId":"operator:image.view_zoom_ratio","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00933","gapId":"operator:import_anim.bvh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00934","gapId":"operator:import_curve.svg","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00935","gapId":"operator:import_scene.fbx","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00936","gapId":"operator:import_scene.gltf","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00937","gapId":"operator:info.report_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00938","gapId":"operator:info.report_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00939","gapId":"operator:info.report_replay","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00940","gapId":"operator:info.reports_display_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00941","gapId":"operator:info.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00942","gapId":"operator:info.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00943","gapId":"operator:info.select_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00944","gapId":"operator:lattice.flip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00945","gapId":"operator:lattice.make_regular","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00946","gapId":"operator:lattice.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00947","gapId":"operator:lattice.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00948","gapId":"operator:lattice.select_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00949","gapId":"operator:lattice.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00950","gapId":"operator:lattice.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00951","gapId":"operator:lattice.select_ungrouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00952","gapId":"operator:marker.add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00953","gapId":"operator:marker.camera_bind","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00954","gapId":"operator:marker.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00955","gapId":"operator:marker.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00956","gapId":"operator:marker.make_links_scene","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00957","gapId":"operator:marker.move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00958","gapId":"operator:marker.rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00959","gapId":"operator:marker.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00960","gapId":"operator:marker.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00961","gapId":"operator:marker.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00962","gapId":"operator:marker.select_leftright","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00963","gapId":"operator:mask.add_feather_vertex","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00964","gapId":"operator:mask.add_feather_vertex_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00965","gapId":"operator:mask.add_vertex","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00966","gapId":"operator:mask.add_vertex_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00967","gapId":"operator:mask.copy_splines","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00968","gapId":"operator:mask.cyclic_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00969","gapId":"operator:mask.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00970","gapId":"operator:mask.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00971","gapId":"operator:mask.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00972","gapId":"operator:mask.feather_weight_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00973","gapId":"operator:mask.handle_type_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00974","gapId":"operator:mask.hide_view_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00975","gapId":"operator:mask.hide_view_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00976","gapId":"operator:mask.layer_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00977","gapId":"operator:mask.layer_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00978","gapId":"operator:mask.layer_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00979","gapId":"operator:mask.move_to_layer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00980","gapId":"operator:mask.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00981","gapId":"operator:mask.normals_make_consistent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00982","gapId":"operator:mask.parent_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00983","gapId":"operator:mask.parent_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00984","gapId":"operator:mask.paste_splines","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00985","gapId":"operator:mask.primitive_circle_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00986","gapId":"operator:mask.primitive_square_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00987","gapId":"operator:mask.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00988","gapId":"operator:mask.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00989","gapId":"operator:mask.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00990","gapId":"operator:mask.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00991","gapId":"operator:mask.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00992","gapId":"operator:mask.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00993","gapId":"operator:mask.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00994","gapId":"operator:mask.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00995","gapId":"operator:mask.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00996","gapId":"operator:mask.shape_key_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00997","gapId":"operator:mask.shape_key_feather_reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00998","gapId":"operator:mask.shape_key_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-00999","gapId":"operator:mask.shape_key_rekey","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01000","gapId":"operator:mask.slide_point","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01001","gapId":"operator:mask.slide_spline_curvature","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01002","gapId":"operator:mask.switch_direction","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01003","gapId":"operator:material.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01004","gapId":"operator:material.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01005","gapId":"operator:material.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01006","gapId":"operator:mball.delete_metaelems","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01007","gapId":"operator:mball.duplicate_metaelems","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01008","gapId":"operator:mball.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01009","gapId":"operator:mball.hide_metaelems","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01010","gapId":"operator:mball.reveal_metaelems","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01011","gapId":"operator:mball.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01012","gapId":"operator:mball.select_random_metaelems","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01013","gapId":"operator:mball.select_similar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01014","gapId":"operator:mesh.attribute_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01015","gapId":"operator:mesh.average_normals","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01016","gapId":"operator:mesh.beautify_fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01017","gapId":"operator:mesh.bevel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01018","gapId":"operator:mesh.bisect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01019","gapId":"operator:mesh.blend_from_shape","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01020","gapId":"operator:mesh.bridge_edge_loops","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01021","gapId":"operator:mesh.circularize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01022","gapId":"operator:mesh.colors_reverse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01023","gapId":"operator:mesh.colors_rotate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01024","gapId":"operator:mesh.convex_hull","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01025","gapId":"operator:mesh.customdata_custom_splitnormals_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01026","gapId":"operator:mesh.customdata_custom_splitnormals_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01027","gapId":"operator:mesh.customdata_face_sets_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01028","gapId":"operator:mesh.customdata_mask_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01029","gapId":"operator:mesh.customdata_skin_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01030","gapId":"operator:mesh.customdata_skin_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01031","gapId":"operator:mesh.decimate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01032","gapId":"operator:mesh.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01033","gapId":"operator:mesh.delete_edgeloop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01034","gapId":"operator:mesh.delete_loose","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01035","gapId":"operator:mesh.dissolve_degenerate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01036","gapId":"operator:mesh.dissolve_edges","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01037","gapId":"operator:mesh.dissolve_faces","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01038","gapId":"operator:mesh.dissolve_limited","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01039","gapId":"operator:mesh.dissolve_mode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01040","gapId":"operator:mesh.dissolve_verts","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01041","gapId":"operator:mesh.dupli_extrude_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01042","gapId":"operator:mesh.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01043","gapId":"operator:mesh.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01044","gapId":"operator:mesh.edge_collapse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01045","gapId":"operator:mesh.edge_face_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01046","gapId":"operator:mesh.edge_rotate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01047","gapId":"operator:mesh.edge_split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01048","gapId":"operator:mesh.edgering_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01049","gapId":"operator:mesh.edges_select_sharp","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01050","gapId":"operator:mesh.extrude_context","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01051","gapId":"operator:mesh.extrude_context_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01052","gapId":"operator:mesh.extrude_edges_indiv","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01053","gapId":"operator:mesh.extrude_edges_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01054","gapId":"operator:mesh.extrude_faces_indiv","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01055","gapId":"operator:mesh.extrude_faces_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01056","gapId":"operator:mesh.extrude_manifold","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01057","gapId":"operator:mesh.extrude_region","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01058","gapId":"operator:mesh.extrude_region_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01059","gapId":"operator:mesh.extrude_region_shrink_fatten","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01060","gapId":"operator:mesh.extrude_repeat","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01061","gapId":"operator:mesh.extrude_vertices_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01062","gapId":"operator:mesh.extrude_verts_indiv","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01063","gapId":"operator:mesh.face_make_planar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01064","gapId":"operator:mesh.face_split_by_edges","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01065","gapId":"operator:mesh.faces_select_linked_flat","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01066","gapId":"operator:mesh.faces_shade_flat","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01067","gapId":"operator:mesh.faces_shade_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01068","gapId":"operator:mesh.fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01069","gapId":"operator:mesh.fill_grid","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01070","gapId":"operator:mesh.fill_holes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01071","gapId":"operator:mesh.flatten","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01072","gapId":"operator:mesh.flip_normals","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01073","gapId":"operator:mesh.flip_quad_tessellation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01074","gapId":"operator:mesh.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01075","gapId":"operator:mesh.inset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01076","gapId":"operator:mesh.intersect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01077","gapId":"operator:mesh.intersect_boolean","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01078","gapId":"operator:mesh.knife_project","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01079","gapId":"operator:mesh.knife_tool","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01080","gapId":"operator:mesh.loop_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01081","gapId":"operator:mesh.loop_to_region","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01082","gapId":"operator:mesh.loopcut","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01083","gapId":"operator:mesh.loopcut_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01084","gapId":"operator:mesh.mark_freestyle_edge","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01085","gapId":"operator:mesh.mark_freestyle_face","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01086","gapId":"operator:mesh.mark_seam","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01087","gapId":"operator:mesh.mark_sharp","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01088","gapId":"operator:mesh.merge","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01089","gapId":"operator:mesh.merge_normals","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01090","gapId":"operator:mesh.mod_weighted_strength","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01091","gapId":"operator:mesh.normals_make_consistent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01092","gapId":"operator:mesh.normals_tools","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01093","gapId":"operator:mesh.offset_edge_loops","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01094","gapId":"operator:mesh.offset_edge_loops_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01095","gapId":"operator:mesh.point_normals","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01096","gapId":"operator:mesh.poke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01097","gapId":"operator:mesh.polybuild_delete_at_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01098","gapId":"operator:mesh.polybuild_dissolve_at_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01099","gapId":"operator:mesh.polybuild_extrude_at_cursor_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01100","gapId":"operator:mesh.polybuild_face_at_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01101","gapId":"operator:mesh.polybuild_face_at_cursor_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01102","gapId":"operator:mesh.polybuild_split_at_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01103","gapId":"operator:mesh.polybuild_split_at_cursor_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01104","gapId":"operator:mesh.polybuild_transform_at_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01105","gapId":"operator:mesh.polybuild_transform_at_cursor_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01106","gapId":"operator:mesh.primitive_circle_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01107","gapId":"operator:mesh.primitive_cone_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01108","gapId":"operator:mesh.primitive_cube_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01109","gapId":"operator:mesh.primitive_cube_add_gizmo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01110","gapId":"operator:mesh.primitive_cylinder_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01111","gapId":"operator:mesh.primitive_grid_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01112","gapId":"operator:mesh.primitive_ico_sphere_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01113","gapId":"operator:mesh.primitive_monkey_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01114","gapId":"operator:mesh.primitive_plane_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01115","gapId":"operator:mesh.primitive_torus_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01116","gapId":"operator:mesh.primitive_uv_sphere_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01117","gapId":"operator:mesh.quads_convert_to_tris","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01118","gapId":"operator:mesh.region_to_loop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01119","gapId":"operator:mesh.remove_doubles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01120","gapId":"operator:mesh.reorder_vertices_spatial","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01121","gapId":"operator:mesh.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01122","gapId":"operator:mesh.rip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01123","gapId":"operator:mesh.rip_edge","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01124","gapId":"operator:mesh.rip_edge_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01125","gapId":"operator:mesh.rip_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01126","gapId":"operator:mesh.screw","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01127","gapId":"operator:mesh.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01128","gapId":"operator:mesh.select_axis","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01129","gapId":"operator:mesh.select_boundary_loop_multi","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01130","gapId":"operator:mesh.select_by_attribute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01131","gapId":"operator:mesh.select_by_pole_count","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01132","gapId":"operator:mesh.select_edge_loop_multi","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01133","gapId":"operator:mesh.select_edge_ring_multi","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01134","gapId":"operator:mesh.select_face_by_sides","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01135","gapId":"operator:mesh.select_interior_faces","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01136","gapId":"operator:mesh.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01137","gapId":"operator:mesh.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01138","gapId":"operator:mesh.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01139","gapId":"operator:mesh.select_loose","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01140","gapId":"operator:mesh.select_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01141","gapId":"operator:mesh.select_mode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01142","gapId":"operator:mesh.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01143","gapId":"operator:mesh.select_next_item","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01144","gapId":"operator:mesh.select_non_manifold","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01145","gapId":"operator:mesh.select_nth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01146","gapId":"operator:mesh.select_prev_item","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01147","gapId":"operator:mesh.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01148","gapId":"operator:mesh.select_similar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01149","gapId":"operator:mesh.select_similar_region","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01150","gapId":"operator:mesh.select_ungrouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01151","gapId":"operator:mesh.separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01152","gapId":"operator:mesh.set_normals_from_faces","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01153","gapId":"operator:mesh.set_sharpness_by_angle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01154","gapId":"operator:mesh.shape_propagate_to_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01155","gapId":"operator:mesh.shortest_path_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01156","gapId":"operator:mesh.shortest_path_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01157","gapId":"operator:mesh.smooth_normals","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01158","gapId":"operator:mesh.solidify","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01159","gapId":"operator:mesh.sort_elements","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01160","gapId":"operator:mesh.space_edge_loops_evenly","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01161","gapId":"operator:mesh.spin","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01162","gapId":"operator:mesh.split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01163","gapId":"operator:mesh.split_normals","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01164","gapId":"operator:mesh.subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01165","gapId":"operator:mesh.subdivide_edgering","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01166","gapId":"operator:mesh.symmetrize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01167","gapId":"operator:mesh.symmetry_snap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01168","gapId":"operator:mesh.tris_convert_to_quads","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01169","gapId":"operator:mesh.unsubdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01170","gapId":"operator:mesh.uv_texture_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01171","gapId":"operator:mesh.uv_texture_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01172","gapId":"operator:mesh.uvs_reverse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01173","gapId":"operator:mesh.uvs_rotate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01174","gapId":"operator:mesh.vert_connect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01175","gapId":"operator:mesh.vert_connect_concave","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01176","gapId":"operator:mesh.vert_connect_nonplanar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01177","gapId":"operator:mesh.vert_connect_path","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01178","gapId":"operator:mesh.vertices_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01179","gapId":"operator:mesh.vertices_smooth_laplacian","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01180","gapId":"operator:mesh.wireframe","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01181","gapId":"operator:nla.action_pushdown","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01182","gapId":"operator:nla.action_sync_length","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01183","gapId":"operator:nla.action_unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01184","gapId":"operator:nla.actionclip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01185","gapId":"operator:nla.apply_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01186","gapId":"operator:nla.bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01187","gapId":"operator:nla.channels_click","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01188","gapId":"operator:nla.clear_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01189","gapId":"operator:nla.click_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01190","gapId":"operator:nla.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01191","gapId":"operator:nla.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01192","gapId":"operator:nla.duplicate_linked_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01193","gapId":"operator:nla.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01194","gapId":"operator:nla.fmodifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01195","gapId":"operator:nla.fmodifier_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01196","gapId":"operator:nla.fmodifier_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01197","gapId":"operator:nla.make_single_user","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01198","gapId":"operator:nla.meta_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01199","gapId":"operator:nla.meta_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01200","gapId":"operator:nla.move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01201","gapId":"operator:nla.move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01202","gapId":"operator:nla.mute_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01203","gapId":"operator:nla.previewrange_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01204","gapId":"operator:nla.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01205","gapId":"operator:nla.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01206","gapId":"operator:nla.select_leftright","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01207","gapId":"operator:nla.selected_objects_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01208","gapId":"operator:nla.snap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01209","gapId":"operator:nla.soundclip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01210","gapId":"operator:nla.split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01211","gapId":"operator:nla.swap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01212","gapId":"operator:nla.tracks_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01213","gapId":"operator:nla.tracks_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01214","gapId":"operator:nla.transition_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01215","gapId":"operator:nla.tweakmode_enter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01216","gapId":"operator:nla.tweakmode_exit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01217","gapId":"operator:nla.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01218","gapId":"operator:nla.view_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01219","gapId":"operator:nla.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01220","gapId":"operator:node.activate_viewer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01221","gapId":"operator:node.add_closure_zone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01222","gapId":"operator:node.add_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01223","gapId":"operator:node.add_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01224","gapId":"operator:node.add_empty_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01225","gapId":"operator:node.add_foreach_geometry_element_zone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01226","gapId":"operator:node.add_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01227","gapId":"operator:node.add_group_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01228","gapId":"operator:node.add_group_input_node","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01229","gapId":"operator:node.add_image","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01230","gapId":"operator:node.add_import_node","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01231","gapId":"operator:node.add_mask","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01232","gapId":"operator:node.add_material","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01233","gapId":"operator:node.add_node","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01234","gapId":"operator:node.add_object","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01235","gapId":"operator:node.add_repeat_zone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01236","gapId":"operator:node.add_reroute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01237","gapId":"operator:node.add_simulation_zone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01238","gapId":"operator:node.add_typed_bundle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01239","gapId":"operator:node.add_zone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01240","gapId":"operator:node.attach","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01241","gapId":"operator:node.backimage_fit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01242","gapId":"operator:node.backimage_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01243","gapId":"operator:node.backimage_sample","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01244","gapId":"operator:node.backimage_zoom","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01245","gapId":"operator:node.bake_node_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01246","gapId":"operator:node.bake_node_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01247","gapId":"operator:node.bake_node_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01248","gapId":"operator:node.capture_attribute_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01249","gapId":"operator:node.capture_attribute_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01250","gapId":"operator:node.capture_attribute_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01251","gapId":"operator:node.clear_viewer_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01252","gapId":"operator:node.clipboard_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01253","gapId":"operator:node.clipboard_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01254","gapId":"operator:node.closure_input_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01255","gapId":"operator:node.closure_input_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01256","gapId":"operator:node.closure_input_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01257","gapId":"operator:node.closure_output_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01258","gapId":"operator:node.closure_output_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01259","gapId":"operator:node.closure_output_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01260","gapId":"operator:node.closure_to_list_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01261","gapId":"operator:node.closure_to_list_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01262","gapId":"operator:node.closure_to_list_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01263","gapId":"operator:node.collapse_hide_unused_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01264","gapId":"operator:node.combine_bundle_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01265","gapId":"operator:node.combine_bundle_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01266","gapId":"operator:node.combine_bundle_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01267","gapId":"operator:node.connect_to_output","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01268","gapId":"operator:node.cryptomatte_layer_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01269","gapId":"operator:node.cryptomatte_layer_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01270","gapId":"operator:node.deactivate_viewer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01271","gapId":"operator:node.default_group_width_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01272","gapId":"operator:node.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01273","gapId":"operator:node.delete_copy_reconnect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01274","gapId":"operator:node.delete_reconnect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01275","gapId":"operator:node.detach","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01276","gapId":"operator:node.detach_translate_attach","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01277","gapId":"operator:node.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01278","gapId":"operator:node.duplicate_compositing_modifier_node_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01279","gapId":"operator:node.duplicate_compositing_node_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01280","gapId":"operator:node.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01281","gapId":"operator:node.duplicate_move_keep_inputs","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01282","gapId":"operator:node.duplicate_move_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01283","gapId":"operator:node.enum_definition_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01284","gapId":"operator:node.enum_definition_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01285","gapId":"operator:node.enum_definition_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01286","gapId":"operator:node.evaluate_closure_input_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01287","gapId":"operator:node.evaluate_closure_input_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01288","gapId":"operator:node.evaluate_closure_input_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01289","gapId":"operator:node.evaluate_closure_output_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01290","gapId":"operator:node.evaluate_closure_output_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01291","gapId":"operator:node.evaluate_closure_output_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01292","gapId":"operator:node.field_to_grid_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01293","gapId":"operator:node.field_to_grid_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01294","gapId":"operator:node.field_to_grid_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01295","gapId":"operator:node.field_to_list_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01296","gapId":"operator:node.field_to_list_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01297","gapId":"operator:node.field_to_list_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01298","gapId":"operator:node.file_output_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01299","gapId":"operator:node.file_output_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01300","gapId":"operator:node.file_output_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01301","gapId":"operator:node.find_node","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01302","gapId":"operator:node.foreach_geometry_element_zone_generation_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01303","gapId":"operator:node.foreach_geometry_element_zone_generation_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01304","gapId":"operator:node.foreach_geometry_element_zone_generation_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01305","gapId":"operator:node.foreach_geometry_element_zone_input_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01306","gapId":"operator:node.foreach_geometry_element_zone_input_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01307","gapId":"operator:node.foreach_geometry_element_zone_input_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01308","gapId":"operator:node.foreach_geometry_element_zone_main_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01309","gapId":"operator:node.foreach_geometry_element_zone_main_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01310","gapId":"operator:node.foreach_geometry_element_zone_main_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01311","gapId":"operator:node.format_string_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01312","gapId":"operator:node.format_string_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01313","gapId":"operator:node.format_string_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01314","gapId":"operator:node.geometry_nodes_viewer_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01315","gapId":"operator:node.geometry_nodes_viewer_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01316","gapId":"operator:node.geometry_nodes_viewer_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01317","gapId":"operator:node.gltf_settings_node_operator","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01318","gapId":"operator:node.group_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01319","gapId":"operator:node.group_enter_exit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01320","gapId":"operator:node.group_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01321","gapId":"operator:node.group_make","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01322","gapId":"operator:node.group_separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01323","gapId":"operator:node.group_ungroup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01324","gapId":"operator:node.hide_socket_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01325","gapId":"operator:node.hide_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01326","gapId":"operator:node.index_switch_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01327","gapId":"operator:node.index_switch_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01328","gapId":"operator:node.index_switch_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01329","gapId":"operator:node.insert_offset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01330","gapId":"operator:node.interface_item_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01331","gapId":"operator:node.interface_item_make_panel_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01332","gapId":"operator:node.interface_item_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01333","gapId":"operator:node.interface_item_new_panel_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01334","gapId":"operator:node.interface_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01335","gapId":"operator:node.interface_item_unlink_panel_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01336","gapId":"operator:node.join","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01337","gapId":"operator:node.join_named","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01338","gapId":"operator:node.join_nodes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01339","gapId":"operator:node.link","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01340","gapId":"operator:node.link_drag_operation_test","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01341","gapId":"operator:node.link_make","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01342","gapId":"operator:node.link_viewer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01343","gapId":"operator:node.links_cut","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01344","gapId":"operator:node.links_detach","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01345","gapId":"operator:node.links_mute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01346","gapId":"operator:node.move_detach_links","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01347","gapId":"operator:node.move_detach_links_release","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01348","gapId":"operator:node.mute_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01349","gapId":"operator:node.new_compositing_node_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01350","gapId":"operator:node.new_compositor_sequencer_node_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01351","gapId":"operator:node.new_geometry_node_group_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01352","gapId":"operator:node.new_geometry_node_group_tool","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01353","gapId":"operator:node.new_geometry_nodes_modifier","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01354","gapId":"operator:node.new_node_tree","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01355","gapId":"operator:node.node_color_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01356","gapId":"operator:node.node_copy_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01357","gapId":"operator:node.options_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01358","gapId":"operator:node.parent_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01359","gapId":"operator:node.preview_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01360","gapId":"operator:node.read_viewlayers","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01361","gapId":"operator:node.render_changed","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01362","gapId":"operator:node.repeat_zone_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01363","gapId":"operator:node.repeat_zone_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01364","gapId":"operator:node.repeat_zone_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01365","gapId":"operator:node.resize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01366","gapId":"operator:node.sample_attribute_items_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01367","gapId":"operator:node.sample_attribute_items_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01368","gapId":"operator:node.sample_attribute_items_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01369","gapId":"operator:node.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01370","gapId":"operator:node.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01371","gapId":"operator:node.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01372","gapId":"operator:node.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01373","gapId":"operator:node.select_grouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01374","gapId":"operator:node.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01375","gapId":"operator:node.select_link_viewer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01376","gapId":"operator:node.select_linked_from","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01377","gapId":"operator:node.select_linked_to","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01378","gapId":"operator:node.select_same_type_step","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01379","gapId":"operator:node.separate_bundle_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01380","gapId":"operator:node.separate_bundle_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01381","gapId":"operator:node.separate_bundle_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01382","gapId":"operator:node.shader_script_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01383","gapId":"operator:node.simulation_zone_item_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01384","gapId":"operator:node.simulation_zone_item_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01385","gapId":"operator:node.simulation_zone_item_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01386","gapId":"operator:node.sockets_sync","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01387","gapId":"operator:node.swap_empty_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01388","gapId":"operator:node.swap_group_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01389","gapId":"operator:node.swap_node","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01390","gapId":"operator:node.swap_typed_bundle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01391","gapId":"operator:node.swap_zone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01392","gapId":"operator:node.test_inlining_shader_nodes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01393","gapId":"operator:node.toggle_viewer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01394","gapId":"operator:node.translate_attach","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01395","gapId":"operator:node.translate_attach_remove_on_cancel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01396","gapId":"operator:node.tree_path_parent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01397","gapId":"operator:node.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01398","gapId":"operator:node.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01399","gapId":"operator:node.viewer_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01400","gapId":"operator:node.viewer_shortcut_get","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01401","gapId":"operator:node.viewer_shortcut_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01402","gapId":"operator:object.add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01403","gapId":"operator:object.add_modifier_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01404","gapId":"operator:object.add_named","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01405","gapId":"operator:object.align","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01406","gapId":"operator:object.anim_transforms_to_deltas","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01407","gapId":"operator:object.armature_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01408","gapId":"operator:object.assign_property_defaults","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01409","gapId":"operator:object.bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01410","gapId":"operator:object.bake_image","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01411","gapId":"operator:object.camera_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01412","gapId":"operator:object.camera_custom_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01413","gapId":"operator:object.clear_override_library","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01414","gapId":"operator:object.collection_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01415","gapId":"operator:object.collection_external_asset_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01416","gapId":"operator:object.collection_instance_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01417","gapId":"operator:object.collection_link","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01418","gapId":"operator:object.collection_objects_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01419","gapId":"operator:object.collection_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01420","gapId":"operator:object.collection_unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01421","gapId":"operator:object.constraint_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01422","gapId":"operator:object.constraint_add_with_targets","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01423","gapId":"operator:object.constraints_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01424","gapId":"operator:object.constraints_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01425","gapId":"operator:object.convert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01426","gapId":"operator:object.copy_global_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01427","gapId":"operator:object.copy_relative_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01428","gapId":"operator:object.correctivesmooth_bind","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01429","gapId":"operator:object.curves_empty_hair_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01430","gapId":"operator:object.curves_random_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01431","gapId":"operator:object.data_instance_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01432","gapId":"operator:object.data_transfer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01433","gapId":"operator:object.datalayout_transfer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01434","gapId":"operator:object.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01435","gapId":"operator:object.delete_fix_to_camera_keys","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01436","gapId":"operator:object.drop_geometry_nodes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01437","gapId":"operator:object.drop_named_material","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01438","gapId":"operator:object.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01439","gapId":"operator:object.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01440","gapId":"operator:object.duplicate_move_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01441","gapId":"operator:object.duplicates_make_real","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01442","gapId":"operator:object.editmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01443","gapId":"operator:object.effector_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01444","gapId":"operator:object.empty_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01445","gapId":"operator:object.empty_image_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01446","gapId":"operator:object.explode_refresh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01447","gapId":"operator:object.fix_to_camera","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01448","gapId":"operator:object.forcefield_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01449","gapId":"operator:object.geometry_node_bake_delete_single","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01450","gapId":"operator:object.geometry_node_bake_pack_single","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01451","gapId":"operator:object.geometry_node_bake_single","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01452","gapId":"operator:object.geometry_node_bake_unpack_single","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01453","gapId":"operator:object.geometry_node_tree_copy_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01454","gapId":"operator:object.geometry_nodes_input_attribute_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01455","gapId":"operator:object.geometry_nodes_move_to_nodes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01456","gapId":"operator:object.grease_pencil_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01457","gapId":"operator:object.grease_pencil_dash_modifier_segment_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01458","gapId":"operator:object.grease_pencil_dash_modifier_segment_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01459","gapId":"operator:object.grease_pencil_dash_modifier_segment_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01460","gapId":"operator:object.grease_pencil_time_modifier_segment_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01461","gapId":"operator:object.grease_pencil_time_modifier_segment_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01462","gapId":"operator:object.grease_pencil_time_modifier_segment_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01463","gapId":"operator:object.hide_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01464","gapId":"operator:object.hide_render_clear_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01465","gapId":"operator:object.hide_view_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01466","gapId":"operator:object.hide_view_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01467","gapId":"operator:object.hook_add_newob","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01468","gapId":"operator:object.hook_add_selob","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01469","gapId":"operator:object.hook_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01470","gapId":"operator:object.hook_recenter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01471","gapId":"operator:object.hook_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01472","gapId":"operator:object.hook_reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01473","gapId":"operator:object.hook_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01474","gapId":"operator:object.instance_offset_from_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01475","gapId":"operator:object.instance_offset_from_object","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01476","gapId":"operator:object.instance_offset_to_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01477","gapId":"operator:object.isolate_type_render","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01478","gapId":"operator:object.join","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01479","gapId":"operator:object.join_shapes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01480","gapId":"operator:object.join_uvs","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01481","gapId":"operator:object.laplaciandeform_bind","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01482","gapId":"operator:object.lattice_add_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01483","gapId":"operator:object.light_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01484","gapId":"operator:object.light_linking_blocker_collection_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01485","gapId":"operator:object.light_linking_blockers_link","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01486","gapId":"operator:object.light_linking_blockers_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01487","gapId":"operator:object.light_linking_receiver_collection_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01488","gapId":"operator:object.light_linking_receivers_link","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01489","gapId":"operator:object.light_linking_receivers_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01490","gapId":"operator:object.light_linking_unlink_from_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01491","gapId":"operator:object.lightprobe_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01492","gapId":"operator:object.lightprobe_cache_bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01493","gapId":"operator:object.lightprobe_cache_free","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01494","gapId":"operator:object.lineart_bake_strokes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01495","gapId":"operator:object.lineart_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01496","gapId":"operator:object.link_to_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01497","gapId":"operator:object.location_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01498","gapId":"operator:object.make_dupli_face","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01499","gapId":"operator:object.make_links_data","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01500","gapId":"operator:object.make_links_scene","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01501","gapId":"operator:object.make_local","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01502","gapId":"operator:object.make_override_library","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01503","gapId":"operator:object.make_single_user","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01504","gapId":"operator:object.material_slot_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01505","gapId":"operator:object.material_slot_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01506","gapId":"operator:object.material_slot_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01507","gapId":"operator:object.material_slot_deselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01508","gapId":"operator:object.material_slot_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01509","gapId":"operator:object.material_slot_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01510","gapId":"operator:object.material_slot_remove_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01511","gapId":"operator:object.material_slot_remove_unused","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01512","gapId":"operator:object.material_slot_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01513","gapId":"operator:object.meshdeform_bind","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01514","gapId":"operator:object.metaball_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01515","gapId":"operator:object.mode_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01516","gapId":"operator:object.mode_set_with_submode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01517","gapId":"operator:object.modifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01518","gapId":"operator:object.modifier_add_node_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01519","gapId":"operator:object.modifier_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01520","gapId":"operator:object.modifier_apply_as_shapekey","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01521","gapId":"operator:object.modifier_convert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01522","gapId":"operator:object.modifier_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01523","gapId":"operator:object.modifier_copy_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01524","gapId":"operator:object.modifier_move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01525","gapId":"operator:object.modifier_move_to_index","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01526","gapId":"operator:object.modifier_move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01527","gapId":"operator:object.modifier_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01528","gapId":"operator:object.modifier_set_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01529","gapId":"operator:object.modifiers_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01530","gapId":"operator:object.modifiers_copy_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01531","gapId":"operator:object.move_to_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01532","gapId":"operator:object.multires_base_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01533","gapId":"operator:object.multires_external_pack","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01534","gapId":"operator:object.multires_external_save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01535","gapId":"operator:object.multires_higher_levels_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01536","gapId":"operator:object.multires_rebuild_subdiv","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01537","gapId":"operator:object.multires_reshape","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01538","gapId":"operator:object.multires_subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01539","gapId":"operator:object.multires_unsubdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01540","gapId":"operator:object.ocean_bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01541","gapId":"operator:object.origin_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01542","gapId":"operator:object.origin_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01543","gapId":"operator:object.parent_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01544","gapId":"operator:object.parent_inverse_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01545","gapId":"operator:object.parent_no_inverse_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01546","gapId":"operator:object.parent_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01547","gapId":"operator:object.particle_system_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01548","gapId":"operator:object.particle_system_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01549","gapId":"operator:object.paste_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01550","gapId":"operator:object.paths_calculate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01551","gapId":"operator:object.paths_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01552","gapId":"operator:object.paths_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01553","gapId":"operator:object.paths_update_visible","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01554","gapId":"operator:object.pointcloud_random_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01555","gapId":"operator:object.posemode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01556","gapId":"operator:object.quadriflow_remesh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01557","gapId":"operator:object.quick_explode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01558","gapId":"operator:object.quick_fur","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01559","gapId":"operator:object.quick_liquid","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01560","gapId":"operator:object.quick_smoke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01561","gapId":"operator:object.randomize_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01562","gapId":"operator:object.reset_override_library","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01563","gapId":"operator:object.rotation_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01564","gapId":"operator:object.scale_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01565","gapId":"operator:object.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01566","gapId":"operator:object.select_by_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01567","gapId":"operator:object.select_camera","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01568","gapId":"operator:object.select_grouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01569","gapId":"operator:object.select_hierarchy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01570","gapId":"operator:object.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01571","gapId":"operator:object.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01572","gapId":"operator:object.select_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01573","gapId":"operator:object.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01574","gapId":"operator:object.select_pattern","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01575","gapId":"operator:object.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01576","gapId":"operator:object.select_same_collection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01577","gapId":"operator:object.shade_auto_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01578","gapId":"operator:object.shade_flat","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01579","gapId":"operator:object.shade_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01580","gapId":"operator:object.shade_smooth_by_angle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01581","gapId":"operator:object.shaderfx_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01582","gapId":"operator:object.shaderfx_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01583","gapId":"operator:object.shaderfx_move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01584","gapId":"operator:object.shaderfx_move_to_index","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01585","gapId":"operator:object.shaderfx_move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01586","gapId":"operator:object.shaderfx_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01587","gapId":"operator:object.shape_key_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01588","gapId":"operator:object.shape_key_apply_to_basis","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01589","gapId":"operator:object.shape_key_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01590","gapId":"operator:object.shape_key_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01591","gapId":"operator:object.shape_key_lock","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01592","gapId":"operator:object.shape_key_make_basis","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01593","gapId":"operator:object.shape_key_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01594","gapId":"operator:object.shape_key_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01595","gapId":"operator:object.shape_key_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01596","gapId":"operator:object.shape_key_retime","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01597","gapId":"operator:object.shape_key_transfer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01598","gapId":"operator:object.simulation_nodes_cache_bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01599","gapId":"operator:object.simulation_nodes_cache_calculate_to_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01600","gapId":"operator:object.simulation_nodes_cache_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01601","gapId":"operator:object.skin_armature_create","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01602","gapId":"operator:object.skin_loose_mark_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01603","gapId":"operator:object.skin_radii_equalize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01604","gapId":"operator:object.skin_root_mark","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01605","gapId":"operator:object.speaker_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01606","gapId":"operator:object.subdivision_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01607","gapId":"operator:object.surfacedeform_bind","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01608","gapId":"operator:object.text_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01609","gapId":"operator:object.track_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01610","gapId":"operator:object.track_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01611","gapId":"operator:object.transfer_mode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01612","gapId":"operator:object.transform_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01613","gapId":"operator:object.transform_axis_target","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01614","gapId":"operator:object.transform_to_mouse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01615","gapId":"operator:object.transforms_to_deltas","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01616","gapId":"operator:object.unlink_data","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01617","gapId":"operator:object.update_shapes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01618","gapId":"operator:object.vertex_group_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01619","gapId":"operator:object.vertex_group_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01620","gapId":"operator:object.vertex_group_assign_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01621","gapId":"operator:object.vertex_group_clean","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01622","gapId":"operator:object.vertex_group_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01623","gapId":"operator:object.vertex_group_copy_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01624","gapId":"operator:object.vertex_group_deselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01625","gapId":"operator:object.vertex_group_invert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01626","gapId":"operator:object.vertex_group_levels","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01627","gapId":"operator:object.vertex_group_limit_total","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01628","gapId":"operator:object.vertex_group_lock","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01629","gapId":"operator:object.vertex_group_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01630","gapId":"operator:object.vertex_group_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01631","gapId":"operator:object.vertex_group_normalize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01632","gapId":"operator:object.vertex_group_normalize_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01633","gapId":"operator:object.vertex_group_quantize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01634","gapId":"operator:object.vertex_group_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01635","gapId":"operator:object.vertex_group_remove_from","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01636","gapId":"operator:object.vertex_group_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01637","gapId":"operator:object.vertex_group_set_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01638","gapId":"operator:object.vertex_group_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01639","gapId":"operator:object.vertex_group_sort","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01640","gapId":"operator:object.vertex_parent_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01641","gapId":"operator:object.vertex_weight_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01642","gapId":"operator:object.vertex_weight_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01643","gapId":"operator:object.vertex_weight_normalize_active_vertex","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01644","gapId":"operator:object.vertex_weight_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01645","gapId":"operator:object.vertex_weight_set_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01646","gapId":"operator:object.visual_geometry_to_objects","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01647","gapId":"operator:object.visual_transform_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01648","gapId":"operator:object.volume_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01649","gapId":"operator:object.volume_import","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01650","gapId":"operator:object.voxel_remesh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01651","gapId":"operator:object.voxel_size_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01652","gapId":"operator:outliner.action_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01653","gapId":"operator:outliner.animdata_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01654","gapId":"operator:outliner.clear_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01655","gapId":"operator:outliner.collection_color_tag_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01656","gapId":"operator:outliner.collection_disable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01657","gapId":"operator:outliner.collection_disable_render","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01658","gapId":"operator:outliner.collection_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01659","gapId":"operator:outliner.collection_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01660","gapId":"operator:outliner.collection_duplicate_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01661","gapId":"operator:outliner.collection_enable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01662","gapId":"operator:outliner.collection_enable_render","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01663","gapId":"operator:outliner.collection_exclude_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01664","gapId":"operator:outliner.collection_exclude_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01665","gapId":"operator:outliner.collection_hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01666","gapId":"operator:outliner.collection_hide_inside","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01667","gapId":"operator:outliner.collection_hierarchy_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01668","gapId":"operator:outliner.collection_holdout_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01669","gapId":"operator:outliner.collection_holdout_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01670","gapId":"operator:outliner.collection_indirect_only_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01671","gapId":"operator:outliner.collection_indirect_only_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01672","gapId":"operator:outliner.collection_instance","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01673","gapId":"operator:outliner.collection_isolate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01674","gapId":"operator:outliner.collection_link","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01675","gapId":"operator:outliner.collection_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01676","gapId":"operator:outliner.collection_objects_deselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01677","gapId":"operator:outliner.collection_objects_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01678","gapId":"operator:outliner.collection_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01679","gapId":"operator:outliner.collection_show_inside","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01680","gapId":"operator:outliner.constraint_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01681","gapId":"operator:outliner.data_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01682","gapId":"operator:outliner.datastack_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01683","gapId":"operator:outliner.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01684","gapId":"operator:outliner.drivers_add_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01685","gapId":"operator:outliner.drivers_delete_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01686","gapId":"operator:outliner.expanded_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01687","gapId":"operator:outliner.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01688","gapId":"operator:outliner.highlight_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01689","gapId":"operator:outliner.id_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01690","gapId":"operator:outliner.id_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01691","gapId":"operator:outliner.id_linked_relocate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01692","gapId":"operator:outliner.id_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01693","gapId":"operator:outliner.id_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01694","gapId":"operator:outliner.id_remap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01695","gapId":"operator:outliner.item_activate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01696","gapId":"operator:outliner.item_drag_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01697","gapId":"operator:outliner.item_openclose","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01698","gapId":"operator:outliner.item_rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01699","gapId":"operator:outliner.keyingset_add_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01700","gapId":"operator:outliner.keyingset_remove_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01701","gapId":"operator:outliner.lib_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01702","gapId":"operator:outliner.lib_relocate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01703","gapId":"operator:outliner.liboverride_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01704","gapId":"operator:outliner.liboverride_property_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01705","gapId":"operator:outliner.liboverride_troubleshoot_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01706","gapId":"operator:outliner.material_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01707","gapId":"operator:outliner.modifier_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01708","gapId":"operator:outliner.object_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01709","gapId":"operator:outliner.operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01710","gapId":"operator:outliner.orphans_manage","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01711","gapId":"operator:outliner.orphans_purge","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01712","gapId":"operator:outliner.parent_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01713","gapId":"operator:outliner.parent_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01714","gapId":"operator:outliner.scene_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01715","gapId":"operator:outliner.scene_operation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01716","gapId":"operator:outliner.scroll_page","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01717","gapId":"operator:outliner.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01718","gapId":"operator:outliner.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01719","gapId":"operator:outliner.select_walk","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01720","gapId":"operator:outliner.show_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01721","gapId":"operator:outliner.show_hierarchy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01722","gapId":"operator:outliner.show_one_level","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01723","gapId":"operator:outliner.start_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01724","gapId":"operator:outliner.unhide_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01725","gapId":"operator:paint.add_simple_uvs","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01726","gapId":"operator:paint.add_texture_paint_slot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01727","gapId":"operator:paint.brush_colors_flip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01728","gapId":"operator:paint.face_select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01729","gapId":"operator:paint.face_select_hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01730","gapId":"operator:paint.face_select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01731","gapId":"operator:paint.face_select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01732","gapId":"operator:paint.face_select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01733","gapId":"operator:paint.face_select_loop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01734","gapId":"operator:paint.face_select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01735","gapId":"operator:paint.face_vert_reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01736","gapId":"operator:paint.grab_clone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01737","gapId":"operator:paint.hide_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01738","gapId":"operator:paint.hide_show_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01739","gapId":"operator:paint.hide_show_lasso_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01740","gapId":"operator:paint.hide_show_line_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01741","gapId":"operator:paint.hide_show_masked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01742","gapId":"operator:paint.hide_show_polyline_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01743","gapId":"operator:paint.image_from_view","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01744","gapId":"operator:paint.image_paint","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01745","gapId":"operator:paint.mask_box_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01746","gapId":"operator:paint.mask_flood_fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01747","gapId":"operator:paint.mask_lasso_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01748","gapId":"operator:paint.mask_line_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01749","gapId":"operator:paint.mask_polyline_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01750","gapId":"operator:paint.project_image","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01751","gapId":"operator:paint.sample_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01752","gapId":"operator:paint.texture_paint_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01753","gapId":"operator:paint.vert_select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01754","gapId":"operator:paint.vert_select_hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01755","gapId":"operator:paint.vert_select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01756","gapId":"operator:paint.vert_select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01757","gapId":"operator:paint.vert_select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01758","gapId":"operator:paint.vert_select_loop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01759","gapId":"operator:paint.vert_select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01760","gapId":"operator:paint.vert_select_ungrouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01761","gapId":"operator:paint.vertex_color_brightness_contrast","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01762","gapId":"operator:paint.vertex_color_dirt","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01763","gapId":"operator:paint.vertex_color_from_weight","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01764","gapId":"operator:paint.vertex_color_hsv","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01765","gapId":"operator:paint.vertex_color_invert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01766","gapId":"operator:paint.vertex_color_levels","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01767","gapId":"operator:paint.vertex_color_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01768","gapId":"operator:paint.vertex_color_smooth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01769","gapId":"operator:paint.vertex_paint","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01770","gapId":"operator:paint.vertex_paint_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01771","gapId":"operator:paint.visibility_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01772","gapId":"operator:paint.visibility_invert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01773","gapId":"operator:paint.weight_from_bones","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01774","gapId":"operator:paint.weight_gradient","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01775","gapId":"operator:paint.weight_paint","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01776","gapId":"operator:paint.weight_paint_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01777","gapId":"operator:paint.weight_sample","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01778","gapId":"operator:paint.weight_sample_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01779","gapId":"operator:paint.weight_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01780","gapId":"operator:paintcurve.add_point","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01781","gapId":"operator:paintcurve.add_point_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01782","gapId":"operator:paintcurve.cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01783","gapId":"operator:paintcurve.delete_point","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01784","gapId":"operator:paintcurve.draw","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01785","gapId":"operator:paintcurve.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01786","gapId":"operator:paintcurve.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01787","gapId":"operator:paintcurve.slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01788","gapId":"operator:palette.color_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01789","gapId":"operator:palette.color_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01790","gapId":"operator:palette.color_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01791","gapId":"operator:palette.extract_from_image","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01792","gapId":"operator:palette.join","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01793","gapId":"operator:palette.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01794","gapId":"operator:palette.sort","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01795","gapId":"operator:particle.brush_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01796","gapId":"operator:particle.connect_hair","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01797","gapId":"operator:particle.copy_particle_systems","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01798","gapId":"operator:particle.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01799","gapId":"operator:particle.disconnect_hair","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01800","gapId":"operator:particle.duplicate_particle_system","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01801","gapId":"operator:particle.dupliob_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01802","gapId":"operator:particle.dupliob_move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01803","gapId":"operator:particle.dupliob_move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01804","gapId":"operator:particle.dupliob_refresh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01805","gapId":"operator:particle.dupliob_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01806","gapId":"operator:particle.edited_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01807","gapId":"operator:particle.hair_dynamics_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01808","gapId":"operator:particle.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01809","gapId":"operator:particle.mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01810","gapId":"operator:particle.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01811","gapId":"operator:particle.new_target","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01812","gapId":"operator:particle.particle_edit_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01813","gapId":"operator:particle.particle_system_remove_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01814","gapId":"operator:particle.rekey","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01815","gapId":"operator:particle.remove_doubles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01816","gapId":"operator:particle.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01817","gapId":"operator:particle.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01818","gapId":"operator:particle.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01819","gapId":"operator:particle.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01820","gapId":"operator:particle.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01821","gapId":"operator:particle.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01822","gapId":"operator:particle.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01823","gapId":"operator:particle.select_roots","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01824","gapId":"operator:particle.select_tips","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01825","gapId":"operator:particle.shape_cut","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01826","gapId":"operator:particle.subdivide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01827","gapId":"operator:particle.target_move_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01828","gapId":"operator:particle.target_move_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01829","gapId":"operator:particle.target_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01830","gapId":"operator:particle.unify_length","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01831","gapId":"operator:particle.weight_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01832","gapId":"operator:pointcloud.attribute_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01833","gapId":"operator:pointcloud.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01834","gapId":"operator:pointcloud.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01835","gapId":"operator:pointcloud.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01836","gapId":"operator:pointcloud.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01837","gapId":"operator:pointcloud.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01838","gapId":"operator:pointcloud.separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01839","gapId":"operator:pose.armature_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01840","gapId":"operator:pose.autoside_names","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01841","gapId":"operator:pose.blend_to_neighbor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01842","gapId":"operator:pose.blend_with_rest","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01843","gapId":"operator:pose.breakdown","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01844","gapId":"operator:pose.constraint_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01845","gapId":"operator:pose.constraint_add_with_targets","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01846","gapId":"operator:pose.constraints_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01847","gapId":"operator:pose.constraints_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01848","gapId":"operator:pose.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01849","gapId":"operator:pose.flip_names","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01850","gapId":"operator:pose.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01851","gapId":"operator:pose.ik_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01852","gapId":"operator:pose.ik_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01853","gapId":"operator:pose.loc_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01854","gapId":"operator:pose.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01855","gapId":"operator:pose.paths_calculate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01856","gapId":"operator:pose.paths_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01857","gapId":"operator:pose.paths_range_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01858","gapId":"operator:pose.paths_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01859","gapId":"operator:pose.propagate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01860","gapId":"operator:pose.push","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01861","gapId":"operator:pose.quaternions_flip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01862","gapId":"operator:pose.relax","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01863","gapId":"operator:pose.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01864","gapId":"operator:pose.rot_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01865","gapId":"operator:pose.rotation_mode_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01866","gapId":"operator:pose.scale_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01867","gapId":"operator:pose.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01868","gapId":"operator:pose.select_constraint_target","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01869","gapId":"operator:pose.select_grouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01870","gapId":"operator:pose.select_hierarchy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01871","gapId":"operator:pose.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01872","gapId":"operator:pose.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01873","gapId":"operator:pose.select_mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01874","gapId":"operator:pose.select_parent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01875","gapId":"operator:pose.selection_set_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01876","gapId":"operator:pose.selection_set_add_and_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01877","gapId":"operator:pose.selection_set_assign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01878","gapId":"operator:pose.selection_set_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01879","gapId":"operator:pose.selection_set_delete_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01880","gapId":"operator:pose.selection_set_deselect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01881","gapId":"operator:pose.selection_set_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01882","gapId":"operator:pose.selection_set_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01883","gapId":"operator:pose.selection_set_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01884","gapId":"operator:pose.selection_set_remove_bones","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01885","gapId":"operator:pose.selection_set_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01886","gapId":"operator:pose.selection_set_unassign","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01887","gapId":"operator:pose.transforms_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01888","gapId":"operator:pose.user_transforms_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01889","gapId":"operator:pose.visual_transform_apply","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01890","gapId":"operator:poselib.apply_pose_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01891","gapId":"operator:poselib.asset_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01892","gapId":"operator:poselib.asset_modify","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01893","gapId":"operator:poselib.blend_pose_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01894","gapId":"operator:poselib.copy_as_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01895","gapId":"operator:poselib.create_pose_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01896","gapId":"operator:poselib.paste_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01897","gapId":"operator:poselib.pose_asset_select_bones","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01898","gapId":"operator:poselib.restore_previous_action","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01899","gapId":"operator:preferences.addon_disable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01900","gapId":"operator:preferences.addon_enable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01901","gapId":"operator:preferences.addon_expand","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01902","gapId":"operator:preferences.addon_install","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01903","gapId":"operator:preferences.addon_refresh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01904","gapId":"operator:preferences.addon_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01905","gapId":"operator:preferences.addon_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01906","gapId":"operator:preferences.app_template_install","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01907","gapId":"operator:preferences.asset_library_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01908","gapId":"operator:preferences.asset_library_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01909","gapId":"operator:preferences.associate_blend","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01910","gapId":"operator:preferences.autoexec_path_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01911","gapId":"operator:preferences.autoexec_path_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01912","gapId":"operator:preferences.clear_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01913","gapId":"operator:preferences.copy_prev","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01914","gapId":"operator:preferences.extension_repo_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01915","gapId":"operator:preferences.extension_repo_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01916","gapId":"operator:preferences.extension_url_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01917","gapId":"operator:preferences.keyconfig_activate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01918","gapId":"operator:preferences.keyconfig_export","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01919","gapId":"operator:preferences.keyconfig_import","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01920","gapId":"operator:preferences.keyconfig_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01921","gapId":"operator:preferences.keyconfig_test","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01922","gapId":"operator:preferences.keyitem_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01923","gapId":"operator:preferences.keyitem_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01924","gapId":"operator:preferences.keyitem_restore","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01925","gapId":"operator:preferences.keymap_restore","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01926","gapId":"operator:preferences.reset_default_theme","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01927","gapId":"operator:preferences.script_directory_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01928","gapId":"operator:preferences.script_directory_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01929","gapId":"operator:preferences.start_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01930","gapId":"operator:preferences.studiolight_copy_settings","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01931","gapId":"operator:preferences.studiolight_install","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01932","gapId":"operator:preferences.studiolight_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01933","gapId":"operator:preferences.studiolight_uninstall","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01934","gapId":"operator:preferences.theme_install","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01935","gapId":"operator:preferences.unassociate_blend","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01936","gapId":"operator:ptcache.add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01937","gapId":"operator:ptcache.bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01938","gapId":"operator:ptcache.bake_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01939","gapId":"operator:ptcache.bake_from_cache","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01940","gapId":"operator:ptcache.free_bake","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01941","gapId":"operator:ptcache.free_bake_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01942","gapId":"operator:ptcache.remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01943","gapId":"operator:render.clear_texture_cache","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01944","gapId":"operator:render.color_management_white_balance_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01945","gapId":"operator:render.cycles_integrator_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01946","gapId":"operator:render.cycles_performance_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01947","gapId":"operator:render.cycles_sampling_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01948","gapId":"operator:render.cycles_viewport_sampling_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01949","gapId":"operator:render.eevee_raytracing_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01950","gapId":"operator:render.generate_texture_cache","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01951","gapId":"operator:render.opengl","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01952","gapId":"operator:render.play_rendered_anim","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01953","gapId":"operator:render.preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01954","gapId":"operator:render.render","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01955","gapId":"operator:render.shutter_curve_preset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01956","gapId":"operator:render.swap_dimensions","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01957","gapId":"operator:render.view_cancel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01958","gapId":"operator:render.view_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01959","gapId":"operator:rigidbody.bake_to_keyframes","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01960","gapId":"operator:rigidbody.connect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01961","gapId":"operator:rigidbody.constraint_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01962","gapId":"operator:rigidbody.constraint_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01963","gapId":"operator:rigidbody.mass_calculate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01964","gapId":"operator:rigidbody.object_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01965","gapId":"operator:rigidbody.object_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01966","gapId":"operator:rigidbody.object_settings_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01967","gapId":"operator:rigidbody.objects_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01968","gapId":"operator:rigidbody.objects_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01969","gapId":"operator:rigidbody.shape_change","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01970","gapId":"operator:rigidbody.world_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01971","gapId":"operator:rigidbody.world_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01972","gapId":"operator:scene.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01973","gapId":"operator:scene.drop_scene_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01974","gapId":"operator:scene.freestyle_add_edge_marks_to_keying_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01975","gapId":"operator:scene.freestyle_add_face_marks_to_keying_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01976","gapId":"operator:scene.freestyle_alpha_modifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01977","gapId":"operator:scene.freestyle_color_modifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01978","gapId":"operator:scene.freestyle_fill_range_by_selection","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01979","gapId":"operator:scene.freestyle_geometry_modifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01980","gapId":"operator:scene.freestyle_lineset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01981","gapId":"operator:scene.freestyle_lineset_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01982","gapId":"operator:scene.freestyle_lineset_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01983","gapId":"operator:scene.freestyle_lineset_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01984","gapId":"operator:scene.freestyle_lineset_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01985","gapId":"operator:scene.freestyle_linestyle_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01986","gapId":"operator:scene.freestyle_modifier_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01987","gapId":"operator:scene.freestyle_modifier_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01988","gapId":"operator:scene.freestyle_modifier_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01989","gapId":"operator:scene.freestyle_module_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01990","gapId":"operator:scene.freestyle_module_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01991","gapId":"operator:scene.freestyle_module_open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01992","gapId":"operator:scene.freestyle_module_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01993","gapId":"operator:scene.freestyle_stroke_material_create","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01994","gapId":"operator:scene.freestyle_thickness_modifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01995","gapId":"operator:scene.gltf2_action_filter_refresh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01996","gapId":"operator:scene.gpencil_brush_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01997","gapId":"operator:scene.gpencil_material_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01998","gapId":"operator:scene.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-01999","gapId":"operator:scene.new_sequencer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02000","gapId":"operator:scene.new_sequencer_scene","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02001","gapId":"operator:scene.render_view_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02002","gapId":"operator:scene.render_view_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02003","gapId":"operator:scene.view_layer_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02004","gapId":"operator:scene.view_layer_add_aov","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02005","gapId":"operator:scene.view_layer_add_lightgroup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02006","gapId":"operator:scene.view_layer_add_used_lightgroups","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02007","gapId":"operator:scene.view_layer_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02008","gapId":"operator:scene.view_layer_remove_aov","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02009","gapId":"operator:scene.view_layer_remove_lightgroup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02010","gapId":"operator:scene.view_layer_remove_unused_lightgroups","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02011","gapId":"operator:screen.actionzone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02012","gapId":"operator:screen.animation_cancel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02013","gapId":"operator:screen.animation_pause","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02014","gapId":"operator:screen.animation_play","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02015","gapId":"operator:screen.animation_step","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02016","gapId":"operator:screen.area_close","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02017","gapId":"operator:screen.area_dupli","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02018","gapId":"operator:screen.area_join","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02019","gapId":"operator:screen.area_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02020","gapId":"operator:screen.area_options","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02021","gapId":"operator:screen.area_split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02022","gapId":"operator:screen.area_swap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02023","gapId":"operator:screen.back_to_previous","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02024","gapId":"operator:screen.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02025","gapId":"operator:screen.drivers_editor_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02026","gapId":"operator:screen.edge_merge","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02027","gapId":"operator:screen.frame_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02028","gapId":"operator:screen.frame_offset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02029","gapId":"operator:screen.header_toggle_menus","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02030","gapId":"operator:screen.info_log_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02031","gapId":"operator:screen.keyframe_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02032","gapId":"operator:screen.marker_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02033","gapId":"operator:screen.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02034","gapId":"operator:screen.quadview_size","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02035","gapId":"operator:screen.redo_last","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02036","gapId":"operator:screen.region_blend","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02037","gapId":"operator:screen.region_context_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02038","gapId":"operator:screen.region_flip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02039","gapId":"operator:screen.region_quadview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02040","gapId":"operator:screen.region_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02041","gapId":"operator:screen.region_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02042","gapId":"operator:screen.repeat_history","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02043","gapId":"operator:screen.repeat_last","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02044","gapId":"operator:screen.screen_full_area","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02045","gapId":"operator:screen.screen_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02046","gapId":"operator:screen.screenshot","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02047","gapId":"operator:screen.screenshot_area","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02048","gapId":"operator:screen.space_context_cycle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02049","gapId":"operator:screen.space_type_set_or_cycle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02050","gapId":"operator:screen.spacedata_cleanup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02051","gapId":"operator:screen.time_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02052","gapId":"operator:screen.userpref_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02053","gapId":"operator:screen.workspace_cycle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02054","gapId":"operator:script.execute_preset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02055","gapId":"operator:script.python_file_run","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02056","gapId":"operator:script.reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02057","gapId":"operator:sculpt.brush_stroke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02058","gapId":"operator:sculpt.cloth_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02059","gapId":"operator:sculpt.color_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02060","gapId":"operator:sculpt.detail_flood_fill","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02061","gapId":"operator:sculpt.dynamic_topology_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02062","gapId":"operator:sculpt.dyntopo_detail_size_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02063","gapId":"operator:sculpt.expand","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02064","gapId":"operator:sculpt.face_set_box_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02065","gapId":"operator:sculpt.face_set_change_visibility","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02066","gapId":"operator:sculpt.face_set_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02067","gapId":"operator:sculpt.face_set_extract","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02068","gapId":"operator:sculpt.face_set_lasso_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02069","gapId":"operator:sculpt.face_set_line_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02070","gapId":"operator:sculpt.face_set_polyline_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02071","gapId":"operator:sculpt.face_sets_create","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02072","gapId":"operator:sculpt.face_sets_init","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02073","gapId":"operator:sculpt.face_sets_randomize_colors","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02074","gapId":"operator:sculpt.mask_by_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02075","gapId":"operator:sculpt.mask_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02076","gapId":"operator:sculpt.mask_from_boundary","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02077","gapId":"operator:sculpt.mask_from_cavity","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02078","gapId":"operator:sculpt.mask_init","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02079","gapId":"operator:sculpt.mesh_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02080","gapId":"operator:sculpt.optimize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02081","gapId":"operator:sculpt.paint_mask_extract","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02082","gapId":"operator:sculpt.paint_mask_slice","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02083","gapId":"operator:sculpt.project_line_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02084","gapId":"operator:sculpt.sample_detail_size","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02085","gapId":"operator:sculpt.sculptmode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02086","gapId":"operator:sculpt.set_persistent_base","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02087","gapId":"operator:sculpt.set_pivot_position","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02088","gapId":"operator:sculpt.symmetrize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02089","gapId":"operator:sculpt.trim_box_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02090","gapId":"operator:sculpt.trim_lasso_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02091","gapId":"operator:sculpt.trim_line_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02092","gapId":"operator:sculpt.trim_polyline_gesture","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02093","gapId":"operator:sculpt.uv_sculpt_grab","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02094","gapId":"operator:sculpt.uv_sculpt_pinch","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02095","gapId":"operator:sculpt.uv_sculpt_relax","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02096","gapId":"operator:sculpt_curves.brush_stroke","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02097","gapId":"operator:sculpt_curves.min_distance_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02098","gapId":"operator:sculpt_curves.select_grow","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02099","gapId":"operator:sculpt_curves.select_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02100","gapId":"operator:sequencer.add_scene_strip_from_scene_asset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02101","gapId":"operator:sequencer.box_blade","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02102","gapId":"operator:sequencer.change_effect_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02103","gapId":"operator:sequencer.change_path","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02104","gapId":"operator:sequencer.change_scene","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02105","gapId":"operator:sequencer.connect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02106","gapId":"operator:sequencer.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02107","gapId":"operator:sequencer.crossfade_sounds","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02108","gapId":"operator:sequencer.cursor_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02109","gapId":"operator:sequencer.deinterlace_selected_movies","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02110","gapId":"operator:sequencer.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02111","gapId":"operator:sequencer.disconnect","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02112","gapId":"operator:sequencer.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02113","gapId":"operator:sequencer.duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02114","gapId":"operator:sequencer.duplicate_move_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02115","gapId":"operator:sequencer.effect_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02116","gapId":"operator:sequencer.enable_proxies","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02117","gapId":"operator:sequencer.export_subtitles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02118","gapId":"operator:sequencer.fades_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02119","gapId":"operator:sequencer.fades_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02120","gapId":"operator:sequencer.gap_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02121","gapId":"operator:sequencer.gap_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02122","gapId":"operator:sequencer.image_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02123","gapId":"operator:sequencer.images_separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02124","gapId":"operator:sequencer.lock","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02125","gapId":"operator:sequencer.mask_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02126","gapId":"operator:sequencer.meta_make","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02127","gapId":"operator:sequencer.meta_separate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02128","gapId":"operator:sequencer.meta_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02129","gapId":"operator:sequencer.movie_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02130","gapId":"operator:sequencer.movieclip_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02131","gapId":"operator:sequencer.mute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02132","gapId":"operator:sequencer.offset_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02133","gapId":"operator:sequencer.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02134","gapId":"operator:sequencer.preview_duplicate_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02135","gapId":"operator:sequencer.preview_duplicate_move_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02136","gapId":"operator:sequencer.reassign_inputs","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02137","gapId":"operator:sequencer.rebuild_proxy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02138","gapId":"operator:sequencer.refresh_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02139","gapId":"operator:sequencer.reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02140","gapId":"operator:sequencer.rename_channel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02141","gapId":"operator:sequencer.rendersize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02142","gapId":"operator:sequencer.retiming_add_freeze_frame_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02143","gapId":"operator:sequencer.retiming_add_transition_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02144","gapId":"operator:sequencer.retiming_freeze_frame_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02145","gapId":"operator:sequencer.retiming_key_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02146","gapId":"operator:sequencer.retiming_key_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02147","gapId":"operator:sequencer.retiming_reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02148","gapId":"operator:sequencer.retiming_segment_speed_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02149","gapId":"operator:sequencer.retiming_show","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02150","gapId":"operator:sequencer.retiming_transition_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02151","gapId":"operator:sequencer.sample","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02152","gapId":"operator:sequencer.scene_frame_range_update","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02153","gapId":"operator:sequencer.scene_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02154","gapId":"operator:sequencer.scene_strip_add_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02155","gapId":"operator:sequencer.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02156","gapId":"operator:sequencer.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02157","gapId":"operator:sequencer.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02158","gapId":"operator:sequencer.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02159","gapId":"operator:sequencer.select_grouped","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02160","gapId":"operator:sequencer.select_handle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02161","gapId":"operator:sequencer.select_handles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02162","gapId":"operator:sequencer.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02163","gapId":"operator:sequencer.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02164","gapId":"operator:sequencer.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02165","gapId":"operator:sequencer.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02166","gapId":"operator:sequencer.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02167","gapId":"operator:sequencer.select_side","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02168","gapId":"operator:sequencer.select_side_of_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02169","gapId":"operator:sequencer.set_range_to_strips","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02170","gapId":"operator:sequencer.slip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02171","gapId":"operator:sequencer.snap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02172","gapId":"operator:sequencer.sound_strip_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02173","gapId":"operator:sequencer.split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02174","gapId":"operator:sequencer.split_multicam","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02175","gapId":"operator:sequencer.strip_color_tag_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02176","gapId":"operator:sequencer.strip_jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02177","gapId":"operator:sequencer.strip_modifier_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02178","gapId":"operator:sequencer.strip_modifier_add_node_group","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02179","gapId":"operator:sequencer.strip_modifier_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02180","gapId":"operator:sequencer.strip_modifier_duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02181","gapId":"operator:sequencer.strip_modifier_equalizer_redefine","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02182","gapId":"operator:sequencer.strip_modifier_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02183","gapId":"operator:sequencer.strip_modifier_move_to_index","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02184","gapId":"operator:sequencer.strip_modifier_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02185","gapId":"operator:sequencer.strip_modifier_set_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02186","gapId":"operator:sequencer.strip_transform_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02187","gapId":"operator:sequencer.strip_transform_fit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02188","gapId":"operator:sequencer.swap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02189","gapId":"operator:sequencer.swap_data","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02190","gapId":"operator:sequencer.swap_inputs","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02191","gapId":"operator:sequencer.text_cursor_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02192","gapId":"operator:sequencer.text_cursor_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02193","gapId":"operator:sequencer.text_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02194","gapId":"operator:sequencer.text_deselect_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02195","gapId":"operator:sequencer.text_edit_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02196","gapId":"operator:sequencer.text_edit_cut","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02197","gapId":"operator:sequencer.text_edit_mode_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02198","gapId":"operator:sequencer.text_edit_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02199","gapId":"operator:sequencer.text_insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02200","gapId":"operator:sequencer.text_line_break","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02201","gapId":"operator:sequencer.text_select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02202","gapId":"operator:sequencer.text_strip_style_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02203","gapId":"operator:sequencer.unlock","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02204","gapId":"operator:sequencer.unmute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02205","gapId":"operator:sequencer.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02206","gapId":"operator:sequencer.view_all_preview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02207","gapId":"operator:sequencer.view_frame","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02208","gapId":"operator:sequencer.view_ghost_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02209","gapId":"operator:sequencer.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02210","gapId":"operator:sequencer.view_zoom_ratio","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02211","gapId":"operator:sound.bake_animation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02212","gapId":"operator:sound.mixdown","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02213","gapId":"operator:sound.open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02214","gapId":"operator:sound.open_mono","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02215","gapId":"operator:sound.pack","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02216","gapId":"operator:sound.unpack","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02217","gapId":"operator:sound.update_animation_flags","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02218","gapId":"operator:spreadsheet.add_row_filter_rule","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02219","gapId":"operator:spreadsheet.change_spreadsheet_data_source","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02220","gapId":"operator:spreadsheet.fit_column","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02221","gapId":"operator:spreadsheet.remove_row_filter_rule","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02222","gapId":"operator:spreadsheet.reorder_columns","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02223","gapId":"operator:spreadsheet.resize_column","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02224","gapId":"operator:spreadsheet.toggle_pin","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02225","gapId":"operator:surface.primitive_nurbs_surface_circle_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02226","gapId":"operator:surface.primitive_nurbs_surface_curve_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02227","gapId":"operator:surface.primitive_nurbs_surface_cylinder_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02228","gapId":"operator:surface.primitive_nurbs_surface_sphere_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02229","gapId":"operator:surface.primitive_nurbs_surface_surface_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02230","gapId":"operator:surface.primitive_nurbs_surface_torus_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02231","gapId":"operator:text.autocomplete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02232","gapId":"operator:text.comment_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02233","gapId":"operator:text.convert_whitespace","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02234","gapId":"operator:text.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02235","gapId":"operator:text.cursor_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02236","gapId":"operator:text.cut","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02237","gapId":"operator:text.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02238","gapId":"operator:text.duplicate_line","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02239","gapId":"operator:text.find","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02240","gapId":"operator:text.find_set_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02241","gapId":"operator:text.indent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02242","gapId":"operator:text.indent_or_autocomplete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02243","gapId":"operator:text.insert","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02244","gapId":"operator:text.jump","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02245","gapId":"operator:text.jump_to_file_at_point","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02246","gapId":"operator:text.line_break","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02247","gapId":"operator:text.line_number","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02248","gapId":"operator:text.make_internal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02249","gapId":"operator:text.move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02250","gapId":"operator:text.move_lines","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02251","gapId":"operator:text.move_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02252","gapId":"operator:text.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02253","gapId":"operator:text.open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02254","gapId":"operator:text.overwrite_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02255","gapId":"operator:text.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02256","gapId":"operator:text.reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02257","gapId":"operator:text.replace","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02258","gapId":"operator:text.replace_set_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02259","gapId":"operator:text.resolve_conflict","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02260","gapId":"operator:text.run_script","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02261","gapId":"operator:text.save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02262","gapId":"operator:text.save_as","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02263","gapId":"operator:text.scroll","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02264","gapId":"operator:text.scroll_bar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02265","gapId":"operator:text.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02266","gapId":"operator:text.select_line","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02267","gapId":"operator:text.select_word","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02268","gapId":"operator:text.selection_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02269","gapId":"operator:text.start_find","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02270","gapId":"operator:text.to_3d_object","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02271","gapId":"operator:text.unindent","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02272","gapId":"operator:text.unlink","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02273","gapId":"operator:text.update_shader","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02274","gapId":"operator:text_editor.preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02275","gapId":"operator:texture.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02276","gapId":"operator:texture.slot_copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02277","gapId":"operator:texture.slot_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02278","gapId":"operator:texture.slot_paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02279","gapId":"operator:transform.bbone_resize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02280","gapId":"operator:transform.bend","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02281","gapId":"operator:transform.create_orientation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02282","gapId":"operator:transform.delete_orientation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02283","gapId":"operator:transform.edge_bevelweight","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02284","gapId":"operator:transform.edge_crease","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02285","gapId":"operator:transform.edge_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02286","gapId":"operator:transform.from_gizmo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02287","gapId":"operator:transform.mirror","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02288","gapId":"operator:transform.push_pull","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02289","gapId":"operator:transform.resize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02290","gapId":"operator:transform.rotate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02291","gapId":"operator:transform.rotate_normal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02292","gapId":"operator:transform.select_orientation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02293","gapId":"operator:transform.seq_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02294","gapId":"operator:transform.shear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02295","gapId":"operator:transform.shrink_fatten","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02296","gapId":"operator:transform.skin_resize","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02297","gapId":"operator:transform.tilt","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02298","gapId":"operator:transform.tosphere","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02299","gapId":"operator:transform.trackball","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02300","gapId":"operator:transform.transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02301","gapId":"operator:transform.translate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02302","gapId":"operator:transform.vert_crease","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02303","gapId":"operator:transform.vert_slide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02304","gapId":"operator:transform.vertex_random","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02305","gapId":"operator:transform.vertex_warp","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02306","gapId":"operator:ui.assign_default_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02307","gapId":"operator:ui.button_execute","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02308","gapId":"operator:ui.button_string_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02309","gapId":"operator:ui.copy_as_driver_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02310","gapId":"operator:ui.copy_data_path_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02311","gapId":"operator:ui.copy_driver_to_selected_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02312","gapId":"operator:ui.copy_python_command_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02313","gapId":"operator:ui.copy_to_selected_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02314","gapId":"operator:ui.drop_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02315","gapId":"operator:ui.drop_material","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02316","gapId":"operator:ui.drop_name","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02317","gapId":"operator:ui.editsource","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02318","gapId":"operator:ui.eyedropper_bone","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02319","gapId":"operator:ui.eyedropper_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02320","gapId":"operator:ui.eyedropper_colorramp","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02321","gapId":"operator:ui.eyedropper_colorramp_point","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02322","gapId":"operator:ui.eyedropper_depth","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02323","gapId":"operator:ui.eyedropper_driver","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02324","gapId":"operator:ui.eyedropper_grease_pencil_color","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02325","gapId":"operator:ui.eyedropper_id","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02326","gapId":"operator:ui.jump_to_target_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02327","gapId":"operator:ui.list_start_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02328","gapId":"operator:ui.override_add_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02329","gapId":"operator:ui.override_idtemplate_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02330","gapId":"operator:ui.override_idtemplate_make","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02331","gapId":"operator:ui.override_idtemplate_reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02332","gapId":"operator:ui.override_remove_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02333","gapId":"operator:ui.reloadtranslation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02334","gapId":"operator:ui.reset_default_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02335","gapId":"operator:ui.unset_property_button","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02336","gapId":"operator:ui.view_drop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02337","gapId":"operator:ui.view_item_delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02338","gapId":"operator:ui.view_item_focus","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02339","gapId":"operator:ui.view_item_navigate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02340","gapId":"operator:ui.view_item_rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02341","gapId":"operator:ui.view_item_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02342","gapId":"operator:ui.view_scroll","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02343","gapId":"operator:ui.view_start_filter","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02344","gapId":"operator:uilist.entry_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02345","gapId":"operator:uilist.entry_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02346","gapId":"operator:uilist.entry_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02347","gapId":"operator:uv.align","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02348","gapId":"operator:uv.align_rotation","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02349","gapId":"operator:uv.arrange_islands","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02350","gapId":"operator:uv.average_islands_scale","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02351","gapId":"operator:uv.copy","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02352","gapId":"operator:uv.copy_mirrored_faces","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02353","gapId":"operator:uv.cube_project","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02354","gapId":"operator:uv.cursor_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02355","gapId":"operator:uv.custom_region_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02356","gapId":"operator:uv.cylinder_project","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02357","gapId":"operator:uv.export_layout","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02358","gapId":"operator:uv.follow_active_quads","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02359","gapId":"operator:uv.hide","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02360","gapId":"operator:uv.lightmap_pack","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02361","gapId":"operator:uv.mark_seam","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02362","gapId":"operator:uv.minimize_stretch","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02363","gapId":"operator:uv.move_on_axis","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02364","gapId":"operator:uv.pack_islands","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02365","gapId":"operator:uv.paste","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02366","gapId":"operator:uv.pin","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02367","gapId":"operator:uv.project_from_view","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02368","gapId":"operator:uv.randomize_uv_transform","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02369","gapId":"operator:uv.remove_doubles","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02370","gapId":"operator:uv.reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02371","gapId":"operator:uv.reveal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02372","gapId":"operator:uv.rip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02373","gapId":"operator:uv.rip_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02374","gapId":"operator:uv.seams_from_islands","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02375","gapId":"operator:uv.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02376","gapId":"operator:uv.select_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02377","gapId":"operator:uv.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02378","gapId":"operator:uv.select_by_winding","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02379","gapId":"operator:uv.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02380","gapId":"operator:uv.select_edge_ring","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02381","gapId":"operator:uv.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02382","gapId":"operator:uv.select_less","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02383","gapId":"operator:uv.select_linked","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02384","gapId":"operator:uv.select_linked_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02385","gapId":"operator:uv.select_loop","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02386","gapId":"operator:uv.select_mode","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02387","gapId":"operator:uv.select_more","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02388","gapId":"operator:uv.select_overlap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02389","gapId":"operator:uv.select_pinned","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02390","gapId":"operator:uv.select_similar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02391","gapId":"operator:uv.select_split","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02392","gapId":"operator:uv.select_tile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02393","gapId":"operator:uv.shortest_path_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02394","gapId":"operator:uv.shortest_path_select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02395","gapId":"operator:uv.smart_project","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02396","gapId":"operator:uv.snap_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02397","gapId":"operator:uv.snap_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02398","gapId":"operator:uv.sphere_project","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02399","gapId":"operator:uv.stitch","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02400","gapId":"operator:uv.unwrap","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02401","gapId":"operator:uv.weld","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02402","gapId":"operator:view2d.edge_pan","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02403","gapId":"operator:view2d.ndof","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02404","gapId":"operator:view2d.pan","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02405","gapId":"operator:view2d.reset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02406","gapId":"operator:view2d.scroll_down","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02407","gapId":"operator:view2d.scroll_left","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02408","gapId":"operator:view2d.scroll_right","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02409","gapId":"operator:view2d.scroll_up","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02410","gapId":"operator:view2d.scroller_activate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02411","gapId":"operator:view2d.smoothview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02412","gapId":"operator:view2d.zoom","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02413","gapId":"operator:view2d.zoom_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02414","gapId":"operator:view2d.zoom_in","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02415","gapId":"operator:view2d.zoom_out","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02416","gapId":"operator:view3d.bone_select_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02417","gapId":"operator:view3d.camera_background_image_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02418","gapId":"operator:view3d.camera_background_image_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02419","gapId":"operator:view3d.camera_to_view","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02420","gapId":"operator:view3d.camera_to_view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02421","gapId":"operator:view3d.clear_render_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02422","gapId":"operator:view3d.clip_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02423","gapId":"operator:view3d.copybuffer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02424","gapId":"operator:view3d.cursor3d","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02425","gapId":"operator:view3d.dolly","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02426","gapId":"operator:view3d.drop_world","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02427","gapId":"operator:view3d.edit_mesh_extrude_individual_move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02428","gapId":"operator:view3d.edit_mesh_extrude_manifold_normal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02429","gapId":"operator:view3d.edit_mesh_extrude_move_normal","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02430","gapId":"operator:view3d.edit_mesh_extrude_move_shrink_fatten","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02431","gapId":"operator:view3d.fly","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02432","gapId":"operator:view3d.interactive_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02433","gapId":"operator:view3d.localview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02434","gapId":"operator:view3d.localview_remove_from","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02435","gapId":"operator:view3d.move","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02436","gapId":"operator:view3d.navigate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02437","gapId":"operator:view3d.ndof_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02438","gapId":"operator:view3d.ndof_orbit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02439","gapId":"operator:view3d.ndof_orbit_zoom","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02440","gapId":"operator:view3d.ndof_pan","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02441","gapId":"operator:view3d.object_as_camera","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02442","gapId":"operator:view3d.object_mode_pie_or_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02443","gapId":"operator:view3d.pastebuffer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02444","gapId":"operator:view3d.render_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02445","gapId":"operator:view3d.rotate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02446","gapId":"operator:view3d.ruler_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02447","gapId":"operator:view3d.ruler_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02448","gapId":"operator:view3d.select","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02449","gapId":"operator:view3d.select_box","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02450","gapId":"operator:view3d.select_circle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02451","gapId":"operator:view3d.select_lasso","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02452","gapId":"operator:view3d.select_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02453","gapId":"operator:view3d.smoothview","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02454","gapId":"operator:view3d.snap_cursor_to_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02455","gapId":"operator:view3d.snap_cursor_to_center","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02456","gapId":"operator:view3d.snap_cursor_to_grid","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02457","gapId":"operator:view3d.snap_cursor_to_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02458","gapId":"operator:view3d.snap_selected_to_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02459","gapId":"operator:view3d.snap_selected_to_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02460","gapId":"operator:view3d.snap_selected_to_grid","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02461","gapId":"operator:view3d.toggle_matcap_flip","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02462","gapId":"operator:view3d.toggle_shading","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02463","gapId":"operator:view3d.toggle_xray","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02464","gapId":"operator:view3d.transform_gizmo_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02465","gapId":"operator:view3d.view_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02466","gapId":"operator:view3d.view_axis","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02467","gapId":"operator:view3d.view_camera","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02468","gapId":"operator:view3d.view_center_camera","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02469","gapId":"operator:view3d.view_center_cursor","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02470","gapId":"operator:view3d.view_center_lock","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02471","gapId":"operator:view3d.view_center_pick","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02472","gapId":"operator:view3d.view_lock_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02473","gapId":"operator:view3d.view_lock_to_active","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02474","gapId":"operator:view3d.view_orbit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02475","gapId":"operator:view3d.view_pan","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02476","gapId":"operator:view3d.view_persportho","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02477","gapId":"operator:view3d.view_roll","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02478","gapId":"operator:view3d.view_selected","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02479","gapId":"operator:view3d.walk","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02480","gapId":"operator:view3d.zoom","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02481","gapId":"operator:view3d.zoom_border","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02482","gapId":"operator:view3d.zoom_camera_1_to_1","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02483","gapId":"operator:wm.append","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02484","gapId":"operator:wm.batch_rename","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02485","gapId":"operator:wm.blend_strings_utf8_validate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02486","gapId":"operator:wm.call_asset_shelf_popover","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02487","gapId":"operator:wm.call_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02488","gapId":"operator:wm.call_menu_pie","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02489","gapId":"operator:wm.call_panel","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02490","gapId":"operator:wm.clear_recent_files","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02491","gapId":"operator:wm.collection_export_all","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02492","gapId":"operator:wm.context_collection_boolean_set","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02493","gapId":"operator:wm.context_cycle_array","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02494","gapId":"operator:wm.context_cycle_enum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02495","gapId":"operator:wm.context_cycle_int","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02496","gapId":"operator:wm.context_menu_enum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02497","gapId":"operator:wm.context_modal_mouse","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02498","gapId":"operator:wm.context_pie_enum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02499","gapId":"operator:wm.context_scale_float","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02500","gapId":"operator:wm.context_scale_int","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02501","gapId":"operator:wm.context_set_boolean","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02502","gapId":"operator:wm.context_set_enum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02503","gapId":"operator:wm.context_set_float","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02504","gapId":"operator:wm.context_set_id","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02505","gapId":"operator:wm.context_set_int","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02506","gapId":"operator:wm.context_set_string","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02507","gapId":"operator:wm.context_set_value","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02508","gapId":"operator:wm.context_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02509","gapId":"operator:wm.context_toggle_enum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02510","gapId":"operator:wm.debug_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02511","gapId":"operator:wm.doc_view","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02512","gapId":"operator:wm.doc_view_manual","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02513","gapId":"operator:wm.doc_view_manual_ui_context","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02514","gapId":"operator:wm.drop_blend_file","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02515","gapId":"operator:wm.drop_import_file","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02516","gapId":"operator:wm.fbx_import","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02517","gapId":"operator:wm.grease_pencil_export_svg","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02518","gapId":"operator:wm.grease_pencil_import_svg","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02519","gapId":"operator:wm.id_linked_relocate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02520","gapId":"operator:wm.interface_theme_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02521","gapId":"operator:wm.interface_theme_preset_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02522","gapId":"operator:wm.interface_theme_preset_save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02523","gapId":"operator:wm.keyconfig_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02524","gapId":"operator:wm.keyconfig_preset_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02525","gapId":"operator:wm.lib_reload","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02526","gapId":"operator:wm.lib_relocate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02527","gapId":"operator:wm.link","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02528","gapId":"operator:wm.memory_statistics","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02529","gapId":"operator:wm.obj_export","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02530","gapId":"operator:wm.obj_import","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02531","gapId":"operator:wm.open_mainfile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02532","gapId":"operator:wm.operator_cheat_sheet","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02533","gapId":"operator:wm.operator_defaults","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02534","gapId":"operator:wm.operator_pie_enum","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02535","gapId":"operator:wm.operator_preset_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02536","gapId":"operator:wm.operator_presets_cleanup","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02537","gapId":"operator:wm.owner_disable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02538","gapId":"operator:wm.owner_enable","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02539","gapId":"operator:wm.path_open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02540","gapId":"operator:wm.ply_export","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02541","gapId":"operator:wm.ply_import","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02542","gapId":"operator:wm.previews_batch_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02543","gapId":"operator:wm.previews_batch_generate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02544","gapId":"operator:wm.previews_clear","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02545","gapId":"operator:wm.previews_ensure","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02546","gapId":"operator:wm.properties_add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02547","gapId":"operator:wm.properties_context_change","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02548","gapId":"operator:wm.properties_edit","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02549","gapId":"operator:wm.properties_edit_value","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02550","gapId":"operator:wm.properties_remove","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02551","gapId":"operator:wm.quit_blender","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02552","gapId":"operator:wm.radial_control","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02553","gapId":"operator:wm.read_factory_settings","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02554","gapId":"operator:wm.read_factory_userpref","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02555","gapId":"operator:wm.read_history","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02556","gapId":"operator:wm.read_homefile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02557","gapId":"operator:wm.read_userpref","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02558","gapId":"operator:wm.recover_auto_save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02559","gapId":"operator:wm.recover_last_session","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02560","gapId":"operator:wm.redraw_timer","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02561","gapId":"operator:wm.revert_mainfile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02562","gapId":"operator:wm.save_as_mainfile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02563","gapId":"operator:wm.save_auto_save","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02564","gapId":"operator:wm.save_homefile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02565","gapId":"operator:wm.save_mainfile","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02566","gapId":"operator:wm.save_userpref","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02567","gapId":"operator:wm.search_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02568","gapId":"operator:wm.search_operator","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02569","gapId":"operator:wm.search_single_menu","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02570","gapId":"operator:wm.set_stereo_3d","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02571","gapId":"operator:wm.set_working_color_space","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02572","gapId":"operator:wm.splash","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02573","gapId":"operator:wm.splash_about","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02574","gapId":"operator:wm.stl_export","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02575","gapId":"operator:wm.stl_import","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02576","gapId":"operator:wm.sysinfo","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02577","gapId":"operator:wm.tool_set_by_brush_type","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02578","gapId":"operator:wm.tool_set_by_id","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02579","gapId":"operator:wm.tool_set_by_index","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02580","gapId":"operator:wm.toolbar","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02581","gapId":"operator:wm.toolbar_fallback_pie","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02582","gapId":"operator:wm.toolbar_prompt","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02583","gapId":"operator:wm.url_open","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02584","gapId":"operator:wm.url_open_preset","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02585","gapId":"operator:wm.window_close","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02586","gapId":"operator:wm.window_fullscreen_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02587","gapId":"operator:wm.window_new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02588","gapId":"operator:wm.window_new_main","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02589","gapId":"operator:workspace.add","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02590","gapId":"operator:workspace.append_activate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02591","gapId":"operator:workspace.delete","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02592","gapId":"operator:workspace.delete_all_others","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02593","gapId":"operator:workspace.duplicate","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02594","gapId":"operator:workspace.reorder_to_back","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02595","gapId":"operator:workspace.reorder_to_front","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02596","gapId":"operator:workspace.scene_pin_toggle","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02597","gapId":"operator:world.convert_volume_to_mesh","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02598","gapId":"operator:world.new","ownerFamily":"OPERATOR","sourceTask":"M15-01B","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02599","gapId":"rna:Main:BlendData","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02600","gapId":"rna:Main:BlendDataActions","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02601","gapId":"rna:Main:BlendDataAnnotations","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02602","gapId":"rna:Main:BlendDataArmatures","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02603","gapId":"rna:Main:BlendDataBrushes","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02604","gapId":"rna:Main:BlendDataCacheFiles","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02605","gapId":"rna:Main:BlendDataCameras","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02606","gapId":"rna:Main:BlendDataCollections","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02607","gapId":"rna:Main:BlendDataCurves","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02608","gapId":"rna:Main:BlendDataFonts","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02609","gapId":"rna:Main:BlendDataGreasePencilsV3","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02610","gapId":"rna:Main:BlendDataHairCurves","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02611","gapId":"rna:Main:BlendDataImages","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02612","gapId":"rna:Main:BlendDataLattices","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02613","gapId":"rna:Main:BlendDataLibraries","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02614","gapId":"rna:Main:BlendDataLights","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02615","gapId":"rna:Main:BlendDataLineStyles","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02616","gapId":"rna:Main:BlendDataMasks","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02617","gapId":"rna:Main:BlendDataMaterials","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02618","gapId":"rna:Main:BlendDataMeshes","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02619","gapId":"rna:Main:BlendDataMetaBalls","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02620","gapId":"rna:Main:BlendDataMovieClips","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02621","gapId":"rna:Main:BlendDataNodeTrees","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02622","gapId":"rna:Main:BlendDataObjects","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02623","gapId":"rna:Main:BlendDataPaintCurves","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02624","gapId":"rna:Main:BlendDataPalettes","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02625","gapId":"rna:Main:BlendDataParticles","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02626","gapId":"rna:Main:BlendDataPointClouds","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02627","gapId":"rna:Main:BlendDataProbes","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02628","gapId":"rna:Main:BlendDataScenes","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02629","gapId":"rna:Main:BlendDataScreens","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02630","gapId":"rna:Main:BlendDataSounds","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02631","gapId":"rna:Main:BlendDataSpeakers","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02632","gapId":"rna:Main:BlendDataTexts","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02633","gapId":"rna:Main:BlendDataTextures","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02634","gapId":"rna:Main:BlendDataVolumes","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02635","gapId":"rna:Main:BlendDataWindowManagers","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02636","gapId":"rna:Main:BlendDataWorkSpaces","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02637","gapId":"rna:Main:BlendDataWorlds","ownerFamily":"Main","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02638","gapId":"rna:Mesh:Attribute","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02639","gapId":"rna:Mesh:AttributeGroupMesh","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02640","gapId":"rna:Mesh:BoolAttribute","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02641","gapId":"rna:Mesh:ByteColorAttribute","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02642","gapId":"rna:Mesh:FloatAttribute","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02643","gapId":"rna:Mesh:IntAttribute","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02644","gapId":"rna:Mesh:Mesh","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02645","gapId":"rna:Mesh:MeshAutomaskingSettings","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02646","gapId":"rna:Mesh:MeshCacheModifier","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02647","gapId":"rna:Mesh:MeshDeformModifier","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02648","gapId":"rna:Mesh:MeshEdge","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02649","gapId":"rna:Mesh:MeshEdges","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02650","gapId":"rna:Mesh:MeshLoop","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02651","gapId":"rna:Mesh:MeshLoopColor","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02652","gapId":"rna:Mesh:MeshLoopColorLayer","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02653","gapId":"rna:Mesh:MeshLoopTriangle","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02654","gapId":"rna:Mesh:MeshLoopTriangles","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02655","gapId":"rna:Mesh:MeshLoops","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02656","gapId":"rna:Mesh:MeshNormalValue","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02657","gapId":"rna:Mesh:MeshPolygon","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02658","gapId":"rna:Mesh:MeshPolygons","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02659","gapId":"rna:Mesh:MeshSequenceCacheModifier","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02660","gapId":"rna:Mesh:MeshSkinVertex","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02661","gapId":"rna:Mesh:MeshSkinVertexLayer","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02662","gapId":"rna:Mesh:MeshStatVis","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02663","gapId":"rna:Mesh:MeshToVolumeModifier","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02664","gapId":"rna:Mesh:MeshUVLoop","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02665","gapId":"rna:Mesh:MeshUVLoopLayer","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02666","gapId":"rna:Mesh:MeshVertex","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M16-GAP-02667","gapId":"rna:Mesh:MeshVertices","ownerFamily":"Mesh","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00001","gapId":"constraint:ACTION","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00002","gapId":"constraint:ARMATURE","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00003","gapId":"constraint:CAMERA_SOLVER","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00004","gapId":"constraint:CHILD_OF","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00005","gapId":"constraint:CLAMP_TO","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00006","gapId":"constraint:COPY_LOCATION","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00007","gapId":"constraint:COPY_ROTATION","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00008","gapId":"constraint:COPY_SCALE","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00009","gapId":"constraint:COPY_TRANSFORMS","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00010","gapId":"constraint:DAMPED_TRACK","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00011","gapId":"constraint:FLOOR","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00012","gapId":"constraint:FOLLOW_PATH","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00013","gapId":"constraint:FOLLOW_TRACK","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00014","gapId":"constraint:GEOMETRY_ATTRIBUTE","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00015","gapId":"constraint:IK","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00016","gapId":"constraint:LIMIT_DISTANCE","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00017","gapId":"constraint:LIMIT_LOCATION","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00018","gapId":"constraint:LIMIT_ROTATION","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00019","gapId":"constraint:LIMIT_SCALE","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00020","gapId":"constraint:LOCKED_TRACK","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00021","gapId":"constraint:MAINTAIN_VOLUME","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00022","gapId":"constraint:OBJECT_SOLVER","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00023","gapId":"constraint:PIVOT","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00024","gapId":"constraint:SHRINKWRAP","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00025","gapId":"constraint:SPLINE_IK","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00026","gapId":"constraint:STRETCH_TO","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00027","gapId":"constraint:TRACK_TO","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00028","gapId":"constraint:TRANSFORM","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M17-GAP-00029","gapId":"constraint:TRANSFORM_CACHE","ownerFamily":"CONSTRAINT","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00001","gapId":"node:Compositor:CompositorNodeAlphaOver","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00002","gapId":"node:Compositor:CompositorNodeAntiAliasing","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00003","gapId":"node:Compositor:CompositorNodeBilateralblur","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00004","gapId":"node:Compositor:CompositorNodeBlankImage","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00005","gapId":"node:Compositor:CompositorNodeBlur","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00006","gapId":"node:Compositor:CompositorNodeBokehBlur","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00007","gapId":"node:Compositor:CompositorNodeBokehImage","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00008","gapId":"node:Compositor:CompositorNodeBoxMask","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00009","gapId":"node:Compositor:CompositorNodeBrightContrast","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00010","gapId":"node:Compositor:CompositorNodeChannelMatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00011","gapId":"node:Compositor:CompositorNodeChromaMatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00012","gapId":"node:Compositor:CompositorNodeColorBalance","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00013","gapId":"node:Compositor:CompositorNodeColorCorrection","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00014","gapId":"node:Compositor:CompositorNodeColorMatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00015","gapId":"node:Compositor:CompositorNodeColorSpill","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00016","gapId":"node:Compositor:CompositorNodeCombineColor","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00017","gapId":"node:Compositor:CompositorNodeConvertColorSpace","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00018","gapId":"node:Compositor:CompositorNodeConvertToDisplay","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00019","gapId":"node:Compositor:CompositorNodeConvolve","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00020","gapId":"node:Compositor:CompositorNodeCornerPin","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00021","gapId":"node:Compositor:CompositorNodeCrop","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00022","gapId":"node:Compositor:CompositorNodeCryptomatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00023","gapId":"node:Compositor:CompositorNodeCryptomatteV2","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00024","gapId":"node:Compositor:CompositorNodeCurveRGB","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00025","gapId":"node:Compositor:CompositorNodeDBlur","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00026","gapId":"node:Compositor:CompositorNodeDefocus","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00027","gapId":"node:Compositor:CompositorNodeDenoise","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00028","gapId":"node:Compositor:CompositorNodeDespeckle","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00029","gapId":"node:Compositor:CompositorNodeDiffMatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00030","gapId":"node:Compositor:CompositorNodeDilateErode","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00031","gapId":"node:Compositor:CompositorNodeDisplace","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00032","gapId":"node:Compositor:CompositorNodeDistanceMatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00033","gapId":"node:Compositor:CompositorNodeDoubleEdgeMask","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00034","gapId":"node:Compositor:CompositorNodeEllipseMask","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00035","gapId":"node:Compositor:CompositorNodeExposure","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00036","gapId":"node:Compositor:CompositorNodeFilter","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00037","gapId":"node:Compositor:CompositorNodeFlip","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00038","gapId":"node:Compositor:CompositorNodeGlare","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00039","gapId":"node:Compositor:CompositorNodeGroup","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00040","gapId":"node:Compositor:CompositorNodeHueCorrect","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00041","gapId":"node:Compositor:CompositorNodeHueSat","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00042","gapId":"node:Compositor:CompositorNodeIDMask","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00043","gapId":"node:Compositor:CompositorNodeImage","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00044","gapId":"node:Compositor:CompositorNodeImageCoordinates","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00045","gapId":"node:Compositor:CompositorNodeImageInfo","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00046","gapId":"node:Compositor:CompositorNodeInpaint","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00047","gapId":"node:Compositor:CompositorNodeInvert","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00048","gapId":"node:Compositor:CompositorNodeKeying","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00049","gapId":"node:Compositor:CompositorNodeKeyingScreen","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00050","gapId":"node:Compositor:CompositorNodeKuwahara","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00051","gapId":"node:Compositor:CompositorNodeLensdist","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00052","gapId":"node:Compositor:CompositorNodeLevels","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00053","gapId":"node:Compositor:CompositorNodeLumaMatte","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00054","gapId":"node:Compositor:CompositorNodeMapUV","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00055","gapId":"node:Compositor:CompositorNodeMask","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00056","gapId":"node:Compositor:CompositorNodeMaskToSDF","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00057","gapId":"node:Compositor:CompositorNodeMovieClip","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00058","gapId":"node:Compositor:CompositorNodeMovieDistortion","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00059","gapId":"node:Compositor:CompositorNodeNormal","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00060","gapId":"node:Compositor:CompositorNodeNormalize","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00061","gapId":"node:Compositor:CompositorNodeOutputFile","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00062","gapId":"node:Compositor:CompositorNodePixelate","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00063","gapId":"node:Compositor:CompositorNodePlaneTrackDeform","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00064","gapId":"node:Compositor:CompositorNodePosterize","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00065","gapId":"node:Compositor:CompositorNodePremulKey","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00066","gapId":"node:Compositor:CompositorNodeRGB","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00067","gapId":"node:Compositor:CompositorNodeRGBToBW","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00068","gapId":"node:Compositor:CompositorNodeRLayers","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00069","gapId":"node:Compositor:CompositorNodeRelativeToPixel","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00070","gapId":"node:Compositor:CompositorNodeRotate","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00071","gapId":"node:Compositor:CompositorNodeScale","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00072","gapId":"node:Compositor:CompositorNodeSceneTime","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00073","gapId":"node:Compositor:CompositorNodeSeparateColor","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00074","gapId":"node:Compositor:CompositorNodeSequencerStripInfo","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00075","gapId":"node:Compositor:CompositorNodeSetAlpha","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00076","gapId":"node:Compositor:CompositorNodeSplit","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00077","gapId":"node:Compositor:CompositorNodeStabilize","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00078","gapId":"node:Compositor:CompositorNodeStringToImage","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00079","gapId":"node:Compositor:CompositorNodeSwitch","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00080","gapId":"node:Compositor:CompositorNodeSwitchView","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00081","gapId":"node:Compositor:CompositorNodeTime","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00082","gapId":"node:Compositor:CompositorNodeTonemap","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00083","gapId":"node:Compositor:CompositorNodeTrackPos","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00084","gapId":"node:Compositor:CompositorNodeTransform","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00085","gapId":"node:Compositor:CompositorNodeTranslate","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00086","gapId":"node:Compositor:CompositorNodeVecBlur","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00087","gapId":"node:Compositor:CompositorNodeViewer","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00088","gapId":"node:Compositor:CompositorNodeZcombine","ownerFamily":"COMPOSITOR_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00089","gapId":"node:Geometry:GeometryNodeAccumulateField","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00090","gapId":"node:Geometry:GeometryNodeAttributeDomainSize","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00091","gapId":"node:Geometry:GeometryNodeAttributeStatistic","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00092","gapId":"node:Geometry:GeometryNodeBake","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00093","gapId":"node:Geometry:GeometryNodeBlurAttribute","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00094","gapId":"node:Geometry:GeometryNodeBoneInfo","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00095","gapId":"node:Geometry:GeometryNodeBoundBox","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00096","gapId":"node:Geometry:GeometryNodeCameraInfo","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00097","gapId":"node:Geometry:GeometryNodeCaptureAttribute","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00098","gapId":"node:Geometry:GeometryNodeClosureToList","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00099","gapId":"node:Geometry:GeometryNodeClusterByConnected","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00100","gapId":"node:Geometry:GeometryNodeClusterByDistance","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00101","gapId":"node:Geometry:GeometryNodeCollectionChildren","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00102","gapId":"node:Geometry:GeometryNodeCollectionInfo","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00103","gapId":"node:Geometry:GeometryNodeConvexHull","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00104","gapId":"node:Geometry:GeometryNodeCornersOfEdge","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00105","gapId":"node:Geometry:GeometryNodeCornersOfFace","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00106","gapId":"node:Geometry:GeometryNodeCornersOfVertex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00107","gapId":"node:Geometry:GeometryNodeCubeGridTopology","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00108","gapId":"node:Geometry:GeometryNodeCurveArc","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00109","gapId":"node:Geometry:GeometryNodeCurveEndpointSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00110","gapId":"node:Geometry:GeometryNodeCurveHandleTypeSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00111","gapId":"node:Geometry:GeometryNodeCurveLength","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00112","gapId":"node:Geometry:GeometryNodeCurveOfPoint","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00113","gapId":"node:Geometry:GeometryNodeCurvePrimitiveBezierSegment","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00114","gapId":"node:Geometry:GeometryNodeCurvePrimitiveCircle","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00115","gapId":"node:Geometry:GeometryNodeCurvePrimitiveLine","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00116","gapId":"node:Geometry:GeometryNodeCurvePrimitiveQuadrilateral","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00117","gapId":"node:Geometry:GeometryNodeCurveQuadraticBezier","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00118","gapId":"node:Geometry:GeometryNodeCurveSetHandles","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00119","gapId":"node:Geometry:GeometryNodeCurveSpiral","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00120","gapId":"node:Geometry:GeometryNodeCurveSplineType","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00121","gapId":"node:Geometry:GeometryNodeCurveStar","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00122","gapId":"node:Geometry:GeometryNodeCurveToMesh","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00123","gapId":"node:Geometry:GeometryNodeCurveToPoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00124","gapId":"node:Geometry:GeometryNodeCurvesToGreasePencil","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00125","gapId":"node:Geometry:GeometryNodeDeformCurvesOnSurface","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00126","gapId":"node:Geometry:GeometryNodeDeleteGeometry","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00127","gapId":"node:Geometry:GeometryNodeDistributePointsInGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00128","gapId":"node:Geometry:GeometryNodeDistributePointsInVolume","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00129","gapId":"node:Geometry:GeometryNodeDistributePointsOnFaces","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00130","gapId":"node:Geometry:GeometryNodeDualMesh","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00131","gapId":"node:Geometry:GeometryNodeDuplicateElements","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00132","gapId":"node:Geometry:GeometryNodeEdgePathsToCurves","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00133","gapId":"node:Geometry:GeometryNodeEdgePathsToSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00134","gapId":"node:Geometry:GeometryNodeEdgesOfCorner","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00135","gapId":"node:Geometry:GeometryNodeEdgesOfVertex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00136","gapId":"node:Geometry:GeometryNodeEdgesToFaceGroups","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00137","gapId":"node:Geometry:GeometryNodeExtrudeMesh","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00138","gapId":"node:Geometry:GeometryNodeFaceOfCorner","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00139","gapId":"node:Geometry:GeometryNodeFieldAtIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00140","gapId":"node:Geometry:GeometryNodeFieldAverage","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00141","gapId":"node:Geometry:GeometryNodeFieldMinAndMax","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00142","gapId":"node:Geometry:GeometryNodeFieldOnDomain","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00143","gapId":"node:Geometry:GeometryNodeFieldToGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00144","gapId":"node:Geometry:GeometryNodeFieldToList","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00145","gapId":"node:Geometry:GeometryNodeFieldVariance","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00146","gapId":"node:Geometry:GeometryNodeFillCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00147","gapId":"node:Geometry:GeometryNodeFilletCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00148","gapId":"node:Geometry:GeometryNodeFilterList","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00149","gapId":"node:Geometry:GeometryNodeFlipFaces","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00150","gapId":"node:Geometry:GeometryNodeForeachGeometryElementInput","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00151","gapId":"node:Geometry:GeometryNodeForeachGeometryElementOutput","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00152","gapId":"node:Geometry:GeometryNodeGeometryToInstance","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00153","gapId":"node:Geometry:GeometryNodeGetAttributeNames","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00154","gapId":"node:Geometry:GeometryNodeGetGeometryBundle","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00155","gapId":"node:Geometry:GeometryNodeGetGeometryComponent","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00156","gapId":"node:Geometry:GeometryNodeGetNamedGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00157","gapId":"node:Geometry:GeometryNodeGizmoDial","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00158","gapId":"node:Geometry:GeometryNodeGizmoLinear","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00159","gapId":"node:Geometry:GeometryNodeGizmoTransform","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00160","gapId":"node:Geometry:GeometryNodeGreasePencilToCurves","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00161","gapId":"node:Geometry:GeometryNodeGridAdvect","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00162","gapId":"node:Geometry:GeometryNodeGridClip","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00163","gapId":"node:Geometry:GeometryNodeGridCurl","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00164","gapId":"node:Geometry:GeometryNodeGridDilateAndErode","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00165","gapId":"node:Geometry:GeometryNodeGridDivergence","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00166","gapId":"node:Geometry:GeometryNodeGridGradient","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00167","gapId":"node:Geometry:GeometryNodeGridInfo","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00168","gapId":"node:Geometry:GeometryNodeGridLaplacian","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00169","gapId":"node:Geometry:GeometryNodeGridMean","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00170","gapId":"node:Geometry:GeometryNodeGridMedian","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00171","gapId":"node:Geometry:GeometryNodeGridPrune","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00172","gapId":"node:Geometry:GeometryNodeGridToMesh","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00173","gapId":"node:Geometry:GeometryNodeGridToPoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00174","gapId":"node:Geometry:GeometryNodeGridVoxelize","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00175","gapId":"node:Geometry:GeometryNodeGroup","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00176","gapId":"node:Geometry:GeometryNodeImageInfo","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00177","gapId":"node:Geometry:GeometryNodeImageTexture","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00178","gapId":"node:Geometry:GeometryNodeImportCSV","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00179","gapId":"node:Geometry:GeometryNodeImportOBJ","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00180","gapId":"node:Geometry:GeometryNodeImportPLY","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00181","gapId":"node:Geometry:GeometryNodeImportSTL","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00182","gapId":"node:Geometry:GeometryNodeImportText","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00183","gapId":"node:Geometry:GeometryNodeImportVDB","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00184","gapId":"node:Geometry:GeometryNodeIndexOfNearest","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00185","gapId":"node:Geometry:GeometryNodeIndexSwitch","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00186","gapId":"node:Geometry:GeometryNodeInputActiveCamera","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00187","gapId":"node:Geometry:GeometryNodeInputCollection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00188","gapId":"node:Geometry:GeometryNodeInputCurveHandlePositions","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00189","gapId":"node:Geometry:GeometryNodeInputCurveTilt","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00190","gapId":"node:Geometry:GeometryNodeInputEdgeSmooth","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00191","gapId":"node:Geometry:GeometryNodeInputFont","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00192","gapId":"node:Geometry:GeometryNodeInputID","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00193","gapId":"node:Geometry:GeometryNodeInputImage","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00194","gapId":"node:Geometry:GeometryNodeInputIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00195","gapId":"node:Geometry:GeometryNodeInputInstanceBounds","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00196","gapId":"node:Geometry:GeometryNodeInputInstanceReference","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00197","gapId":"node:Geometry:GeometryNodeInputInstanceRotation","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00198","gapId":"node:Geometry:GeometryNodeInputInstanceScale","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00199","gapId":"node:Geometry:GeometryNodeInputMaterial","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00200","gapId":"node:Geometry:GeometryNodeInputMaterialIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00201","gapId":"node:Geometry:GeometryNodeInputMeshEdgeAngle","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00202","gapId":"node:Geometry:GeometryNodeInputMeshEdgeNeighbors","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00203","gapId":"node:Geometry:GeometryNodeInputMeshEdgeVertices","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00204","gapId":"node:Geometry:GeometryNodeInputMeshFaceArea","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00205","gapId":"node:Geometry:GeometryNodeInputMeshFaceIsPlanar","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00206","gapId":"node:Geometry:GeometryNodeInputMeshFaceNeighbors","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00207","gapId":"node:Geometry:GeometryNodeInputMeshIsland","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00208","gapId":"node:Geometry:GeometryNodeInputMeshVertexNeighbors","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00209","gapId":"node:Geometry:GeometryNodeInputNamedAttribute","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00210","gapId":"node:Geometry:GeometryNodeInputNamedLayerSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00211","gapId":"node:Geometry:GeometryNodeInputNormal","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00212","gapId":"node:Geometry:GeometryNodeInputObject","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00213","gapId":"node:Geometry:GeometryNodeInputPosition","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00214","gapId":"node:Geometry:GeometryNodeInputRadius","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00215","gapId":"node:Geometry:GeometryNodeInputSceneTime","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00216","gapId":"node:Geometry:GeometryNodeInputShadeSmooth","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00217","gapId":"node:Geometry:GeometryNodeInputShortestEdgePaths","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00218","gapId":"node:Geometry:GeometryNodeInputSplineCyclic","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00219","gapId":"node:Geometry:GeometryNodeInputSplineResolution","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00220","gapId":"node:Geometry:GeometryNodeInputTangent","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00221","gapId":"node:Geometry:GeometryNodeInputVoxelIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00222","gapId":"node:Geometry:GeometryNodeInstanceOnPoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00223","gapId":"node:Geometry:GeometryNodeInstanceTransform","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00224","gapId":"node:Geometry:GeometryNodeInstancesToPoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00225","gapId":"node:Geometry:GeometryNodeInterpolateCurves","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00226","gapId":"node:Geometry:GeometryNodeIsViewport","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00227","gapId":"node:Geometry:GeometryNodeJoinGeometry","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00228","gapId":"node:Geometry:GeometryNodeListGetItem","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00229","gapId":"node:Geometry:GeometryNodeListLength","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00230","gapId":"node:Geometry:GeometryNodeMaterialSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00231","gapId":"node:Geometry:GeometryNodeMenuSwitch","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00232","gapId":"node:Geometry:GeometryNodeMergeByDistance","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00233","gapId":"node:Geometry:GeometryNodeMergeLayers","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00234","gapId":"node:Geometry:GeometryNodeMergePoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00235","gapId":"node:Geometry:GeometryNodeMeshBevel","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00236","gapId":"node:Geometry:GeometryNodeMeshBoolean","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00237","gapId":"node:Geometry:GeometryNodeMeshCircle","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00238","gapId":"node:Geometry:GeometryNodeMeshCone","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00239","gapId":"node:Geometry:GeometryNodeMeshCube","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00240","gapId":"node:Geometry:GeometryNodeMeshCylinder","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00241","gapId":"node:Geometry:GeometryNodeMeshFaceSetBoundaries","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00242","gapId":"node:Geometry:GeometryNodeMeshGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00243","gapId":"node:Geometry:GeometryNodeMeshIcoSphere","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00244","gapId":"node:Geometry:GeometryNodeMeshLine","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00245","gapId":"node:Geometry:GeometryNodeMeshToCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00246","gapId":"node:Geometry:GeometryNodeMeshToDensityGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00247","gapId":"node:Geometry:GeometryNodeMeshToPoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00248","gapId":"node:Geometry:GeometryNodeMeshToSDFGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00249","gapId":"node:Geometry:GeometryNodeMeshToVolume","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00250","gapId":"node:Geometry:GeometryNodeMeshUVSphere","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00251","gapId":"node:Geometry:GeometryNodeObjectInfo","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00252","gapId":"node:Geometry:GeometryNodeOffsetCornerInFace","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00253","gapId":"node:Geometry:GeometryNodeOffsetPointInCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00254","gapId":"node:Geometry:GeometryNodePoints","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00255","gapId":"node:Geometry:GeometryNodePointsOfCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00256","gapId":"node:Geometry:GeometryNodePointsToCurves","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00257","gapId":"node:Geometry:GeometryNodePointsToSDFGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00258","gapId":"node:Geometry:GeometryNodePointsToVertices","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00259","gapId":"node:Geometry:GeometryNodePointsToVolume","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00260","gapId":"node:Geometry:GeometryNodeProximity","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00261","gapId":"node:Geometry:GeometryNodeRaycast","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00262","gapId":"node:Geometry:GeometryNodeRealizeInstances","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00263","gapId":"node:Geometry:GeometryNodeRemoveAttribute","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00264","gapId":"node:Geometry:GeometryNodeRenameAttribute","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00265","gapId":"node:Geometry:GeometryNodeRepeatInput","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00266","gapId":"node:Geometry:GeometryNodeRepeatOutput","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00267","gapId":"node:Geometry:GeometryNodeReplaceMaterial","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00268","gapId":"node:Geometry:GeometryNodeResampleCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00269","gapId":"node:Geometry:GeometryNodeReverseCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00270","gapId":"node:Geometry:GeometryNodeRotateInstances","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00271","gapId":"node:Geometry:GeometryNodeSDFGridBoolean","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00272","gapId":"node:Geometry:GeometryNodeSDFGridFillet","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00273","gapId":"node:Geometry:GeometryNodeSDFGridLaplacian","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00274","gapId":"node:Geometry:GeometryNodeSDFGridMean","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00275","gapId":"node:Geometry:GeometryNodeSDFGridMeanCurvature","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00276","gapId":"node:Geometry:GeometryNodeSDFGridMedian","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00277","gapId":"node:Geometry:GeometryNodeSDFGridOffset","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00278","gapId":"node:Geometry:GeometryNodeSampleCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00279","gapId":"node:Geometry:GeometryNodeSampleGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00280","gapId":"node:Geometry:GeometryNodeSampleGridIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00281","gapId":"node:Geometry:GeometryNodeSampleIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00282","gapId":"node:Geometry:GeometryNodeSampleNearest","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00283","gapId":"node:Geometry:GeometryNodeSampleNearestSurface","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00284","gapId":"node:Geometry:GeometryNodeSampleSoundFrequencies","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00285","gapId":"node:Geometry:GeometryNodeSampleUVSurface","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00286","gapId":"node:Geometry:GeometryNodeScaleElements","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00287","gapId":"node:Geometry:GeometryNodeScaleInstances","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00288","gapId":"node:Geometry:GeometryNodeSelfObject","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00289","gapId":"node:Geometry:GeometryNodeSeparateComponents","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00290","gapId":"node:Geometry:GeometryNodeSeparateGeometry","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00291","gapId":"node:Geometry:GeometryNodeSetCurveHandlePositions","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00292","gapId":"node:Geometry:GeometryNodeSetCurveNormal","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00293","gapId":"node:Geometry:GeometryNodeSetCurveRadius","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00294","gapId":"node:Geometry:GeometryNodeSetCurveTilt","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00295","gapId":"node:Geometry:GeometryNodeSetGeometryBundle","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00296","gapId":"node:Geometry:GeometryNodeSetGeometryName","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00297","gapId":"node:Geometry:GeometryNodeSetGreasePencilColor","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00298","gapId":"node:Geometry:GeometryNodeSetGreasePencilDepth","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00299","gapId":"node:Geometry:GeometryNodeSetGreasePencilSoftness","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00300","gapId":"node:Geometry:GeometryNodeSetGridBackground","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00301","gapId":"node:Geometry:GeometryNodeSetGridTransform","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00302","gapId":"node:Geometry:GeometryNodeSetID","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00303","gapId":"node:Geometry:GeometryNodeSetInstanceTransform","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00304","gapId":"node:Geometry:GeometryNodeSetMaterial","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00305","gapId":"node:Geometry:GeometryNodeSetMaterialIndex","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00306","gapId":"node:Geometry:GeometryNodeSetMeshNormal","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00307","gapId":"node:Geometry:GeometryNodeSetNURBSOrder","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00308","gapId":"node:Geometry:GeometryNodeSetNURBSWeight","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00309","gapId":"node:Geometry:GeometryNodeSetPointRadius","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00310","gapId":"node:Geometry:GeometryNodeSetPosition","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00311","gapId":"node:Geometry:GeometryNodeSetShadeSmooth","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00312","gapId":"node:Geometry:GeometryNodeSetSplineCyclic","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00313","gapId":"node:Geometry:GeometryNodeSetSplineResolution","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00314","gapId":"node:Geometry:GeometryNodeSimulationInput","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00315","gapId":"node:Geometry:GeometryNodeSimulationOutput","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00316","gapId":"node:Geometry:GeometryNodeSortElements","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00317","gapId":"node:Geometry:GeometryNodeSortList","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00318","gapId":"node:Geometry:GeometryNodeSplineLength","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00319","gapId":"node:Geometry:GeometryNodeSplineParameter","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00320","gapId":"node:Geometry:GeometryNodeSplitEdges","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00321","gapId":"node:Geometry:GeometryNodeSplitToInstances","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00322","gapId":"node:Geometry:GeometryNodeStoreNamedAttribute","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00323","gapId":"node:Geometry:GeometryNodeStoreNamedGrid","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00324","gapId":"node:Geometry:GeometryNodeStringJoin","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00325","gapId":"node:Geometry:GeometryNodeStringToCurves","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00326","gapId":"node:Geometry:GeometryNodeSubdivideCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00327","gapId":"node:Geometry:GeometryNodeSubdivideMesh","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00328","gapId":"node:Geometry:GeometryNodeSubdivisionSurface","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00329","gapId":"node:Geometry:GeometryNodeSwitch","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00330","gapId":"node:Geometry:GeometryNodeTagFilter","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00331","gapId":"node:Geometry:GeometryNodeTool3DCursor","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00332","gapId":"node:Geometry:GeometryNodeToolActiveElement","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00333","gapId":"node:Geometry:GeometryNodeToolFaceSet","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00334","gapId":"node:Geometry:GeometryNodeToolMousePosition","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00335","gapId":"node:Geometry:GeometryNodeToolSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00336","gapId":"node:Geometry:GeometryNodeToolSetFaceSet","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00337","gapId":"node:Geometry:GeometryNodeToolSetSelection","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00338","gapId":"node:Geometry:GeometryNodeTransferAttributes","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00339","gapId":"node:Geometry:GeometryNodeTransform","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00340","gapId":"node:Geometry:GeometryNodeTranslateInstances","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00341","gapId":"node:Geometry:GeometryNodeTriangulate","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00342","gapId":"node:Geometry:GeometryNodeTrimCurve","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00343","gapId":"node:Geometry:GeometryNodeUVPackIslands","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00344","gapId":"node:Geometry:GeometryNodeUVTangent","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00345","gapId":"node:Geometry:GeometryNodeUVUnwrap","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00346","gapId":"node:Geometry:GeometryNodeVertexOfCorner","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00347","gapId":"node:Geometry:GeometryNodeViewer","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00348","gapId":"node:Geometry:GeometryNodeViewportTransform","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00349","gapId":"node:Geometry:GeometryNodeVolumeCube","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00350","gapId":"node:Geometry:GeometryNodeVolumeToMesh","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00351","gapId":"node:Geometry:GeometryNodeWarning","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00352","gapId":"node:Geometry:GeometryNodeXPBDSolver","ownerFamily":"GEOMETRY_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00353","gapId":"node:Shader:ShaderNodeAddShader","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00354","gapId":"node:Shader:ShaderNodeAmbientOcclusion","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00355","gapId":"node:Shader:ShaderNodeAttribute","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00356","gapId":"node:Shader:ShaderNodeBackground","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00357","gapId":"node:Shader:ShaderNodeBevel","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00358","gapId":"node:Shader:ShaderNodeBlackbody","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00359","gapId":"node:Shader:ShaderNodeBrightContrast","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00360","gapId":"node:Shader:ShaderNodeBsdfAnisotropic","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00361","gapId":"node:Shader:ShaderNodeBsdfDiffuse","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00362","gapId":"node:Shader:ShaderNodeBsdfGlass","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00363","gapId":"node:Shader:ShaderNodeBsdfHair","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00364","gapId":"node:Shader:ShaderNodeBsdfHairPrincipled","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00365","gapId":"node:Shader:ShaderNodeBsdfMetallic","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00366","gapId":"node:Shader:ShaderNodeBsdfPrincipled","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00367","gapId":"node:Shader:ShaderNodeBsdfRayPortal","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00368","gapId":"node:Shader:ShaderNodeBsdfRefraction","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00369","gapId":"node:Shader:ShaderNodeBsdfSheen","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00370","gapId":"node:Shader:ShaderNodeBsdfToon","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00371","gapId":"node:Shader:ShaderNodeBsdfTranslucent","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00372","gapId":"node:Shader:ShaderNodeBsdfTransparent","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00373","gapId":"node:Shader:ShaderNodeBump","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00374","gapId":"node:Shader:ShaderNodeCameraData","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00375","gapId":"node:Shader:ShaderNodeClamp","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00376","gapId":"node:Shader:ShaderNodeCombineColor","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00377","gapId":"node:Shader:ShaderNodeCombineXYZ","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00378","gapId":"node:Shader:ShaderNodeDisplacement","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00379","gapId":"node:Shader:ShaderNodeEeveeSpecular","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00380","gapId":"node:Shader:ShaderNodeEmission","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00381","gapId":"node:Shader:ShaderNodeFloatCurve","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00382","gapId":"node:Shader:ShaderNodeFresnel","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00383","gapId":"node:Shader:ShaderNodeGamma","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00384","gapId":"node:Shader:ShaderNodeGroup","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00385","gapId":"node:Shader:ShaderNodeHairInfo","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00386","gapId":"node:Shader:ShaderNodeHoldout","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00387","gapId":"node:Shader:ShaderNodeHueSaturation","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00388","gapId":"node:Shader:ShaderNodeInvert","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00389","gapId":"node:Shader:ShaderNodeLayerWeight","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00390","gapId":"node:Shader:ShaderNodeLightFalloff","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00391","gapId":"node:Shader:ShaderNodeLightPath","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00392","gapId":"node:Shader:ShaderNodeMapRange","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00393","gapId":"node:Shader:ShaderNodeMapping","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00394","gapId":"node:Shader:ShaderNodeMath","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00395","gapId":"node:Shader:ShaderNodeMix","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00396","gapId":"node:Shader:ShaderNodeMixRGB","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00397","gapId":"node:Shader:ShaderNodeMixShader","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00398","gapId":"node:Shader:ShaderNodeNewGeometry","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00399","gapId":"node:Shader:ShaderNodeNormal","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00400","gapId":"node:Shader:ShaderNodeNormalMap","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00401","gapId":"node:Shader:ShaderNodeObjectInfo","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00402","gapId":"node:Shader:ShaderNodeOutputAOV","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00403","gapId":"node:Shader:ShaderNodeOutputLight","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00404","gapId":"node:Shader:ShaderNodeOutputLineStyle","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00405","gapId":"node:Shader:ShaderNodeOutputMaterial","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00406","gapId":"node:Shader:ShaderNodeOutputWorld","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00407","gapId":"node:Shader:ShaderNodeParticleInfo","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00408","gapId":"node:Shader:ShaderNodePointInfo","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00409","gapId":"node:Shader:ShaderNodeRGB","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00410","gapId":"node:Shader:ShaderNodeRGBCurve","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00411","gapId":"node:Shader:ShaderNodeRGBToBW","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00412","gapId":"node:Shader:ShaderNodeRadialTiling","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00413","gapId":"node:Shader:ShaderNodeRaycast","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00414","gapId":"node:Shader:ShaderNodeScript","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00415","gapId":"node:Shader:ShaderNodeSeparateColor","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00416","gapId":"node:Shader:ShaderNodeSeparateXYZ","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00417","gapId":"node:Shader:ShaderNodeShaderToRGB","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00418","gapId":"node:Shader:ShaderNodeSqueeze","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00419","gapId":"node:Shader:ShaderNodeSubsurfaceScattering","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00420","gapId":"node:Shader:ShaderNodeTangent","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00421","gapId":"node:Shader:ShaderNodeTexBrick","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00422","gapId":"node:Shader:ShaderNodeTexChecker","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00423","gapId":"node:Shader:ShaderNodeTexCoord","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00424","gapId":"node:Shader:ShaderNodeTexEnvironment","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00425","gapId":"node:Shader:ShaderNodeTexGabor","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00426","gapId":"node:Shader:ShaderNodeTexGradient","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00427","gapId":"node:Shader:ShaderNodeTexIES","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00428","gapId":"node:Shader:ShaderNodeTexImage","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00429","gapId":"node:Shader:ShaderNodeTexMagic","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00430","gapId":"node:Shader:ShaderNodeTexNoise","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00431","gapId":"node:Shader:ShaderNodeTexSky","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00432","gapId":"node:Shader:ShaderNodeTexVoronoi","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00433","gapId":"node:Shader:ShaderNodeTexWave","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00434","gapId":"node:Shader:ShaderNodeTexWhiteNoise","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00435","gapId":"node:Shader:ShaderNodeUVAlongStroke","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00436","gapId":"node:Shader:ShaderNodeUVMap","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00437","gapId":"node:Shader:ShaderNodeValToRGB","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00438","gapId":"node:Shader:ShaderNodeValue","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00439","gapId":"node:Shader:ShaderNodeVectorCurve","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00440","gapId":"node:Shader:ShaderNodeVectorDisplacement","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00441","gapId":"node:Shader:ShaderNodeVectorMath","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00442","gapId":"node:Shader:ShaderNodeVectorRotate","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00443","gapId":"node:Shader:ShaderNodeVectorTransform","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00444","gapId":"node:Shader:ShaderNodeVertexColor","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00445","gapId":"node:Shader:ShaderNodeVolumeAbsorption","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00446","gapId":"node:Shader:ShaderNodeVolumeCoefficients","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00447","gapId":"node:Shader:ShaderNodeVolumeInfo","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00448","gapId":"node:Shader:ShaderNodeVolumePrincipled","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00449","gapId":"node:Shader:ShaderNodeVolumeScatter","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00450","gapId":"node:Shader:ShaderNodeWavelength","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M18-GAP-00451","gapId":"node:Shader:ShaderNodeWireframe","ownerFamily":"SHADER_NODE","sourceTask":"M15-01C","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00001","gapId":"rna:Core:Action","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00002","gapId":"rna:Core:Armature","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00003","gapId":"rna:Core:Brush","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00004","gapId":"rna:Core:Curve","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00005","gapId":"rna:Core:Curves","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00006","gapId":"rna:Core:GreasePencil","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00007","gapId":"rna:Core:ID","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00008","gapId":"rna:Core:Image","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00009","gapId":"rna:Core:Key","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00010","gapId":"rna:Core:Lattice","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00011","gapId":"rna:Core:Mask","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00012","gapId":"rna:Core:MetaBall","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00013","gapId":"rna:Core:MovieClip","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00014","gapId":"rna:Core:Palette","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00015","gapId":"rna:Core:ParticleSettings","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00016","gapId":"rna:Core:PointCloud","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00017","gapId":"rna:Core:Sound","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00018","gapId":"rna:Core:Speaker","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00019","gapId":"rna:Core:Text","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M19-GAP-00020","gapId":"rna:Core:Volume","ownerFamily":"Core","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00001","gapId":"physics:BakeSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00002","gapId":"physics:BlendDataParticles","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00003","gapId":"physics:BoidRule","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00004","gapId":"physics:BoidRuleAverageSpeed","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00005","gapId":"physics:BoidRuleAvoid","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00006","gapId":"physics:BoidRuleAvoidCollision","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00007","gapId":"physics:BoidRuleFight","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00008","gapId":"physics:BoidRuleFollowLeader","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00009","gapId":"physics:BoidRuleGoal","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00010","gapId":"physics:BoidSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00011","gapId":"physics:BoidState","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00012","gapId":"physics:ChildParticle","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00013","gapId":"physics:ClothCollisionSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00014","gapId":"physics:ClothModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00015","gapId":"physics:ClothSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00016","gapId":"physics:ClothSolverResult","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00017","gapId":"physics:CollisionModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00018","gapId":"physics:CollisionSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00019","gapId":"physics:DynamicPaintBrushSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00020","gapId":"physics:DynamicPaintCanvasSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00021","gapId":"physics:DynamicPaintModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00022","gapId":"physics:DynamicPaintSurface","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00023","gapId":"physics:DynamicPaintSurfaces","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00024","gapId":"physics:EffectorWeights","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00025","gapId":"physics:FieldSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00026","gapId":"physics:FluidDomainSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00027","gapId":"physics:FluidEffectorSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00028","gapId":"physics:FluidFlowSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00029","gapId":"physics:FluidModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00030","gapId":"physics:GeometryNodeAccumulateField","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00031","gapId":"physics:GeometryNodeFieldAtIndex","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00032","gapId":"physics:GeometryNodeFieldAverage","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00033","gapId":"physics:GeometryNodeFieldMinAndMax","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00034","gapId":"physics:GeometryNodeFieldOnDomain","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00035","gapId":"physics:GeometryNodeFieldToGrid","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00036","gapId":"physics:GeometryNodeFieldToGridItem","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00037","gapId":"physics:GeometryNodeFieldToGridItems","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00038","gapId":"physics:GeometryNodeFieldToList","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00039","gapId":"physics:GeometryNodeFieldToListItem","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00040","gapId":"physics:GeometryNodeFieldToListItems","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00041","gapId":"physics:GeometryNodeFieldVariance","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00042","gapId":"physics:Particle","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00043","gapId":"physics:ParticleBrush","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00044","gapId":"physics:ParticleDupliWeight","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00045","gapId":"physics:ParticleEdit","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00046","gapId":"physics:ParticleHairKey","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00047","gapId":"physics:ParticleInstanceModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00048","gapId":"physics:ParticleKey","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00049","gapId":"physics:ParticleSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00050","gapId":"physics:ParticleSettingsTextureSlot","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00051","gapId":"physics:ParticleSettingsTextureSlots","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00052","gapId":"physics:ParticleSystem","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00053","gapId":"physics:ParticleSystemModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00054","gapId":"physics:ParticleSystems","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00055","gapId":"physics:ParticleTarget","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00056","gapId":"physics:PointCache","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00057","gapId":"physics:PointCacheItem","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00058","gapId":"physics:PointCaches","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00059","gapId":"physics:RigidBodyConstraint","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00060","gapId":"physics:RigidBodyObject","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00061","gapId":"physics:RigidBodyWorld","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00062","gapId":"physics:SPHFluidSettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00063","gapId":"physics:ShaderNodeParticleInfo","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00064","gapId":"physics:SoftBodyModifier","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00065","gapId":"physics:SoftBodySettings","ownerFamily":"PHYSICS","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00066","gapId":"strip:ADD","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00067","gapId":"strip:ADJUSTMENT","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00068","gapId":"strip:ALPHA_OVER","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00069","gapId":"strip:ALPHA_UNDER","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00070","gapId":"strip:COLOR","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00071","gapId":"strip:COLORMIX","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00072","gapId":"strip:COMPOSITOR","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00073","gapId":"strip:CROSS","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00074","gapId":"strip:GAMMA_CROSS","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00075","gapId":"strip:GAUSSIAN_BLUR","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00076","gapId":"strip:GLOW","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00077","gapId":"strip:IMAGE","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00078","gapId":"strip:MASK","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00079","gapId":"strip:META","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00080","gapId":"strip:MOVIE","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00081","gapId":"strip:MOVIECLIP","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00082","gapId":"strip:MULTICAM","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00083","gapId":"strip:MULTIPLY","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00084","gapId":"strip:SCENE","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00085","gapId":"strip:SOUND","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00086","gapId":"strip:SPEED","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00087","gapId":"strip:SUBTRACT","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00088","gapId":"strip:TEXT","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M20-GAP-00089","gapId":"strip:WIPE","ownerFamily":"SEQUENCER","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00001","gapId":"area:CLIP_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00002","gapId":"area:CONSOLE","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00003","gapId":"area:DOPESHEET_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00004","gapId":"area:EMPTY","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00005","gapId":"area:FILE_BROWSER","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00006","gapId":"area:GRAPH_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00007","gapId":"area:IMAGE_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00008","gapId":"area:INFO","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00009","gapId":"area:NLA_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00010","gapId":"area:NODE_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00011","gapId":"area:OUTLINER","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00012","gapId":"area:PREFERENCES","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00013","gapId":"area:PROPERTIES","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00014","gapId":"area:SEQUENCE_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00015","gapId":"area:SPREADSHEET","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00016","gapId":"area:STATUSBAR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00017","gapId":"area:TEXT_EDITOR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00018","gapId":"area:TOPBAR","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00019","gapId":"area:VIEW_3D","ownerFamily":"EDITOR","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00020","gapId":"io:anim.keying_set_export","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00021","gapId":"io:collection.export_all","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00022","gapId":"io:collection.exporter_add","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00023","gapId":"io:collection.exporter_export","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00024","gapId":"io:collection.exporter_move","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00025","gapId":"io:collection.exporter_remove","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00026","gapId":"io:collection.importer_add","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00027","gapId":"io:collection.importer_remove","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00028","gapId":"io:export_anim.bvh","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00029","gapId":"io:export_scene.fbx","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00030","gapId":"io:export_scene.gltf","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00031","gapId":"io:image.import_as_mesh_planes","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00032","gapId":"io:import_anim.bvh","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00033","gapId":"io:import_curve.svg","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00034","gapId":"io:import_scene.fbx","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00035","gapId":"io:import_scene.gltf","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00036","gapId":"io:node.add_import_node","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00037","gapId":"io:object.volume_import","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00038","gapId":"io:preferences.keyconfig_export","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00039","gapId":"io:preferences.keyconfig_import","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00040","gapId":"io:sequencer.export_subtitles","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00041","gapId":"io:uv.export_layout","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00042","gapId":"io:wm.collection_export_all","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00043","gapId":"io:wm.drop_import_file","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00044","gapId":"io:wm.fbx_import","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00045","gapId":"io:wm.grease_pencil_export_svg","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00046","gapId":"io:wm.grease_pencil_import_svg","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00047","gapId":"io:wm.obj_export","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00048","gapId":"io:wm.obj_import","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00049","gapId":"io:wm.ply_export","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00050","gapId":"io:wm.ply_import","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00051","gapId":"io:wm.stl_export","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00052","gapId":"io:wm.stl_import","ownerFamily":"IMPORT_EXPORT","sourceTask":"M15-01D","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00053","gapId":"keymap-item:3D View Generic:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00054","gapId":"keymap-item:3D View Generic:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00055","gapId":"keymap-item:3D View Tool: Bend:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00056","gapId":"keymap-item:3D View Tool: Breakdowner:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00057","gapId":"keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00058","gapId":"keymap-item:3D View Tool: Cursor:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00059","gapId":"keymap-item:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00060","gapId":"keymap-item:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00061","gapId":"keymap-item:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00062","gapId":"keymap-item:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00063","gapId":"keymap-item:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00064","gapId":"keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00065","gapId":"keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00066","gapId":"keymap-item:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00067","gapId":"keymap-item:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00068","gapId":"keymap-item:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00069","gapId":"keymap-item:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00070","gapId":"keymap-item:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00071","gapId":"keymap-item:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00072","gapId":"keymap-item:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00073","gapId":"keymap-item:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00074","gapId":"keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00075","gapId":"keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00076","gapId":"keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00077","gapId":"keymap-item:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00078","gapId":"keymap-item:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00079","gapId":"keymap-item:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00080","gapId":"keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00081","gapId":"keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00082","gapId":"keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00083","gapId":"keymap-item:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00084","gapId":"keymap-item:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00085","gapId":"keymap-item:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00086","gapId":"keymap-item:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00087","gapId":"keymap-item:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00088","gapId":"keymap-item:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00089","gapId":"keymap-item:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00090","gapId":"keymap-item:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00091","gapId":"keymap-item:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00092","gapId":"keymap-item:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00093","gapId":"keymap-item:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00094","gapId":"keymap-item:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00095","gapId":"keymap-item:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00096","gapId":"keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00097","gapId":"keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00098","gapId":"keymap-item:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00099","gapId":"keymap-item:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00100","gapId":"keymap-item:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00101","gapId":"keymap-item:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00102","gapId":"keymap-item:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00103","gapId":"keymap-item:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00104","gapId":"keymap-item:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00105","gapId":"keymap-item:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00106","gapId":"keymap-item:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00107","gapId":"keymap-item:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00108","gapId":"keymap-item:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00109","gapId":"keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00110","gapId":"keymap-item:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00111","gapId":"keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00112","gapId":"keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00113","gapId":"keymap-item:3D View Tool: Measure:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00114","gapId":"keymap-item:3D View Tool: Move:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00115","gapId":"keymap-item:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00116","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00117","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00118","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00119","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00120","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00121","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00122","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00123","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00124","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00125","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00126","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00127","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00128","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00129","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00130","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00131","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00132","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00133","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00134","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00135","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00136","gapId":"keymap-item:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00137","gapId":"keymap-item:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00138","gapId":"keymap-item:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00139","gapId":"keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00140","gapId":"keymap-item:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00141","gapId":"keymap-item:3D View Tool: Push:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00142","gapId":"keymap-item:3D View Tool: Relax:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00143","gapId":"keymap-item:3D View Tool: Rotate:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00144","gapId":"keymap-item:3D View Tool: Scale:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00145","gapId":"keymap-item:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00146","gapId":"keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00147","gapId":"keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00148","gapId":"keymap-item:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00149","gapId":"keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00150","gapId":"keymap-item:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00151","gapId":"keymap-item:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00152","gapId":"keymap-item:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00153","gapId":"keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00154","gapId":"keymap-item:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00155","gapId":"keymap-item:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00156","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00157","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00158","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00159","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00160","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00161","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00162","gapId":"keymap-item:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00163","gapId":"keymap-item:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00164","gapId":"keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00165","gapId":"keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00166","gapId":"keymap-item:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00167","gapId":"keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00168","gapId":"keymap-item:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00169","gapId":"keymap-item:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00170","gapId":"keymap-item:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00171","gapId":"keymap-item:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00172","gapId":"keymap-item:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00173","gapId":"keymap-item:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00174","gapId":"keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00175","gapId":"keymap-item:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00176","gapId":"keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00177","gapId":"keymap-item:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00178","gapId":"keymap-item:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00179","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00180","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00181","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00182","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00183","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00184","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00185","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00186","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00187","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00188","gapId":"keymap-item:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00189","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00190","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00191","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00192","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00193","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00194","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00195","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00196","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00197","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00198","gapId":"keymap-item:3D View Tool: Select Box:VIEW_3D:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00199","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00200","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00201","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00202","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00203","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00204","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00205","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00206","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00207","gapId":"keymap-item:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00208","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00209","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00210","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00211","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00212","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00213","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00214","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00215","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00216","gapId":"keymap-item:3D View Tool: Select Circle:VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00217","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00218","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00219","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00220","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00221","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00222","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00223","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00224","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00225","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00226","gapId":"keymap-item:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00227","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00228","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00229","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00230","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00231","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00232","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00233","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00234","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00235","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00236","gapId":"keymap-item:3D View Tool: Select Lasso:VIEW_3D:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00237","gapId":"keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00238","gapId":"keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00239","gapId":"keymap-item:3D View Tool: Shear:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00240","gapId":"keymap-item:3D View Tool: Transform:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00241","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00242","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00243","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00244","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00245","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00246","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00247","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00248","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00249","gapId":"keymap-item:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00250","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00251","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00252","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00253","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00254","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00255","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00256","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00257","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00258","gapId":"keymap-item:3D View Tool: Tweak:VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00259","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00260","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00261","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00262","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:100","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00263","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:101","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00264","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:102","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00265","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:103","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00266","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:104","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00267","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:105","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00268","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:106","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00269","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:107","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00270","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:108","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00271","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:109","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00272","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00273","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:110","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00274","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:111","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00275","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:112","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00276","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:113","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00277","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:114","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00278","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:115","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00279","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00280","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00281","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00282","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00283","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00284","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00285","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00286","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00287","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00288","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00289","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00290","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00291","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00292","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00293","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00294","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00295","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00296","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00297","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00298","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00299","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00300","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00301","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00302","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00303","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00304","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00305","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00306","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00307","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00308","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00309","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00310","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00311","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00312","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00313","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00314","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00315","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00316","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00317","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00318","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00319","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00320","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00321","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00322","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00323","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00324","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00325","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00326","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00327","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00328","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00329","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00330","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00331","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00332","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00333","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00334","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00335","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00336","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00337","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00338","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00339","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00340","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00341","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00342","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00343","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00344","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00345","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00346","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00347","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00348","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00349","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00350","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00351","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00352","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00353","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00354","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00355","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00356","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00357","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00358","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00359","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00360","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00361","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00362","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:88","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00363","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:89","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00364","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00365","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:90","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00366","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:91","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00367","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:92","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00368","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:93","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00369","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:94","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00370","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:95","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00371","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:96","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00372","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:97","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00373","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:98","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00374","gapId":"keymap-item:3D View:VIEW_3D:WINDOW:99","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00375","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00376","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00377","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00378","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00379","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00380","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00381","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00382","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00383","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00384","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00385","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00386","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00387","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00388","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00389","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00390","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00391","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00392","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00393","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00394","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00395","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00396","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00397","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00398","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00399","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00400","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00401","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00402","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00403","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00404","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00405","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00406","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00407","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00408","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00409","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00410","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00411","gapId":"keymap-item:Animation Channels:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00412","gapId":"keymap-item:Animation:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00413","gapId":"keymap-item:Animation:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00414","gapId":"keymap-item:Animation:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00415","gapId":"keymap-item:Animation:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00416","gapId":"keymap-item:Animation:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00417","gapId":"keymap-item:Armature:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00418","gapId":"keymap-item:Armature:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00419","gapId":"keymap-item:Armature:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00420","gapId":"keymap-item:Armature:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00421","gapId":"keymap-item:Armature:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00422","gapId":"keymap-item:Armature:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00423","gapId":"keymap-item:Armature:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00424","gapId":"keymap-item:Armature:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00425","gapId":"keymap-item:Armature:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00426","gapId":"keymap-item:Armature:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00427","gapId":"keymap-item:Armature:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00428","gapId":"keymap-item:Armature:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00429","gapId":"keymap-item:Armature:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00430","gapId":"keymap-item:Armature:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00431","gapId":"keymap-item:Armature:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00432","gapId":"keymap-item:Armature:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00433","gapId":"keymap-item:Armature:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00434","gapId":"keymap-item:Armature:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00435","gapId":"keymap-item:Armature:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00436","gapId":"keymap-item:Armature:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00437","gapId":"keymap-item:Armature:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00438","gapId":"keymap-item:Armature:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00439","gapId":"keymap-item:Armature:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00440","gapId":"keymap-item:Armature:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00441","gapId":"keymap-item:Armature:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00442","gapId":"keymap-item:Armature:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00443","gapId":"keymap-item:Armature:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00444","gapId":"keymap-item:Armature:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00445","gapId":"keymap-item:Armature:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00446","gapId":"keymap-item:Armature:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00447","gapId":"keymap-item:Armature:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00448","gapId":"keymap-item:Armature:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00449","gapId":"keymap-item:Armature:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00450","gapId":"keymap-item:Armature:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00451","gapId":"keymap-item:Armature:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00452","gapId":"keymap-item:Armature:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00453","gapId":"keymap-item:Armature:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00454","gapId":"keymap-item:Armature:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00455","gapId":"keymap-item:Armature:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00456","gapId":"keymap-item:Armature:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00457","gapId":"keymap-item:Armature:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00458","gapId":"keymap-item:Armature:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00459","gapId":"keymap-item:Armature:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00460","gapId":"keymap-item:Armature:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00461","gapId":"keymap-item:Armature:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00462","gapId":"keymap-item:Armature:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00463","gapId":"keymap-item:Armature:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00464","gapId":"keymap-item:Armature:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00465","gapId":"keymap-item:Armature:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00466","gapId":"keymap-item:Armature:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00467","gapId":"keymap-item:Armature:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00468","gapId":"keymap-item:Armature:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00469","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00470","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00471","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00472","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00473","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00474","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00475","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00476","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00477","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00478","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00479","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00480","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00481","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00482","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00483","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00484","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00485","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00486","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00487","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00488","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00489","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00490","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00491","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00492","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00493","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00494","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00495","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00496","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00497","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00498","gapId":"keymap-item:Bevel Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00499","gapId":"keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00500","gapId":"keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00501","gapId":"keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00502","gapId":"keymap-item:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00503","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00504","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00505","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00506","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00507","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00508","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00509","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00510","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00511","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00512","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00513","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00514","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00515","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00516","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00517","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00518","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00519","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00520","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00521","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00522","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00523","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00524","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00525","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00526","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00527","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00528","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00529","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00530","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00531","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00532","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00533","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00534","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00535","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00536","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00537","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00538","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00539","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00540","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00541","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00542","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00543","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00544","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00545","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00546","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00547","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00548","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00549","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00550","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00551","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00552","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00553","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00554","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00555","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00556","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00557","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00558","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00559","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00560","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00561","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00562","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00563","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00564","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00565","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00566","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00567","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00568","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00569","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00570","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00571","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00572","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00573","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00574","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00575","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00576","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00577","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00578","gapId":"keymap-item:Clip Editor:CLIP_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00579","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00580","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00581","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00582","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00583","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00584","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00585","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00586","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00587","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00588","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00589","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00590","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00591","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00592","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00593","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00594","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00595","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00596","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00597","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00598","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00599","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00600","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00601","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00602","gapId":"keymap-item:Clip Graph Editor:CLIP_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00603","gapId":"keymap-item:Clip Time Scrub:CLIP_EDITOR:PREVIEW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00604","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00605","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00606","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00607","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00608","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00609","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00610","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00611","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00612","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00613","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00614","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00615","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00616","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00617","gapId":"keymap-item:Clip:CLIP_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00618","gapId":"keymap-item:Console:CONSOLE:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00619","gapId":"keymap-item:Console:CONSOLE:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00620","gapId":"keymap-item:Console:CONSOLE:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00621","gapId":"keymap-item:Console:CONSOLE:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00622","gapId":"keymap-item:Console:CONSOLE:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00623","gapId":"keymap-item:Console:CONSOLE:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00624","gapId":"keymap-item:Console:CONSOLE:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00625","gapId":"keymap-item:Console:CONSOLE:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00626","gapId":"keymap-item:Console:CONSOLE:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00627","gapId":"keymap-item:Console:CONSOLE:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00628","gapId":"keymap-item:Console:CONSOLE:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00629","gapId":"keymap-item:Console:CONSOLE:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00630","gapId":"keymap-item:Console:CONSOLE:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00631","gapId":"keymap-item:Console:CONSOLE:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00632","gapId":"keymap-item:Console:CONSOLE:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00633","gapId":"keymap-item:Console:CONSOLE:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00634","gapId":"keymap-item:Console:CONSOLE:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00635","gapId":"keymap-item:Console:CONSOLE:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00636","gapId":"keymap-item:Console:CONSOLE:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00637","gapId":"keymap-item:Console:CONSOLE:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00638","gapId":"keymap-item:Console:CONSOLE:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00639","gapId":"keymap-item:Console:CONSOLE:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00640","gapId":"keymap-item:Console:CONSOLE:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00641","gapId":"keymap-item:Console:CONSOLE:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00642","gapId":"keymap-item:Console:CONSOLE:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00643","gapId":"keymap-item:Console:CONSOLE:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00644","gapId":"keymap-item:Console:CONSOLE:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00645","gapId":"keymap-item:Console:CONSOLE:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00646","gapId":"keymap-item:Console:CONSOLE:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00647","gapId":"keymap-item:Console:CONSOLE:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00648","gapId":"keymap-item:Console:CONSOLE:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00649","gapId":"keymap-item:Console:CONSOLE:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00650","gapId":"keymap-item:Console:CONSOLE:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00651","gapId":"keymap-item:Console:CONSOLE:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00652","gapId":"keymap-item:Console:CONSOLE:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00653","gapId":"keymap-item:Console:CONSOLE:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00654","gapId":"keymap-item:Console:CONSOLE:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00655","gapId":"keymap-item:Console:CONSOLE:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00656","gapId":"keymap-item:Console:CONSOLE:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00657","gapId":"keymap-item:Console:CONSOLE:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00658","gapId":"keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00659","gapId":"keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00660","gapId":"keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00661","gapId":"keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00662","gapId":"keymap-item:Curve Pen Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00663","gapId":"keymap-item:Curve:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00664","gapId":"keymap-item:Curve:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00665","gapId":"keymap-item:Curve:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00666","gapId":"keymap-item:Curve:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00667","gapId":"keymap-item:Curve:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00668","gapId":"keymap-item:Curve:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00669","gapId":"keymap-item:Curve:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00670","gapId":"keymap-item:Curve:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00671","gapId":"keymap-item:Curve:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00672","gapId":"keymap-item:Curve:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00673","gapId":"keymap-item:Curve:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00674","gapId":"keymap-item:Curve:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00675","gapId":"keymap-item:Curve:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00676","gapId":"keymap-item:Curve:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00677","gapId":"keymap-item:Curve:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00678","gapId":"keymap-item:Curve:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00679","gapId":"keymap-item:Curve:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00680","gapId":"keymap-item:Curve:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00681","gapId":"keymap-item:Curve:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00682","gapId":"keymap-item:Curve:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00683","gapId":"keymap-item:Curve:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00684","gapId":"keymap-item:Curve:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00685","gapId":"keymap-item:Curve:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00686","gapId":"keymap-item:Curve:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00687","gapId":"keymap-item:Curve:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00688","gapId":"keymap-item:Curve:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00689","gapId":"keymap-item:Curve:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00690","gapId":"keymap-item:Curve:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00691","gapId":"keymap-item:Curve:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00692","gapId":"keymap-item:Curve:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00693","gapId":"keymap-item:Curve:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00694","gapId":"keymap-item:Curve:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00695","gapId":"keymap-item:Curve:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00696","gapId":"keymap-item:Curve:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00697","gapId":"keymap-item:Curve:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00698","gapId":"keymap-item:Curve:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00699","gapId":"keymap-item:Curve:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00700","gapId":"keymap-item:Curve:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00701","gapId":"keymap-item:Curve:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00702","gapId":"keymap-item:Curve:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00703","gapId":"keymap-item:Curve:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00704","gapId":"keymap-item:Curve:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00705","gapId":"keymap-item:Curve:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00706","gapId":"keymap-item:Curve:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00707","gapId":"keymap-item:Curve:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00708","gapId":"keymap-item:Curves:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00709","gapId":"keymap-item:Curves:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00710","gapId":"keymap-item:Curves:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00711","gapId":"keymap-item:Curves:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00712","gapId":"keymap-item:Curves:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00713","gapId":"keymap-item:Curves:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00714","gapId":"keymap-item:Curves:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00715","gapId":"keymap-item:Curves:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00716","gapId":"keymap-item:Curves:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00717","gapId":"keymap-item:Curves:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00718","gapId":"keymap-item:Curves:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00719","gapId":"keymap-item:Curves:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00720","gapId":"keymap-item:Curves:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00721","gapId":"keymap-item:Curves:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00722","gapId":"keymap-item:Curves:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00723","gapId":"keymap-item:Curves:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00724","gapId":"keymap-item:Curves:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00725","gapId":"keymap-item:Curves:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00726","gapId":"keymap-item:Curves:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00727","gapId":"keymap-item:Curves:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00728","gapId":"keymap-item:Curves:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00729","gapId":"keymap-item:Curves:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00730","gapId":"keymap-item:Curves:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00731","gapId":"keymap-item:Curves:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00732","gapId":"keymap-item:Curves:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00733","gapId":"keymap-item:Curves:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00734","gapId":"keymap-item:Curves:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00735","gapId":"keymap-item:Curves:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00736","gapId":"keymap-item:Curves:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00737","gapId":"keymap-item:Curves:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00738","gapId":"keymap-item:Curves:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00739","gapId":"keymap-item:Curves:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00740","gapId":"keymap-item:Curves:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00741","gapId":"keymap-item:Curves:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00742","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00743","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00744","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00745","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00746","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00747","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00748","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00749","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00750","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00751","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00752","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00753","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00754","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00755","gapId":"keymap-item:Custom Normals Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00756","gapId":"keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00757","gapId":"keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00758","gapId":"keymap-item:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00759","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00760","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00761","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00762","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00763","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00764","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00765","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00766","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00767","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00768","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00769","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00770","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00771","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00772","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00773","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00774","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00775","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00776","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00777","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00778","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00779","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00780","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00781","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00782","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00783","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00784","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00785","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00786","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00787","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00788","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00789","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00790","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00791","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00792","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00793","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00794","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00795","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00796","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00797","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00798","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00799","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00800","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00801","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00802","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00803","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00804","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00805","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00806","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00807","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00808","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00809","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00810","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00811","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00812","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00813","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00814","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00815","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00816","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00817","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00818","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00819","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00820","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00821","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00822","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00823","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00824","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00825","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00826","gapId":"keymap-item:Dopesheet:DOPESHEET_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00827","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00828","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00829","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00830","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00831","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00832","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00833","gapId":"keymap-item:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00834","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00835","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00836","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00837","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00838","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00839","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00840","gapId":"keymap-item:Eyedropper Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00841","gapId":"keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00842","gapId":"keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00843","gapId":"keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00844","gapId":"keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00845","gapId":"keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00846","gapId":"keymap-item:File Browser Buttons:FILE_BROWSER:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00847","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00848","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00849","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00850","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00851","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00852","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00853","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00854","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00855","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00856","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00857","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00858","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00859","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00860","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00861","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00862","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00863","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00864","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00865","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00866","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00867","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00868","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00869","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00870","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00871","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00872","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00873","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00874","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00875","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00876","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00877","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00878","gapId":"keymap-item:File Browser Main:FILE_BROWSER:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00879","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00880","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00881","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00882","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00883","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00884","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00885","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00886","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00887","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00888","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00889","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00890","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00891","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00892","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00893","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00894","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00895","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00896","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00897","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00898","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00899","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00900","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00901","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00902","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00903","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00904","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00905","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00906","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00907","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00908","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00909","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00910","gapId":"keymap-item:File Browser:FILE_BROWSER:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00911","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00912","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00913","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00914","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00915","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00916","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00917","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00918","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00919","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00920","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00921","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00922","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00923","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00924","gapId":"keymap-item:Fill Tool Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00925","gapId":"keymap-item:Font:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00926","gapId":"keymap-item:Font:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00927","gapId":"keymap-item:Font:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00928","gapId":"keymap-item:Font:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00929","gapId":"keymap-item:Font:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00930","gapId":"keymap-item:Font:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00931","gapId":"keymap-item:Font:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00932","gapId":"keymap-item:Font:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00933","gapId":"keymap-item:Font:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00934","gapId":"keymap-item:Font:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00935","gapId":"keymap-item:Font:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00936","gapId":"keymap-item:Font:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00937","gapId":"keymap-item:Font:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00938","gapId":"keymap-item:Font:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00939","gapId":"keymap-item:Font:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00940","gapId":"keymap-item:Font:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00941","gapId":"keymap-item:Font:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00942","gapId":"keymap-item:Font:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00943","gapId":"keymap-item:Font:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00944","gapId":"keymap-item:Font:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00945","gapId":"keymap-item:Font:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00946","gapId":"keymap-item:Font:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00947","gapId":"keymap-item:Font:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00948","gapId":"keymap-item:Font:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00949","gapId":"keymap-item:Font:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00950","gapId":"keymap-item:Font:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00951","gapId":"keymap-item:Font:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00952","gapId":"keymap-item:Font:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00953","gapId":"keymap-item:Font:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00954","gapId":"keymap-item:Font:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00955","gapId":"keymap-item:Font:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00956","gapId":"keymap-item:Font:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00957","gapId":"keymap-item:Font:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00958","gapId":"keymap-item:Font:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00959","gapId":"keymap-item:Font:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00960","gapId":"keymap-item:Font:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00961","gapId":"keymap-item:Font:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00962","gapId":"keymap-item:Font:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00963","gapId":"keymap-item:Font:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00964","gapId":"keymap-item:Font:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00965","gapId":"keymap-item:Font:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00966","gapId":"keymap-item:Font:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00967","gapId":"keymap-item:Font:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00968","gapId":"keymap-item:Font:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00969","gapId":"keymap-item:Font:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00970","gapId":"keymap-item:Font:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00971","gapId":"keymap-item:Font:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00972","gapId":"keymap-item:Font:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00973","gapId":"keymap-item:Font:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00974","gapId":"keymap-item:Frames:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00975","gapId":"keymap-item:Frames:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00976","gapId":"keymap-item:Frames:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00977","gapId":"keymap-item:Frames:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00978","gapId":"keymap-item:Frames:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00979","gapId":"keymap-item:Frames:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00980","gapId":"keymap-item:Frames:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00981","gapId":"keymap-item:Frames:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00982","gapId":"keymap-item:Frames:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00983","gapId":"keymap-item:Frames:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00984","gapId":"keymap-item:Frames:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00985","gapId":"keymap-item:Frames:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00986","gapId":"keymap-item:Frames:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00987","gapId":"keymap-item:Frames:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00988","gapId":"keymap-item:Frames:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00989","gapId":"keymap-item:Frames:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00990","gapId":"keymap-item:Frames:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00991","gapId":"keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00992","gapId":"keymap-item:Generic Gizmo Click Drag:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00993","gapId":"keymap-item:Generic Gizmo Drag:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00994","gapId":"keymap-item:Generic Gizmo Maybe Drag:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00995","gapId":"keymap-item:Generic Gizmo Select:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00996","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00997","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00998","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-00999","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01000","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01001","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01002","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01003","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01004","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01005","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01006","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01007","gapId":"keymap-item:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01008","gapId":"keymap-item:Generic Gizmo:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01009","gapId":"keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01010","gapId":"keymap-item:Generic Tool: Annotate Eraser:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01011","gapId":"keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01012","gapId":"keymap-item:Generic Tool: Annotate Line:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01013","gapId":"keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01014","gapId":"keymap-item:Generic Tool: Annotate Polygon:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01015","gapId":"keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01016","gapId":"keymap-item:Generic Tool: Annotate:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01017","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01018","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01019","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01020","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01021","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01022","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01023","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01024","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01025","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01026","gapId":"keymap-item:Gesture Box:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01027","gapId":"keymap-item:Gesture Lasso:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01028","gapId":"keymap-item:Gesture Polyline:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01029","gapId":"keymap-item:Gesture Polyline:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01030","gapId":"keymap-item:Gesture Polyline:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01031","gapId":"keymap-item:Gesture Polyline:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01032","gapId":"keymap-item:Gesture Polyline:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01033","gapId":"keymap-item:Gesture Polyline:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01034","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01035","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01036","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01037","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01038","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01039","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01040","gapId":"keymap-item:Gesture Straight Line:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01041","gapId":"keymap-item:Gesture Zoom Border:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01042","gapId":"keymap-item:Gesture Zoom Border:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01043","gapId":"keymap-item:Gesture Zoom Border:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01044","gapId":"keymap-item:Gesture Zoom Border:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01045","gapId":"keymap-item:Gesture Zoom Border:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01046","gapId":"keymap-item:Gesture Zoom Border:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01047","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01048","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01049","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01050","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01051","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01052","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01053","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01054","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01055","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01056","gapId":"keymap-item:Graph Editor Generic:GRAPH_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01057","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01058","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01059","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01060","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01061","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01062","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01063","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01064","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01065","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01066","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01067","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01068","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01069","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01070","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01071","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01072","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01073","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01074","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01075","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01076","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01077","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01078","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01079","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01080","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01081","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01082","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01083","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01084","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01085","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01086","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01087","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01088","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01089","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01090","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01091","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01092","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01093","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01094","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01095","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01096","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01097","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01098","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01099","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01100","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01101","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01102","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01103","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01104","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01105","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01106","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01107","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01108","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01109","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01110","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01111","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01112","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01113","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01114","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01115","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01116","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01117","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01118","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01119","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01120","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01121","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01122","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01123","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01124","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01125","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01126","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01127","gapId":"keymap-item:Graph Editor:GRAPH_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01128","gapId":"keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01129","gapId":"keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01130","gapId":"keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01131","gapId":"keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01132","gapId":"keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01133","gapId":"keymap-item:Grease Pencil Brush Stroke:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01134","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01135","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01136","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01137","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01138","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01139","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01140","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01141","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01142","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01143","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01144","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01145","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01146","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01147","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01148","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01149","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01150","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01151","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01152","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01153","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01154","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01155","gapId":"keymap-item:Grease Pencil Draw Mode:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01156","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01157","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01158","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01159","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01160","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01161","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01162","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01163","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01164","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01165","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01166","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01167","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01168","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01169","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01170","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01171","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01172","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01173","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01174","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01175","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01176","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01177","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01178","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01179","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01180","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01181","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01182","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01183","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01184","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01185","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01186","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01187","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01188","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01189","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01190","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01191","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01192","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01193","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01194","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01195","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01196","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01197","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01198","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01199","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01200","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01201","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01202","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01203","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01204","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01205","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01206","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01207","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01208","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01209","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01210","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01211","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01212","gapId":"keymap-item:Grease Pencil Edit Mode:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01213","gapId":"keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01214","gapId":"keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01215","gapId":"keymap-item:Grease Pencil Fill Tool:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01216","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01217","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01218","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01219","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01220","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01221","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01222","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01223","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01224","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01225","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01226","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01227","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01228","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01229","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01230","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01231","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01232","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01233","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01234","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01235","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01236","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01237","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01238","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01239","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01240","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01241","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01242","gapId":"keymap-item:Grease Pencil Sculpt Mode:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01243","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01244","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01245","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01246","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01247","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01248","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01249","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01250","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01251","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01252","gapId":"keymap-item:Grease Pencil Selection:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01253","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01254","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01255","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01256","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01257","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01258","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01259","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01260","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01261","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01262","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01263","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01264","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01265","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01266","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01267","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01268","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01269","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01270","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01271","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01272","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01273","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01274","gapId":"keymap-item:Grease Pencil Vertex Paint:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01275","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01276","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01277","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01278","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01279","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01280","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01281","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01282","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01283","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01284","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01285","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01286","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01287","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01288","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01289","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01290","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01291","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01292","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01293","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01294","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01295","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01296","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01297","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01298","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01299","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01300","gapId":"keymap-item:Grease Pencil Weight Paint:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01301","gapId":"keymap-item:Grease Pencil:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01302","gapId":"keymap-item:Grease Pencil:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01303","gapId":"keymap-item:Grease Pencil:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01304","gapId":"keymap-item:Grease Pencil:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01305","gapId":"keymap-item:Grease Pencil:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01306","gapId":"keymap-item:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01307","gapId":"keymap-item:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01308","gapId":"keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01309","gapId":"keymap-item:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01310","gapId":"keymap-item:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01311","gapId":"keymap-item:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01312","gapId":"keymap-item:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01313","gapId":"keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01314","gapId":"keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01315","gapId":"keymap-item:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01316","gapId":"keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01317","gapId":"keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01318","gapId":"keymap-item:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01319","gapId":"keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01320","gapId":"keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01321","gapId":"keymap-item:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01322","gapId":"keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01323","gapId":"keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01324","gapId":"keymap-item:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01325","gapId":"keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01326","gapId":"keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01327","gapId":"keymap-item:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01328","gapId":"keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01329","gapId":"keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01330","gapId":"keymap-item:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01331","gapId":"keymap-item:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01332","gapId":"keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01333","gapId":"keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01334","gapId":"keymap-item:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01335","gapId":"keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01336","gapId":"keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01337","gapId":"keymap-item:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01338","gapId":"keymap-item:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01339","gapId":"keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01340","gapId":"keymap-item:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01341","gapId":"keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01342","gapId":"keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01343","gapId":"keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01344","gapId":"keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01345","gapId":"keymap-item:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01346","gapId":"keymap-item:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01347","gapId":"keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01348","gapId":"keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01349","gapId":"keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01350","gapId":"keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01351","gapId":"keymap-item:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01352","gapId":"keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01353","gapId":"keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01354","gapId":"keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01355","gapId":"keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01356","gapId":"keymap-item:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01357","gapId":"keymap-item:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01358","gapId":"keymap-item:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01359","gapId":"keymap-item:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01360","gapId":"keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01361","gapId":"keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01362","gapId":"keymap-item:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01363","gapId":"keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01364","gapId":"keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01365","gapId":"keymap-item:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01366","gapId":"keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01367","gapId":"keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01368","gapId":"keymap-item:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01369","gapId":"keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01370","gapId":"keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01371","gapId":"keymap-item:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01372","gapId":"keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01373","gapId":"keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01374","gapId":"keymap-item:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01375","gapId":"keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01376","gapId":"keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01377","gapId":"keymap-item:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01378","gapId":"keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01379","gapId":"keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01380","gapId":"keymap-item:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01381","gapId":"keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01382","gapId":"keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01383","gapId":"keymap-item:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01384","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01385","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01386","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01387","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01388","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01389","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01390","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01391","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01392","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01393","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01394","gapId":"keymap-item:Image Generic:IMAGE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01395","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01396","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01397","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01398","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01399","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01400","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01401","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01402","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01403","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01404","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01405","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01406","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01407","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01408","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01409","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01410","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01411","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01412","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01413","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01414","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01415","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01416","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01417","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01418","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01419","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01420","gapId":"keymap-item:Image Paint:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01421","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01422","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01423","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01424","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01425","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01426","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01427","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01428","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01429","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01430","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01431","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01432","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01433","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01434","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01435","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01436","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01437","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01438","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01439","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01440","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01441","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01442","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01443","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01444","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01445","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01446","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01447","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01448","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01449","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01450","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01451","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01452","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01453","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01454","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01455","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01456","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01457","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01458","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01459","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01460","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01461","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01462","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01463","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01464","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01465","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01466","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01467","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01468","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01469","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01470","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01471","gapId":"keymap-item:Image:IMAGE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01472","gapId":"keymap-item:Info:INFO:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01473","gapId":"keymap-item:Info:INFO:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01474","gapId":"keymap-item:Info:INFO:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01475","gapId":"keymap-item:Info:INFO:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01476","gapId":"keymap-item:Info:INFO:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01477","gapId":"keymap-item:Info:INFO:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01478","gapId":"keymap-item:Info:INFO:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01479","gapId":"keymap-item:Info:INFO:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01480","gapId":"keymap-item:Info:INFO:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01481","gapId":"keymap-item:Info:INFO:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01482","gapId":"keymap-item:Info:INFO:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01483","gapId":"keymap-item:Info:INFO:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01484","gapId":"keymap-item:Info:INFO:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01485","gapId":"keymap-item:Info:INFO:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01486","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01487","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01488","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01489","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01490","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01491","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01492","gapId":"keymap-item:Interpolate Tool Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01493","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01494","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01495","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01496","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01497","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01498","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01499","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01500","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01501","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01502","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01503","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01504","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01505","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01506","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01507","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01508","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01509","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01510","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01511","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01512","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01513","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01514","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01515","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01516","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01517","gapId":"keymap-item:Knife Tool Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01518","gapId":"keymap-item:Lattice:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01519","gapId":"keymap-item:Lattice:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01520","gapId":"keymap-item:Lattice:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01521","gapId":"keymap-item:Lattice:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01522","gapId":"keymap-item:Lattice:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01523","gapId":"keymap-item:Lattice:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01524","gapId":"keymap-item:Lattice:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01525","gapId":"keymap-item:Lattice:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01526","gapId":"keymap-item:Lattice:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01527","gapId":"keymap-item:Lattice:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01528","gapId":"keymap-item:Lattice:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01529","gapId":"keymap-item:Lattice:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01530","gapId":"keymap-item:Lattice:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01531","gapId":"keymap-item:Lattice:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01532","gapId":"keymap-item:Lattice:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01533","gapId":"keymap-item:Lattice:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01534","gapId":"keymap-item:Lattice:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01535","gapId":"keymap-item:Lattice:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01536","gapId":"keymap-item:Lattice:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01537","gapId":"keymap-item:Lattice:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01538","gapId":"keymap-item:Lattice:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01539","gapId":"keymap-item:Markers:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01540","gapId":"keymap-item:Markers:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01541","gapId":"keymap-item:Markers:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01542","gapId":"keymap-item:Markers:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01543","gapId":"keymap-item:Markers:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01544","gapId":"keymap-item:Markers:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01545","gapId":"keymap-item:Markers:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01546","gapId":"keymap-item:Markers:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01547","gapId":"keymap-item:Markers:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01548","gapId":"keymap-item:Markers:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01549","gapId":"keymap-item:Markers:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01550","gapId":"keymap-item:Markers:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01551","gapId":"keymap-item:Markers:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01552","gapId":"keymap-item:Markers:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01553","gapId":"keymap-item:Markers:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01554","gapId":"keymap-item:Markers:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01555","gapId":"keymap-item:Markers:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01556","gapId":"keymap-item:Markers:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01557","gapId":"keymap-item:Markers:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01558","gapId":"keymap-item:Markers:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01559","gapId":"keymap-item:Markers:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01560","gapId":"keymap-item:Markers:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01561","gapId":"keymap-item:Markers:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01562","gapId":"keymap-item:Markers:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01563","gapId":"keymap-item:Markers:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01564","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01565","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01566","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01567","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01568","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01569","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01570","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01571","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01572","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01573","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01574","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01575","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01576","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01577","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01578","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01579","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01580","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01581","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01582","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01583","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01584","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01585","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01586","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01587","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01588","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01589","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01590","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01591","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01592","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01593","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01594","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01595","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01596","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01597","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01598","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01599","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01600","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01601","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01602","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01603","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01604","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01605","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01606","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01607","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01608","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01609","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01610","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01611","gapId":"keymap-item:Mask Editing:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01612","gapId":"keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01613","gapId":"keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01614","gapId":"keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01615","gapId":"keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01616","gapId":"keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01617","gapId":"keymap-item:Mesh Filter Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01618","gapId":"keymap-item:Mesh:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01619","gapId":"keymap-item:Mesh:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01620","gapId":"keymap-item:Mesh:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01621","gapId":"keymap-item:Mesh:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01622","gapId":"keymap-item:Mesh:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01623","gapId":"keymap-item:Mesh:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01624","gapId":"keymap-item:Mesh:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01625","gapId":"keymap-item:Mesh:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01626","gapId":"keymap-item:Mesh:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01627","gapId":"keymap-item:Mesh:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01628","gapId":"keymap-item:Mesh:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01629","gapId":"keymap-item:Mesh:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01630","gapId":"keymap-item:Mesh:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01631","gapId":"keymap-item:Mesh:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01632","gapId":"keymap-item:Mesh:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01633","gapId":"keymap-item:Mesh:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01634","gapId":"keymap-item:Mesh:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01635","gapId":"keymap-item:Mesh:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01636","gapId":"keymap-item:Mesh:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01637","gapId":"keymap-item:Mesh:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01638","gapId":"keymap-item:Mesh:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01639","gapId":"keymap-item:Mesh:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01640","gapId":"keymap-item:Mesh:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01641","gapId":"keymap-item:Mesh:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01642","gapId":"keymap-item:Mesh:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01643","gapId":"keymap-item:Mesh:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01644","gapId":"keymap-item:Mesh:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01645","gapId":"keymap-item:Mesh:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01646","gapId":"keymap-item:Mesh:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01647","gapId":"keymap-item:Mesh:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01648","gapId":"keymap-item:Mesh:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01649","gapId":"keymap-item:Mesh:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01650","gapId":"keymap-item:Mesh:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01651","gapId":"keymap-item:Mesh:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01652","gapId":"keymap-item:Mesh:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01653","gapId":"keymap-item:Mesh:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01654","gapId":"keymap-item:Mesh:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01655","gapId":"keymap-item:Mesh:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01656","gapId":"keymap-item:Mesh:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01657","gapId":"keymap-item:Mesh:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01658","gapId":"keymap-item:Mesh:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01659","gapId":"keymap-item:Mesh:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01660","gapId":"keymap-item:Mesh:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01661","gapId":"keymap-item:Mesh:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01662","gapId":"keymap-item:Mesh:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01663","gapId":"keymap-item:Mesh:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01664","gapId":"keymap-item:Mesh:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01665","gapId":"keymap-item:Mesh:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01666","gapId":"keymap-item:Mesh:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01667","gapId":"keymap-item:Mesh:EMPTY:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01668","gapId":"keymap-item:Mesh:EMPTY:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01669","gapId":"keymap-item:Mesh:EMPTY:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01670","gapId":"keymap-item:Mesh:EMPTY:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01671","gapId":"keymap-item:Mesh:EMPTY:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01672","gapId":"keymap-item:Mesh:EMPTY:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01673","gapId":"keymap-item:Mesh:EMPTY:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01674","gapId":"keymap-item:Mesh:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01675","gapId":"keymap-item:Mesh:EMPTY:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01676","gapId":"keymap-item:Mesh:EMPTY:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01677","gapId":"keymap-item:Mesh:EMPTY:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01678","gapId":"keymap-item:Mesh:EMPTY:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01679","gapId":"keymap-item:Mesh:EMPTY:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01680","gapId":"keymap-item:Mesh:EMPTY:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01681","gapId":"keymap-item:Mesh:EMPTY:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01682","gapId":"keymap-item:Mesh:EMPTY:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01683","gapId":"keymap-item:Mesh:EMPTY:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01684","gapId":"keymap-item:Mesh:EMPTY:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01685","gapId":"keymap-item:Mesh:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01686","gapId":"keymap-item:Mesh:EMPTY:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01687","gapId":"keymap-item:Mesh:EMPTY:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01688","gapId":"keymap-item:Mesh:EMPTY:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01689","gapId":"keymap-item:Mesh:EMPTY:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01690","gapId":"keymap-item:Mesh:EMPTY:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01691","gapId":"keymap-item:Mesh:EMPTY:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01692","gapId":"keymap-item:Mesh:EMPTY:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01693","gapId":"keymap-item:Mesh:EMPTY:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01694","gapId":"keymap-item:Mesh:EMPTY:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01695","gapId":"keymap-item:Mesh:EMPTY:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01696","gapId":"keymap-item:Mesh:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01697","gapId":"keymap-item:Mesh:EMPTY:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01698","gapId":"keymap-item:Mesh:EMPTY:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01699","gapId":"keymap-item:Mesh:EMPTY:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01700","gapId":"keymap-item:Mesh:EMPTY:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01701","gapId":"keymap-item:Mesh:EMPTY:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01702","gapId":"keymap-item:Mesh:EMPTY:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01703","gapId":"keymap-item:Mesh:EMPTY:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01704","gapId":"keymap-item:Mesh:EMPTY:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01705","gapId":"keymap-item:Mesh:EMPTY:WINDOW:88","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01706","gapId":"keymap-item:Mesh:EMPTY:WINDOW:89","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01707","gapId":"keymap-item:Mesh:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01708","gapId":"keymap-item:Mesh:EMPTY:WINDOW:90","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01709","gapId":"keymap-item:Mesh:EMPTY:WINDOW:91","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01710","gapId":"keymap-item:Mesh:EMPTY:WINDOW:92","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01711","gapId":"keymap-item:Metaball:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01712","gapId":"keymap-item:Metaball:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01713","gapId":"keymap-item:Metaball:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01714","gapId":"keymap-item:Metaball:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01715","gapId":"keymap-item:Metaball:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01716","gapId":"keymap-item:Metaball:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01717","gapId":"keymap-item:Metaball:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01718","gapId":"keymap-item:Metaball:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01719","gapId":"keymap-item:Metaball:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01720","gapId":"keymap-item:Metaball:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01721","gapId":"keymap-item:Metaball:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01722","gapId":"keymap-item:Metaball:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01723","gapId":"keymap-item:Metaball:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01724","gapId":"keymap-item:Metaball:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01725","gapId":"keymap-item:Metaball:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01726","gapId":"keymap-item:Metaball:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01727","gapId":"keymap-item:Metaball:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01728","gapId":"keymap-item:Metaball:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01729","gapId":"keymap-item:Metaball:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01730","gapId":"keymap-item:Metaball:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01731","gapId":"keymap-item:Metaball:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01732","gapId":"keymap-item:Metaball:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01733","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01734","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01735","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01736","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01737","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01738","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01739","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01740","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01741","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01742","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01743","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01744","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01745","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01746","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01747","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01748","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01749","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01750","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01751","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01752","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01753","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01754","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01755","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01756","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01757","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01758","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01759","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01760","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01761","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01762","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01763","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01764","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01765","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01766","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01767","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01768","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01769","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01770","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01771","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01772","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01773","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01774","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01775","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01776","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01777","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01778","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01779","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01780","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01781","gapId":"keymap-item:NLA Editor:NLA_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01782","gapId":"keymap-item:NLA Generic:NLA_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01783","gapId":"keymap-item:NLA Generic:NLA_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01784","gapId":"keymap-item:NLA Generic:NLA_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01785","gapId":"keymap-item:NLA Generic:NLA_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01786","gapId":"keymap-item:NLA Generic:NLA_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01787","gapId":"keymap-item:NLA Generic:NLA_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01788","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01789","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01790","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01791","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01792","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01793","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01794","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01795","gapId":"keymap-item:NLA Tracks:NLA_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01796","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01797","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01798","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01799","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:100","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01800","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:101","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01801","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:102","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01802","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:103","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01803","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01804","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01805","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01806","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01807","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01808","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01809","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01810","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01811","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01812","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01813","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01814","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01815","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01816","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01817","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01818","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01819","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01820","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01821","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01822","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01823","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01824","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01825","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01826","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01827","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01828","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01829","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01830","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01831","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01832","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01833","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01834","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01835","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01836","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01837","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01838","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01839","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01840","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01841","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01842","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01843","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01844","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01845","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01846","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01847","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01848","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01849","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01850","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01851","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01852","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01853","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01854","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01855","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01856","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01857","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01858","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01859","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01860","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01861","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01862","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01863","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01864","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01865","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01866","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01867","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01868","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01869","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01870","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01871","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01872","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01873","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01874","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01875","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01876","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01877","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01878","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01879","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01880","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01881","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01882","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01883","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01884","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01885","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01886","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01887","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:88","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01888","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:89","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01889","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01890","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:90","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01891","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:91","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01892","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:92","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01893","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:93","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01894","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:94","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01895","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:95","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01896","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:96","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01897","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:97","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01898","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:98","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01899","gapId":"keymap-item:Node Editor:NODE_EDITOR:WINDOW:99","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01900","gapId":"keymap-item:Node Generic:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01901","gapId":"keymap-item:Node Generic:NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01902","gapId":"keymap-item:Node Link Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01903","gapId":"keymap-item:Node Link Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01904","gapId":"keymap-item:Node Link Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01905","gapId":"keymap-item:Node Link Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01906","gapId":"keymap-item:Node Link Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01907","gapId":"keymap-item:Node Link Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01908","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01909","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01910","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01911","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01912","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01913","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01914","gapId":"keymap-item:Node Resize Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01915","gapId":"keymap-item:Node Tool: Add Reroute:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01916","gapId":"keymap-item:Node Tool: Links Cut:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01917","gapId":"keymap-item:Node Tool: Mute Links:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01918","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01919","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01920","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01921","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01922","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01923","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01924","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01925","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01926","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01927","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01928","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01929","gapId":"keymap-item:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01930","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01931","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01932","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01933","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01934","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01935","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01936","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01937","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01938","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01939","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01940","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01941","gapId":"keymap-item:Node Tool: Select Box:NODE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01942","gapId":"keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01943","gapId":"keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01944","gapId":"keymap-item:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01945","gapId":"keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01946","gapId":"keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01947","gapId":"keymap-item:Node Tool: Select Circle:NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01948","gapId":"keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01949","gapId":"keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01950","gapId":"keymap-item:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01951","gapId":"keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01952","gapId":"keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01953","gapId":"keymap-item:Node Tool: Select Lasso:NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01954","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01955","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01956","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01957","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01958","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01959","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01960","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01961","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01962","gapId":"keymap-item:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01963","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01964","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01965","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01966","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01967","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01968","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01969","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01970","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01971","gapId":"keymap-item:Node Tool: Tweak:NODE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01972","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01973","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01974","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01975","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01976","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01977","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01978","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01979","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01980","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01981","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01982","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01983","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01984","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01985","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01986","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01987","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01988","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01989","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01990","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01991","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01992","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01993","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01994","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01995","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01996","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01997","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01998","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-01999","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02000","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02001","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02002","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02003","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02004","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02005","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02006","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02007","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02008","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02009","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02010","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02011","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02012","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02013","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02014","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02015","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02016","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02017","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02018","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02019","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02020","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02021","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02022","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02023","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02024","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02025","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02026","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02027","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02028","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02029","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02030","gapId":"keymap-item:Object Mode:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02031","gapId":"keymap-item:Object Non-modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02032","gapId":"keymap-item:Object Non-modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02033","gapId":"keymap-item:Object Non-modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02034","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02035","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02036","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02037","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:100","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02038","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:101","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02039","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:102","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02040","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02041","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02042","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02043","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02044","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02045","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02046","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02047","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02048","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02049","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02050","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02051","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02052","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02053","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02054","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02055","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02056","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02057","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02058","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02059","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02060","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02061","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02062","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02063","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02064","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02065","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02066","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02067","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02068","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02069","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02070","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02071","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02072","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02073","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02074","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02075","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02076","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02077","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02078","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02079","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02080","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02081","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02082","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02083","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02084","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02085","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02086","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02087","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02088","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02089","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02090","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02091","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02092","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02093","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02094","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02095","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02096","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02097","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02098","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02099","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02100","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02101","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02102","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02103","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02104","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02105","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02106","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02107","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02108","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02109","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02110","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02111","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02112","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02113","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02114","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02115","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02116","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02117","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02118","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02119","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02120","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02121","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02122","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02123","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02124","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:88","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02125","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:89","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02126","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02127","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:90","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02128","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:91","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02129","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:92","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02130","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:93","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02131","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:94","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02132","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:95","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02133","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:96","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02134","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:97","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02135","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:98","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02136","gapId":"keymap-item:Outliner:OUTLINER:WINDOW:99","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02137","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02138","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02139","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02140","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02141","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02142","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02143","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02144","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02145","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02146","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02147","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02148","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02149","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02150","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02151","gapId":"keymap-item:Paint Curve:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02152","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02153","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02154","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02155","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02156","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02157","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02158","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02159","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02160","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02161","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02162","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02163","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02164","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02165","gapId":"keymap-item:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02166","gapId":"keymap-item:Paint Stroke Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02167","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02168","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02169","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02170","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02171","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02172","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02173","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02174","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02175","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02176","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02177","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02178","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02179","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02180","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02181","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02182","gapId":"keymap-item:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02183","gapId":"keymap-item:Particle:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02184","gapId":"keymap-item:Particle:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02185","gapId":"keymap-item:Particle:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02186","gapId":"keymap-item:Particle:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02187","gapId":"keymap-item:Particle:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02188","gapId":"keymap-item:Particle:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02189","gapId":"keymap-item:Particle:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02190","gapId":"keymap-item:Particle:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02191","gapId":"keymap-item:Particle:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02192","gapId":"keymap-item:Particle:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02193","gapId":"keymap-item:Particle:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02194","gapId":"keymap-item:Particle:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02195","gapId":"keymap-item:Particle:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02196","gapId":"keymap-item:Particle:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02197","gapId":"keymap-item:Particle:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02198","gapId":"keymap-item:Particle:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02199","gapId":"keymap-item:Particle:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02200","gapId":"keymap-item:Particle:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02201","gapId":"keymap-item:Particle:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02202","gapId":"keymap-item:Particle:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02203","gapId":"keymap-item:Particle:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02204","gapId":"keymap-item:Particle:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02205","gapId":"keymap-item:Particle:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02206","gapId":"keymap-item:Particle:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02207","gapId":"keymap-item:Particle:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02208","gapId":"keymap-item:Particle:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02209","gapId":"keymap-item:Particle:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02210","gapId":"keymap-item:Particle:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02211","gapId":"keymap-item:Particle:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02212","gapId":"keymap-item:Particle:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02213","gapId":"keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02214","gapId":"keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02215","gapId":"keymap-item:Pen Tool Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02216","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02217","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02218","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02219","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02220","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02221","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02222","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02223","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02224","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02225","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02226","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02227","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02228","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02229","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02230","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02231","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02232","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02233","gapId":"keymap-item:Point Cloud:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02234","gapId":"keymap-item:Pose:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02235","gapId":"keymap-item:Pose:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02236","gapId":"keymap-item:Pose:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02237","gapId":"keymap-item:Pose:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02238","gapId":"keymap-item:Pose:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02239","gapId":"keymap-item:Pose:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02240","gapId":"keymap-item:Pose:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02241","gapId":"keymap-item:Pose:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02242","gapId":"keymap-item:Pose:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02243","gapId":"keymap-item:Pose:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02244","gapId":"keymap-item:Pose:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02245","gapId":"keymap-item:Pose:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02246","gapId":"keymap-item:Pose:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02247","gapId":"keymap-item:Pose:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02248","gapId":"keymap-item:Pose:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02249","gapId":"keymap-item:Pose:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02250","gapId":"keymap-item:Pose:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02251","gapId":"keymap-item:Pose:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02252","gapId":"keymap-item:Pose:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02253","gapId":"keymap-item:Pose:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02254","gapId":"keymap-item:Pose:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02255","gapId":"keymap-item:Pose:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02256","gapId":"keymap-item:Pose:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02257","gapId":"keymap-item:Pose:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02258","gapId":"keymap-item:Pose:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02259","gapId":"keymap-item:Pose:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02260","gapId":"keymap-item:Pose:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02261","gapId":"keymap-item:Pose:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02262","gapId":"keymap-item:Pose:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02263","gapId":"keymap-item:Pose:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02264","gapId":"keymap-item:Pose:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02265","gapId":"keymap-item:Pose:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02266","gapId":"keymap-item:Pose:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02267","gapId":"keymap-item:Pose:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02268","gapId":"keymap-item:Pose:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02269","gapId":"keymap-item:Pose:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02270","gapId":"keymap-item:Pose:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02271","gapId":"keymap-item:Pose:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02272","gapId":"keymap-item:Pose:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02273","gapId":"keymap-item:Pose:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02274","gapId":"keymap-item:Pose:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02275","gapId":"keymap-item:Pose:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02276","gapId":"keymap-item:Pose:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02277","gapId":"keymap-item:Pose:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02278","gapId":"keymap-item:Pose:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02279","gapId":"keymap-item:Pose:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02280","gapId":"keymap-item:Pose:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02281","gapId":"keymap-item:Pose:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02282","gapId":"keymap-item:Pose:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02283","gapId":"keymap-item:Pose:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02284","gapId":"keymap-item:Pose:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02285","gapId":"keymap-item:Pose:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02286","gapId":"keymap-item:Pose:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02287","gapId":"keymap-item:Preferences:PREFERENCES:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02288","gapId":"keymap-item:Preferences:PREFERENCES:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02289","gapId":"keymap-item:Preferences_nav:PREFERENCES:UI:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02290","gapId":"keymap-item:Preferences_nav:PREFERENCES:UI:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02291","gapId":"keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02292","gapId":"keymap-item:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02293","gapId":"keymap-item:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02294","gapId":"keymap-item:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02295","gapId":"keymap-item:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02296","gapId":"keymap-item:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02297","gapId":"keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02298","gapId":"keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02299","gapId":"keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02300","gapId":"keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02301","gapId":"keymap-item:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02302","gapId":"keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02303","gapId":"keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02304","gapId":"keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02305","gapId":"keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02306","gapId":"keymap-item:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02307","gapId":"keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02308","gapId":"keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02309","gapId":"keymap-item:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02310","gapId":"keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02311","gapId":"keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02312","gapId":"keymap-item:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02313","gapId":"keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02314","gapId":"keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02315","gapId":"keymap-item:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02316","gapId":"keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02317","gapId":"keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02318","gapId":"keymap-item:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02319","gapId":"keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02320","gapId":"keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02321","gapId":"keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02322","gapId":"keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02323","gapId":"keymap-item:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02324","gapId":"keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02325","gapId":"keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02326","gapId":"keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02327","gapId":"keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02328","gapId":"keymap-item:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02329","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02330","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02331","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02332","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02333","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02334","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02335","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02336","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02337","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02338","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02339","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02340","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02341","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02342","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02343","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02344","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02345","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02346","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02347","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02348","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02349","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02350","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02351","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02352","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02353","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02354","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02355","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02356","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02357","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02358","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02359","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02360","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02361","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02362","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02363","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02364","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02365","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02366","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02367","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02368","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02369","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02370","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02371","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02372","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02373","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02374","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02375","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02376","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02377","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02378","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02379","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02380","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02381","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02382","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02383","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02384","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02385","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02386","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02387","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02388","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02389","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02390","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02391","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02392","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02393","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02394","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02395","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02396","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02397","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02398","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02399","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02400","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02401","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02402","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02403","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02404","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02405","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02406","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02407","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02408","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02409","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02410","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02411","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02412","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02413","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02414","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02415","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02416","gapId":"keymap-item:Preview:SEQUENCE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02417","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02418","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02419","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02420","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02421","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02422","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02423","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02424","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02425","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02426","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02427","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02428","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02429","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02430","gapId":"keymap-item:Primitive Tool Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02431","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02432","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02433","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02434","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02435","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02436","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02437","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02438","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02439","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02440","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02441","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02442","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02443","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02444","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02445","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02446","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02447","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02448","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02449","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02450","gapId":"keymap-item:Property Editor:PROPERTIES:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02451","gapId":"keymap-item:Region Context Menu:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02452","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02453","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02454","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02455","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02456","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02457","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02458","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02459","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02460","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02461","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02462","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02463","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02464","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02465","gapId":"keymap-item:Screen Editing:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02466","gapId":"keymap-item:Screen:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02467","gapId":"keymap-item:Screen:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02468","gapId":"keymap-item:Screen:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02469","gapId":"keymap-item:Screen:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02470","gapId":"keymap-item:Screen:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02471","gapId":"keymap-item:Screen:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02472","gapId":"keymap-item:Screen:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02473","gapId":"keymap-item:Screen:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02474","gapId":"keymap-item:Screen:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02475","gapId":"keymap-item:Screen:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02476","gapId":"keymap-item:Screen:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02477","gapId":"keymap-item:Screen:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02478","gapId":"keymap-item:Screen:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02479","gapId":"keymap-item:Screen:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02480","gapId":"keymap-item:Screen:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02481","gapId":"keymap-item:Screen:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02482","gapId":"keymap-item:Screen:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02483","gapId":"keymap-item:Screen:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02484","gapId":"keymap-item:Screen:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02485","gapId":"keymap-item:Screen:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02486","gapId":"keymap-item:Screen:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02487","gapId":"keymap-item:Screen:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02488","gapId":"keymap-item:Screen:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02489","gapId":"keymap-item:Screen:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02490","gapId":"keymap-item:Screen:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02491","gapId":"keymap-item:Screen:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02492","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02493","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02494","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02495","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02496","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02497","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02498","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02499","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02500","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02501","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02502","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02503","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02504","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02505","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02506","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02507","gapId":"keymap-item:Sculpt Curves:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02508","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02509","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02510","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02511","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02512","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02513","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02514","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02515","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02516","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02517","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02518","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02519","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02520","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02521","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02522","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02523","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02524","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02525","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02526","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02527","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02528","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02529","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02530","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02531","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02532","gapId":"keymap-item:Sculpt Expand Modal:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02533","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02534","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02535","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02536","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02537","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02538","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02539","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02540","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02541","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02542","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02543","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02544","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02545","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02546","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02547","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02548","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02549","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02550","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02551","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02552","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02553","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02554","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02555","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02556","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02557","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02558","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02559","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02560","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02561","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02562","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02563","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02564","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02565","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02566","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02567","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02568","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02569","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02570","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02571","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02572","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02573","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02574","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02575","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02576","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02577","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02578","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02579","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02580","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02581","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02582","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02583","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02584","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02585","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02586","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02587","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02588","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02589","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02590","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02591","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02592","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02593","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02594","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02595","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02596","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02597","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02598","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02599","gapId":"keymap-item:Sculpt:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02600","gapId":"keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02601","gapId":"keymap-item:Sequencer Channels:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02602","gapId":"keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02603","gapId":"keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02604","gapId":"keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02605","gapId":"keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02606","gapId":"keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02607","gapId":"keymap-item:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02608","gapId":"keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02609","gapId":"keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02610","gapId":"keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02611","gapId":"keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02612","gapId":"keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02613","gapId":"keymap-item:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02614","gapId":"keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02615","gapId":"keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02616","gapId":"keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02617","gapId":"keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02618","gapId":"keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02619","gapId":"keymap-item:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02620","gapId":"keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02621","gapId":"keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02622","gapId":"keymap-item:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02623","gapId":"keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02624","gapId":"keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02625","gapId":"keymap-item:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02626","gapId":"keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02627","gapId":"keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02628","gapId":"keymap-item:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02629","gapId":"keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02630","gapId":"keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02631","gapId":"keymap-item:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02632","gapId":"keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02633","gapId":"keymap-item:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02634","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02635","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02636","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02637","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02638","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02639","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02640","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02641","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02642","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02643","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02644","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02645","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02646","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02647","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02648","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02649","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02650","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02651","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02652","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02653","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02654","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02655","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02656","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02657","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02658","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02659","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02660","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02661","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02662","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02663","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02664","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02665","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02666","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02667","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02668","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02669","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02670","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02671","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02672","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02673","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02674","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02675","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02676","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02677","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02678","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02679","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02680","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02681","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02682","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02683","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02684","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02685","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02686","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02687","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02688","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02689","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02690","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02691","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02692","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02693","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02694","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02695","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02696","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02697","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02698","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02699","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02700","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02701","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02702","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02703","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02704","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02705","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02706","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02707","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02708","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02709","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02710","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02711","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02712","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02713","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02714","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02715","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02716","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02717","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02718","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02719","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02720","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02721","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:88","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02722","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:89","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02723","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02724","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:90","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02725","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:91","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02726","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:92","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02727","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:93","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02728","gapId":"keymap-item:Sequencer:SEQUENCE_EDITOR:WINDOW:94","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02729","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02730","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02731","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02732","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02733","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02734","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02735","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02736","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02737","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02738","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02739","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02740","gapId":"keymap-item:Slip Modal:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02741","gapId":"keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02742","gapId":"keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02743","gapId":"keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02744","gapId":"keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02745","gapId":"keymap-item:Spreadsheet Generic:SPREADSHEET:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02746","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02747","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02748","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02749","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02750","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02751","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02752","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02753","gapId":"keymap-item:Standard Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02754","gapId":"keymap-item:Text Generic:TEXT_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02755","gapId":"keymap-item:Text Generic:TEXT_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02756","gapId":"keymap-item:Text Generic:TEXT_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02757","gapId":"keymap-item:Text Generic:TEXT_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02758","gapId":"keymap-item:Text Generic:TEXT_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02759","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02760","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02761","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02762","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02763","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02764","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02765","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02766","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02767","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02768","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02769","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02770","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02771","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02772","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02773","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02774","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02775","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02776","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02777","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02778","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02779","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02780","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02781","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02782","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02783","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02784","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02785","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02786","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02787","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02788","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02789","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02790","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02791","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02792","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02793","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02794","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02795","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02796","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02797","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02798","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02799","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02800","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02801","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02802","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02803","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02804","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02805","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02806","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02807","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02808","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02809","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02810","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02811","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02812","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02813","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02814","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02815","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02816","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02817","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02818","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02819","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02820","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02821","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02822","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02823","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02824","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02825","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02826","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02827","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02828","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02829","gapId":"keymap-item:Text:TEXT_EDITOR:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02830","gapId":"keymap-item:Time Scrub:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02831","gapId":"keymap-item:Toolbar Popup:EMPTY:TEMPORARY:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02832","gapId":"keymap-item:Toolbar Popup:EMPTY:TEMPORARY:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02833","gapId":"keymap-item:Toolbar Popup:EMPTY:TEMPORARY:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02834","gapId":"keymap-item:Toolbar Popup:EMPTY:TEMPORARY:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02835","gapId":"keymap-item:Toolbar Popup:EMPTY:TEMPORARY:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02836","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02837","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02838","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02839","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02840","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02841","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02842","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02843","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02844","gapId":"keymap-item:Transform Axis Target Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02845","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02846","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02847","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02848","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02849","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02850","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02851","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02852","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02853","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02854","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02855","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02856","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02857","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02858","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02859","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02860","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02861","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02862","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02863","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02864","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02865","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02866","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02867","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02868","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02869","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02870","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02871","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02872","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02873","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02874","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02875","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02876","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02877","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02878","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02879","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02880","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02881","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02882","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02883","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02884","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02885","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02886","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02887","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02888","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02889","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02890","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02891","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02892","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02893","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02894","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02895","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02896","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02897","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02898","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02899","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02900","gapId":"keymap-item:Transform Modal Map:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02901","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02902","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02903","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02904","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02905","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02906","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02907","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02908","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02909","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02910","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02911","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02912","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02913","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02914","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02915","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02916","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02917","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02918","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02919","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02920","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02921","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02922","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02923","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02924","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02925","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02926","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02927","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02928","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02929","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02930","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02931","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02932","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02933","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02934","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02935","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02936","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02937","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02938","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02939","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02940","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02941","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02942","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02943","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02944","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02945","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02946","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02947","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:50","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02948","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:51","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02949","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:52","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02950","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:53","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02951","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:54","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02952","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:55","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02953","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:56","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02954","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:57","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02955","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:58","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02956","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:59","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02957","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02958","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:60","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02959","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:61","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02960","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:62","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02961","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:63","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02962","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:64","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02963","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:65","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02964","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:66","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02965","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:67","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02966","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:68","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02967","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:69","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02968","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02969","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:70","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02970","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:71","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02971","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:72","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02972","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:73","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02973","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:74","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02974","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:75","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02975","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:76","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02976","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:77","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02977","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:78","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02978","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:79","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02979","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02980","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:80","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02981","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:81","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02982","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:82","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02983","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:83","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02984","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:84","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02985","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:85","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02986","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:86","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02987","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:87","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02988","gapId":"keymap-item:UV Editor:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02989","gapId":"keymap-item:User Interface:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02990","gapId":"keymap-item:User Interface:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02991","gapId":"keymap-item:User Interface:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02992","gapId":"keymap-item:User Interface:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02993","gapId":"keymap-item:User Interface:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02994","gapId":"keymap-item:User Interface:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02995","gapId":"keymap-item:User Interface:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02996","gapId":"keymap-item:User Interface:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02997","gapId":"keymap-item:User Interface:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02998","gapId":"keymap-item:User Interface:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-02999","gapId":"keymap-item:User Interface:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03000","gapId":"keymap-item:User Interface:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03001","gapId":"keymap-item:User Interface:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03002","gapId":"keymap-item:User Interface:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03003","gapId":"keymap-item:User Interface:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03004","gapId":"keymap-item:User Interface:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03005","gapId":"keymap-item:User Interface:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03006","gapId":"keymap-item:User Interface:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03007","gapId":"keymap-item:User Interface:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03008","gapId":"keymap-item:User Interface:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03009","gapId":"keymap-item:User Interface:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03010","gapId":"keymap-item:User Interface:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03011","gapId":"keymap-item:User Interface:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03012","gapId":"keymap-item:User Interface:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03013","gapId":"keymap-item:User Interface:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03014","gapId":"keymap-item:User Interface:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03015","gapId":"keymap-item:User Interface:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03016","gapId":"keymap-item:User Interface:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03017","gapId":"keymap-item:User Interface:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03018","gapId":"keymap-item:User Interface:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03019","gapId":"keymap-item:User Interface:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03020","gapId":"keymap-item:User Interface:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03021","gapId":"keymap-item:User Interface:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03022","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03023","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03024","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03025","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03026","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03027","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03028","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03029","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03030","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03031","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03032","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03033","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03034","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03035","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03036","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03037","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03038","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03039","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03040","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03041","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03042","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03043","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03044","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03045","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03046","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03047","gapId":"keymap-item:Vertex Paint:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03048","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03049","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03050","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03051","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03052","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03053","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03054","gapId":"keymap-item:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03055","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03056","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03057","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03058","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03059","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03060","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03061","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03062","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03063","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03064","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03065","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03066","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03067","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03068","gapId":"keymap-item:View2D Buttons List:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03069","gapId":"keymap-item:View2D:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03070","gapId":"keymap-item:View2D:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03071","gapId":"keymap-item:View2D:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03072","gapId":"keymap-item:View2D:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03073","gapId":"keymap-item:View2D:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03074","gapId":"keymap-item:View2D:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03075","gapId":"keymap-item:View2D:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03076","gapId":"keymap-item:View2D:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03077","gapId":"keymap-item:View2D:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03078","gapId":"keymap-item:View2D:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03079","gapId":"keymap-item:View2D:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03080","gapId":"keymap-item:View2D:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03081","gapId":"keymap-item:View2D:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03082","gapId":"keymap-item:View2D:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03083","gapId":"keymap-item:View2D:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03084","gapId":"keymap-item:View2D:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03085","gapId":"keymap-item:View2D:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03086","gapId":"keymap-item:View2D:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03087","gapId":"keymap-item:View2D:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03088","gapId":"keymap-item:View2D:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03089","gapId":"keymap-item:View2D:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03090","gapId":"keymap-item:View2D:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03091","gapId":"keymap-item:View2D:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03092","gapId":"keymap-item:View2D:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03093","gapId":"keymap-item:View2D:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03094","gapId":"keymap-item:View3D Dolly Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03095","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03096","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03097","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03098","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03099","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03100","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03101","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03102","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03103","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03104","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03105","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03106","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03107","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03108","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03109","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03110","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03111","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03112","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03113","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03114","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03115","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03116","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03117","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03118","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03119","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03120","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03121","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03122","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03123","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03124","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03125","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03126","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03127","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03128","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03129","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03130","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03131","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03132","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03133","gapId":"keymap-item:View3D Fly Modal:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03134","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03135","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03136","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03137","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03138","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03139","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03140","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03141","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03142","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03143","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03144","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03145","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03146","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03147","gapId":"keymap-item:View3D Gesture Circle:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03148","gapId":"keymap-item:View3D Move Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03149","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03150","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03151","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03152","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03153","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03154","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03155","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03156","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03157","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03158","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03159","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03160","gapId":"keymap-item:View3D Placement Modal:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03161","gapId":"keymap-item:View3D Rotate Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03162","gapId":"keymap-item:View3D Rotate Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03163","gapId":"keymap-item:View3D Rotate Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03164","gapId":"keymap-item:View3D Rotate Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03165","gapId":"keymap-item:View3D Rotate Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03166","gapId":"keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03167","gapId":"keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03168","gapId":"keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03169","gapId":"keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03170","gapId":"keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03171","gapId":"keymap-item:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03172","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03173","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03174","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03175","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03176","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03177","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03178","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03179","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03180","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03181","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03182","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03183","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03184","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03185","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03186","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03187","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03188","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03189","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03190","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03191","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03192","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03193","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03194","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03195","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03196","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03197","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03198","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03199","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:33","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03200","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:34","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03201","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:35","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03202","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:36","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03203","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:37","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03204","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:38","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03205","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:39","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03206","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03207","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:40","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03208","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:41","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03209","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:42","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03210","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:43","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03211","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:44","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03212","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:45","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03213","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:46","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03214","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:47","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03215","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:48","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03216","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:49","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03217","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03218","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03219","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03220","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03221","gapId":"keymap-item:View3D Walk Modal:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03222","gapId":"keymap-item:View3D Zoom Modal:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03223","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03224","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03225","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03226","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03227","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03228","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03229","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03230","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03231","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03232","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03233","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03234","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03235","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03236","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03237","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03238","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03239","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03240","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03241","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03242","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03243","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03244","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03245","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03246","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03247","gapId":"keymap-item:Weight Paint:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03248","gapId":"keymap-item:Window:EMPTY:WINDOW:0","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03249","gapId":"keymap-item:Window:EMPTY:WINDOW:1","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03250","gapId":"keymap-item:Window:EMPTY:WINDOW:10","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03251","gapId":"keymap-item:Window:EMPTY:WINDOW:11","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03252","gapId":"keymap-item:Window:EMPTY:WINDOW:12","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03253","gapId":"keymap-item:Window:EMPTY:WINDOW:13","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03254","gapId":"keymap-item:Window:EMPTY:WINDOW:14","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03255","gapId":"keymap-item:Window:EMPTY:WINDOW:15","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03256","gapId":"keymap-item:Window:EMPTY:WINDOW:16","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03257","gapId":"keymap-item:Window:EMPTY:WINDOW:17","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03258","gapId":"keymap-item:Window:EMPTY:WINDOW:18","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03259","gapId":"keymap-item:Window:EMPTY:WINDOW:19","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03260","gapId":"keymap-item:Window:EMPTY:WINDOW:2","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03261","gapId":"keymap-item:Window:EMPTY:WINDOW:20","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03262","gapId":"keymap-item:Window:EMPTY:WINDOW:21","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03263","gapId":"keymap-item:Window:EMPTY:WINDOW:22","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03264","gapId":"keymap-item:Window:EMPTY:WINDOW:23","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03265","gapId":"keymap-item:Window:EMPTY:WINDOW:24","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03266","gapId":"keymap-item:Window:EMPTY:WINDOW:25","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03267","gapId":"keymap-item:Window:EMPTY:WINDOW:26","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03268","gapId":"keymap-item:Window:EMPTY:WINDOW:27","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03269","gapId":"keymap-item:Window:EMPTY:WINDOW:28","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03270","gapId":"keymap-item:Window:EMPTY:WINDOW:29","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03271","gapId":"keymap-item:Window:EMPTY:WINDOW:3","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03272","gapId":"keymap-item:Window:EMPTY:WINDOW:30","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03273","gapId":"keymap-item:Window:EMPTY:WINDOW:31","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03274","gapId":"keymap-item:Window:EMPTY:WINDOW:32","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03275","gapId":"keymap-item:Window:EMPTY:WINDOW:4","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03276","gapId":"keymap-item:Window:EMPTY:WINDOW:5","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03277","gapId":"keymap-item:Window:EMPTY:WINDOW:6","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03278","gapId":"keymap-item:Window:EMPTY:WINDOW:7","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03279","gapId":"keymap-item:Window:EMPTY:WINDOW:8","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03280","gapId":"keymap-item:Window:EMPTY:WINDOW:9","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03281","gapId":"keymap:3D View Generic:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03282","gapId":"keymap:3D View Tool: Bend:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03283","gapId":"keymap:3D View Tool: Breakdowner:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03284","gapId":"keymap:3D View Tool: Cursor:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03285","gapId":"keymap:3D View Tool: Edit Armature, B-Bone Size:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03286","gapId":"keymap:3D View Tool: Edit Armature, Bone Envelope:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03287","gapId":"keymap:3D View Tool: Edit Armature, Extrude to Cursor:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03288","gapId":"keymap:3D View Tool: Edit Armature, Extrude:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03289","gapId":"keymap:3D View Tool: Edit Armature, Roll:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03290","gapId":"keymap:3D View Tool: Edit Curve, Curve Pen:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03291","gapId":"keymap:3D View Tool: Edit Curve, Draw:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03292","gapId":"keymap:3D View Tool: Edit Curve, Extrude to Cursor:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03293","gapId":"keymap:3D View Tool: Edit Curve, Extrude:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03294","gapId":"keymap:3D View Tool: Edit Curve, Radius:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03295","gapId":"keymap:3D View Tool: Edit Curve, Randomize:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03296","gapId":"keymap:3D View Tool: Edit Curve, Tilt:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03297","gapId":"keymap:3D View Tool: Edit Curves, Draw:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03298","gapId":"keymap:3D View Tool: Edit Curves, Pen:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03299","gapId":"keymap:3D View Tool: Edit Grease Pencil, Gradient:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03300","gapId":"keymap:3D View Tool: Edit Grease Pencil, Interpolate:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03301","gapId":"keymap:3D View Tool: Edit Grease Pencil, Pen:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03302","gapId":"keymap:3D View Tool: Edit Mesh, Bevel:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03303","gapId":"keymap:3D View Tool: Edit Mesh, Bisect:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03304","gapId":"keymap:3D View Tool: Edit Mesh, Edge Slide:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03305","gapId":"keymap:3D View Tool: Edit Mesh, Extrude Along Normals:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03306","gapId":"keymap:3D View Tool: Edit Mesh, Extrude Individual:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03307","gapId":"keymap:3D View Tool: Edit Mesh, Extrude Manifold:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03308","gapId":"keymap:3D View Tool: Edit Mesh, Extrude Region:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03309","gapId":"keymap:3D View Tool: Edit Mesh, Extrude to Cursor:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03310","gapId":"keymap:3D View Tool: Edit Mesh, Inset Faces:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03311","gapId":"keymap:3D View Tool: Edit Mesh, Knife:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03312","gapId":"keymap:3D View Tool: Edit Mesh, Loop Cut:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03313","gapId":"keymap:3D View Tool: Edit Mesh, Offset Edge Loop Cut:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03314","gapId":"keymap:3D View Tool: Edit Mesh, Poly Build:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03315","gapId":"keymap:3D View Tool: Edit Mesh, Push/Pull:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03316","gapId":"keymap:3D View Tool: Edit Mesh, Randomize:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03317","gapId":"keymap:3D View Tool: Edit Mesh, Rip Edge:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03318","gapId":"keymap:3D View Tool: Edit Mesh, Rip Region:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03319","gapId":"keymap:3D View Tool: Edit Mesh, Shrink/Fatten:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03320","gapId":"keymap:3D View Tool: Edit Mesh, Smooth:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03321","gapId":"keymap:3D View Tool: Edit Mesh, Spin Duplicates:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03322","gapId":"keymap:3D View Tool: Edit Mesh, Spin:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03323","gapId":"keymap:3D View Tool: Edit Mesh, To Sphere:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03324","gapId":"keymap:3D View Tool: Edit Mesh, Vertex Slide:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03325","gapId":"keymap:3D View Tool: Edit Text, Select Text:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03326","gapId":"keymap:3D View Tool: Measure:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03327","gapId":"keymap:3D View Tool: Move:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03328","gapId":"keymap:3D View Tool: Object, Add Primitive:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03329","gapId":"keymap:3D View Tool: Paint Grease Pencil, Arc:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03330","gapId":"keymap:3D View Tool: Paint Grease Pencil, Box:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03331","gapId":"keymap:3D View Tool: Paint Grease Pencil, Circle:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03332","gapId":"keymap:3D View Tool: Paint Grease Pencil, Curve:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03333","gapId":"keymap:3D View Tool: Paint Grease Pencil, Eyedropper:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03334","gapId":"keymap:3D View Tool: Paint Grease Pencil, Interpolate:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03335","gapId":"keymap:3D View Tool: Paint Grease Pencil, Line:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03336","gapId":"keymap:3D View Tool: Paint Grease Pencil, Polyline:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03337","gapId":"keymap:3D View Tool: Paint Grease Pencil, Trim:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03338","gapId":"keymap:3D View Tool: Paint Weight, Gradient:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03339","gapId":"keymap:3D View Tool: Paint Weight, Sample Vertex Group:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03340","gapId":"keymap:3D View Tool: Paint Weight, Sample Weight:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03341","gapId":"keymap:3D View Tool: Push:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03342","gapId":"keymap:3D View Tool: Relax:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03343","gapId":"keymap:3D View Tool: Rotate:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03344","gapId":"keymap:3D View Tool: Scale:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03345","gapId":"keymap:3D View Tool: Sculpt, Box Face Set:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03346","gapId":"keymap:3D View Tool: Sculpt, Box Hide:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03347","gapId":"keymap:3D View Tool: Sculpt, Box Mask:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03348","gapId":"keymap:3D View Tool: Sculpt, Box Trim:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03349","gapId":"keymap:3D View Tool: Sculpt, Cloth Filter:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03350","gapId":"keymap:3D View Tool: Sculpt, Color Filter:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03351","gapId":"keymap:3D View Tool: Sculpt, Face Set Edit:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03352","gapId":"keymap:3D View Tool: Sculpt, Lasso Face Set:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03353","gapId":"keymap:3D View Tool: Sculpt, Lasso Hide:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03354","gapId":"keymap:3D View Tool: Sculpt, Lasso Mask:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03355","gapId":"keymap:3D View Tool: Sculpt, Lasso Trim:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03356","gapId":"keymap:3D View Tool: Sculpt, Line Face Set:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03357","gapId":"keymap:3D View Tool: Sculpt, Line Hide:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03358","gapId":"keymap:3D View Tool: Sculpt, Line Mask:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03359","gapId":"keymap:3D View Tool: Sculpt, Line Project:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03360","gapId":"keymap:3D View Tool: Sculpt, Line Trim:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03361","gapId":"keymap:3D View Tool: Sculpt, Mask by Color:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03362","gapId":"keymap:3D View Tool: Sculpt, Mesh Filter:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03363","gapId":"keymap:3D View Tool: Sculpt, Polyline Face Set:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03364","gapId":"keymap:3D View Tool: Sculpt, Polyline Hide:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03365","gapId":"keymap:3D View Tool: Sculpt, Polyline Mask:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03366","gapId":"keymap:3D View Tool: Sculpt, Polyline Trim:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03367","gapId":"keymap:3D View Tool: Select Box (fallback):VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03368","gapId":"keymap:3D View Tool: Select Box:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03369","gapId":"keymap:3D View Tool: Select Circle (fallback):VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03370","gapId":"keymap:3D View Tool: Select Circle:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03371","gapId":"keymap:3D View Tool: Select Lasso (fallback):VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03372","gapId":"keymap:3D View Tool: Select Lasso:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03373","gapId":"keymap:3D View Tool: Shear:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03374","gapId":"keymap:3D View Tool: Transform:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03375","gapId":"keymap:3D View Tool: Tweak (fallback):VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03376","gapId":"keymap:3D View Tool: Tweak:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03377","gapId":"keymap:3D View:VIEW_3D:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03378","gapId":"keymap:Animation Channels:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03379","gapId":"keymap:Animation:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03380","gapId":"keymap:Armature:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03381","gapId":"keymap:Bevel Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03382","gapId":"keymap:Clip Dopesheet Editor:CLIP_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03383","gapId":"keymap:Clip Editor:CLIP_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03384","gapId":"keymap:Clip Graph Editor:CLIP_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03385","gapId":"keymap:Clip Time Scrub:CLIP_EDITOR:PREVIEW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03386","gapId":"keymap:Clip:CLIP_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03387","gapId":"keymap:Console:CONSOLE:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03388","gapId":"keymap:Curve Pen Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03389","gapId":"keymap:Curve:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03390","gapId":"keymap:Curves:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03391","gapId":"keymap:Custom Normals Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03392","gapId":"keymap:Dopesheet Generic:DOPESHEET_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03393","gapId":"keymap:Dopesheet:DOPESHEET_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03394","gapId":"keymap:Eyedropper ColorRamp PointSampling Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03395","gapId":"keymap:Eyedropper Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03396","gapId":"keymap:File Browser Buttons:FILE_BROWSER:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03397","gapId":"keymap:File Browser Main:FILE_BROWSER:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03398","gapId":"keymap:File Browser:FILE_BROWSER:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03399","gapId":"keymap:Fill Tool Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03400","gapId":"keymap:Font:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03401","gapId":"keymap:Frames:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03402","gapId":"keymap:Generic Gizmo Click Drag:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03403","gapId":"keymap:Generic Gizmo Drag:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03404","gapId":"keymap:Generic Gizmo Maybe Drag:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03405","gapId":"keymap:Generic Gizmo Select:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03406","gapId":"keymap:Generic Gizmo Tweak Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03407","gapId":"keymap:Generic Gizmo:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03408","gapId":"keymap:Generic Tool: Annotate Eraser:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03409","gapId":"keymap:Generic Tool: Annotate Line:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03410","gapId":"keymap:Generic Tool: Annotate Polygon:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03411","gapId":"keymap:Generic Tool: Annotate:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03412","gapId":"keymap:Gesture Box:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03413","gapId":"keymap:Gesture Lasso:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03414","gapId":"keymap:Gesture Polyline:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03415","gapId":"keymap:Gesture Straight Line:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03416","gapId":"keymap:Gesture Zoom Border:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03417","gapId":"keymap:Graph Editor Generic:GRAPH_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03418","gapId":"keymap:Graph Editor:GRAPH_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03419","gapId":"keymap:Grease Pencil Brush Stroke:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03420","gapId":"keymap:Grease Pencil Draw Mode:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03421","gapId":"keymap:Grease Pencil Edit Mode:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03422","gapId":"keymap:Grease Pencil Fill Tool:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03423","gapId":"keymap:Grease Pencil Sculpt Mode:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03424","gapId":"keymap:Grease Pencil Selection:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03425","gapId":"keymap:Grease Pencil Vertex Paint:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03426","gapId":"keymap:Grease Pencil Weight Paint:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03427","gapId":"keymap:Grease Pencil:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03428","gapId":"keymap:Image Editor Tool: Mask, Box:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03429","gapId":"keymap:Image Editor Tool: Mask, Circle:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03430","gapId":"keymap:Image Editor Tool: Mask, Cursor:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03431","gapId":"keymap:Image Editor Tool: Mask, Move:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03432","gapId":"keymap:Image Editor Tool: Mask, Rotate:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03433","gapId":"keymap:Image Editor Tool: Mask, Scale:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03434","gapId":"keymap:Image Editor Tool: Mask, Select Box (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03435","gapId":"keymap:Image Editor Tool: Mask, Select Box:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03436","gapId":"keymap:Image Editor Tool: Mask, Select Circle (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03437","gapId":"keymap:Image Editor Tool: Mask, Select Circle:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03438","gapId":"keymap:Image Editor Tool: Mask, Select Lasso (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03439","gapId":"keymap:Image Editor Tool: Mask, Select Lasso:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03440","gapId":"keymap:Image Editor Tool: Mask, Transform:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03441","gapId":"keymap:Image Editor Tool: Mask, Tweak (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03442","gapId":"keymap:Image Editor Tool: Mask, Tweak:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03443","gapId":"keymap:Image Editor Tool: Sample:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03444","gapId":"keymap:Image Editor Tool: Uv, Cursor:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03445","gapId":"keymap:Image Editor Tool: Uv, Grab:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03446","gapId":"keymap:Image Editor Tool: Uv, Move:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03447","gapId":"keymap:Image Editor Tool: Uv, Pinch:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03448","gapId":"keymap:Image Editor Tool: Uv, Relax:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03449","gapId":"keymap:Image Editor Tool: Uv, Rip Region:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03450","gapId":"keymap:Image Editor Tool: Uv, Rotate:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03451","gapId":"keymap:Image Editor Tool: Uv, Scale:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03452","gapId":"keymap:Image Editor Tool: Uv, Select Box (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03453","gapId":"keymap:Image Editor Tool: Uv, Select Box:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03454","gapId":"keymap:Image Editor Tool: Uv, Select Circle (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03455","gapId":"keymap:Image Editor Tool: Uv, Select Circle:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03456","gapId":"keymap:Image Editor Tool: Uv, Select Lasso (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03457","gapId":"keymap:Image Editor Tool: Uv, Select Lasso:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03458","gapId":"keymap:Image Editor Tool: Uv, Tweak (fallback):IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03459","gapId":"keymap:Image Editor Tool: Uv, Tweak:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03460","gapId":"keymap:Image Generic:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03461","gapId":"keymap:Image Paint:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03462","gapId":"keymap:Image:IMAGE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03463","gapId":"keymap:Info:INFO:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03464","gapId":"keymap:Interpolate Tool Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03465","gapId":"keymap:Knife Tool Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03466","gapId":"keymap:Lattice:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03467","gapId":"keymap:Markers:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03468","gapId":"keymap:Mask Editing:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03469","gapId":"keymap:Mesh Filter Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03470","gapId":"keymap:Mesh:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03471","gapId":"keymap:Metaball:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03472","gapId":"keymap:NLA Editor:NLA_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03473","gapId":"keymap:NLA Generic:NLA_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03474","gapId":"keymap:NLA Tracks:NLA_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03475","gapId":"keymap:Node Editor:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03476","gapId":"keymap:Node Generic:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03477","gapId":"keymap:Node Link Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03478","gapId":"keymap:Node Resize Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03479","gapId":"keymap:Node Tool: Add Reroute:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03480","gapId":"keymap:Node Tool: Links Cut:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03481","gapId":"keymap:Node Tool: Mute Links:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03482","gapId":"keymap:Node Tool: Select Box (fallback):NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03483","gapId":"keymap:Node Tool: Select Box:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03484","gapId":"keymap:Node Tool: Select Circle (fallback):NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03485","gapId":"keymap:Node Tool: Select Circle:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03486","gapId":"keymap:Node Tool: Select Lasso (fallback):NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03487","gapId":"keymap:Node Tool: Select Lasso:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03488","gapId":"keymap:Node Tool: Tweak (fallback):NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03489","gapId":"keymap:Node Tool: Tweak:NODE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03490","gapId":"keymap:Object Mode:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03491","gapId":"keymap:Object Non-modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03492","gapId":"keymap:Outliner:OUTLINER:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03493","gapId":"keymap:Paint Curve:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03494","gapId":"keymap:Paint Face Mask (Weight, Vertex, Texture):EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03495","gapId":"keymap:Paint Stroke Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03496","gapId":"keymap:Paint Vertex Selection (Weight, Vertex):EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03497","gapId":"keymap:Particle:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03498","gapId":"keymap:Pen Tool Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03499","gapId":"keymap:Point Cloud:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03500","gapId":"keymap:Pose:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03501","gapId":"keymap:Preferences:PREFERENCES:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03502","gapId":"keymap:Preferences_nav:PREFERENCES:UI","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03503","gapId":"keymap:Preview Tool: Cursor:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03504","gapId":"keymap:Preview Tool: Move:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03505","gapId":"keymap:Preview Tool: Rotate:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03506","gapId":"keymap:Preview Tool: Sample:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03507","gapId":"keymap:Preview Tool: Scale:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03508","gapId":"keymap:Preview Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03509","gapId":"keymap:Preview Tool: Select Box:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03510","gapId":"keymap:Preview Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03511","gapId":"keymap:Preview Tool: Select Circle:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03512","gapId":"keymap:Preview Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03513","gapId":"keymap:Preview Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03514","gapId":"keymap:Preview Tool: Tweak (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03515","gapId":"keymap:Preview Tool: Tweak:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03516","gapId":"keymap:Preview:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03517","gapId":"keymap:Primitive Tool Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03518","gapId":"keymap:Property Editor:PROPERTIES:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03519","gapId":"keymap:Region Context Menu:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03520","gapId":"keymap:Screen Editing:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03521","gapId":"keymap:Screen:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03522","gapId":"keymap:Sculpt Curves:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03523","gapId":"keymap:Sculpt Expand Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03524","gapId":"keymap:Sculpt:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03525","gapId":"keymap:Sequencer Channels:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03526","gapId":"keymap:Sequencer Tool: Blade:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03527","gapId":"keymap:Sequencer Tool: Select Box (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03528","gapId":"keymap:Sequencer Tool: Select Box:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03529","gapId":"keymap:Sequencer Tool: Select Circle (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03530","gapId":"keymap:Sequencer Tool: Select Circle:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03531","gapId":"keymap:Sequencer Tool: Select Lasso (fallback):SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03532","gapId":"keymap:Sequencer Tool: Select Lasso:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03533","gapId":"keymap:Sequencer Tool: Slip:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03534","gapId":"keymap:Sequencer:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03535","gapId":"keymap:Slip Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03536","gapId":"keymap:Spreadsheet Generic:SPREADSHEET:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03537","gapId":"keymap:Standard Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03538","gapId":"keymap:Text Generic:TEXT_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03539","gapId":"keymap:Text:TEXT_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03540","gapId":"keymap:Time Scrub:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03541","gapId":"keymap:Toolbar Popup:EMPTY:TEMPORARY","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03542","gapId":"keymap:Transform Axis Target Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03543","gapId":"keymap:Transform Modal Map:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03544","gapId":"keymap:UV Editor:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03545","gapId":"keymap:User Interface:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03546","gapId":"keymap:Vertex Paint:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03547","gapId":"keymap:Video Sequence Editor:SEQUENCE_EDITOR:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03548","gapId":"keymap:View2D Buttons List:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03549","gapId":"keymap:View2D:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03550","gapId":"keymap:View3D Dolly Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03551","gapId":"keymap:View3D Fly Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03552","gapId":"keymap:View3D Gesture Circle:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03553","gapId":"keymap:View3D Move Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03554","gapId":"keymap:View3D Placement Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03555","gapId":"keymap:View3D Rotate Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03556","gapId":"keymap:View3D VR Location Scouting Capture Review Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03557","gapId":"keymap:View3D Walk Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03558","gapId":"keymap:View3D Zoom Modal:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03559","gapId":"keymap:Weight Paint:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03560","gapId":"keymap:Window:EMPTY:WINDOW","ownerFamily":"KEYMAP","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03561","gapId":"region:ASSET_SHELF","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03562","gapId":"region:ASSET_SHELF_HEADER","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03563","gapId":"region:CHANNELS","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03564","gapId":"region:EXECUTE","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03565","gapId":"region:FOOTER","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03566","gapId":"region:HEADER","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03567","gapId":"region:HUD","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03568","gapId":"region:NAVIGATION_BAR","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03569","gapId":"region:PREVIEW","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03570","gapId":"region:SCRUBBING","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03571","gapId":"region:TEMPORARY","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03572","gapId":"region:TOOLS","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03573","gapId":"region:TOOL_HEADER","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03574","gapId":"region:TOOL_PROPS","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03575","gapId":"region:UI","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03576","gapId":"region:WINDOW","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03577","gapId":"region:XR","ownerFamily":"REGION","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03578","gapId":"space-class:SpaceClipEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03579","gapId":"space-class:SpaceConsole","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03580","gapId":"space-class:SpaceDopeSheetEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03581","gapId":"space-class:SpaceFileBrowser","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03582","gapId":"space-class:SpaceGraphEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03583","gapId":"space-class:SpaceImageEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03584","gapId":"space-class:SpaceInfo","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03585","gapId":"space-class:SpaceNLA","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03586","gapId":"space-class:SpaceNodeEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03587","gapId":"space-class:SpaceOutliner","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03588","gapId":"space-class:SpacePreferences","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03589","gapId":"space-class:SpaceProperties","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03590","gapId":"space-class:SpaceSequenceEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03591","gapId":"space-class:SpaceSpreadsheet","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03592","gapId":"space-class:SpaceTextEditor","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03593","gapId":"space-class:SpaceView3D","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03594","gapId":"space:CLIP_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03595","gapId":"space:CONSOLE","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03596","gapId":"space:DOPESHEET_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03597","gapId":"space:EMPTY","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03598","gapId":"space:FILE_BROWSER","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03599","gapId":"space:GRAPH_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03600","gapId":"space:IMAGE_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03601","gapId":"space:INFO","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03602","gapId":"space:NLA_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03603","gapId":"space:NODE_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03604","gapId":"space:OUTLINER","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03605","gapId":"space:PREFERENCES","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03606","gapId":"space:PROPERTIES","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03607","gapId":"space:SEQUENCE_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03608","gapId":"space:SPREADSHEET","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03609","gapId":"space:STATUSBAR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03610","gapId":"space:TEXT_EDITOR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03611","gapId":"space:TOPBAR","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03612","gapId":"space:VIEW_3D","ownerFamily":"SPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03613","gapId":"workspace:EDIT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03614","gapId":"workspace:EDIT_GPENCIL","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03615","gapId":"workspace:OBJECT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03616","gapId":"workspace:PAINT_GREASE_PENCIL","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03617","gapId":"workspace:PARTICLE_EDIT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03618","gapId":"workspace:POSE","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03619","gapId":"workspace:SCULPT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03620","gapId":"workspace:SCULPT_GREASE_PENCIL","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03621","gapId":"workspace:TEXTURE_PAINT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03622","gapId":"workspace:VERTEX_GREASE_PENCIL","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03623","gapId":"workspace:VERTEX_PAINT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03624","gapId":"workspace:WEIGHT_GREASE_PENCIL","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M21-GAP-03625","gapId":"workspace:WEIGHT_PAINT","ownerFamily":"WORKSPACE","sourceTask":"M15-01E","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00001","gapId":"rna:Depsgraph:Depsgraph","ownerFamily":"Depsgraph","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00002","gapId":"rna:Depsgraph:DepsgraphObjectInstance","ownerFamily":"Depsgraph","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00003","gapId":"rna:Depsgraph:DepsgraphUpdate","ownerFamily":"Depsgraph","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00004","gapId":"rna:Scene:Camera","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00005","gapId":"rna:Scene:Collection","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00006","gapId":"rna:Scene:Constraint","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00007","gapId":"rna:Scene:LayerCollection","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00008","gapId":"rna:Scene:Light","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00009","gapId":"rna:Scene:Material","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00010","gapId":"rna:Scene:Modifier","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00011","gapId":"rna:Scene:NodeTree","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00012","gapId":"rna:Scene:Object","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00013","gapId":"rna:Scene:RenderSettings","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00014","gapId":"rna:Scene:Scene","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00015","gapId":"rna:Scene:Screen","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00016","gapId":"rna:Scene:ViewLayer","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00017","gapId":"rna:Scene:Window","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00018","gapId":"rna:Scene:WindowManager","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} +{"id":"M22-GAP-00019","gapId":"rna:Scene:World","ownerFamily":"Scene","sourceTask":"M15-01F","state":"pending","targetImplementationClass":"LOCAL_EXACT"} diff --git a/tests/golden/M15-03A/task-index.json b/tests/golden/M15-03A/task-index.json new file mode 100644 index 00000000..23fbd560 --- /dev/null +++ b/tests/golden/M15-03A/task-index.json @@ -0,0 +1 @@ +{"schemaVersion":1,"operation":"BLENDER_TASK_CONTEXT_INDEX","source":{"path":"tests/golden/M15-03A/next-task-plan.json","sha256":"ad3294c03bc6e3a3fa59626275b46e8903add33806b6ef590e0d55429de63d0d"},"catalog":{"path":"tests/golden/M15-03A/task-catalog.jsonl","sha256":"35a80ec17650c93f15496a06a335cbb88ce4c880294ace7e8b4f30c58aa6e460"},"taskCount":6900,"activeTask":"M16-GAP-00071","entries":{"M16-GAP-00001":{"line":0,"offset":0,"length":165,"previous":null,"next":"M16-GAP-00002"},"M16-GAP-00002":{"line":1,"offset":165,"length":167,"previous":"M16-GAP-00001","next":"M16-GAP-00003"},"M16-GAP-00003":{"line":2,"offset":332,"length":164,"previous":"M16-GAP-00002","next":"M16-GAP-00004"},"M16-GAP-00004":{"line":3,"offset":496,"length":165,"previous":"M16-GAP-00003","next":"M16-GAP-00005"},"M16-GAP-00005":{"line":4,"offset":661,"length":169,"previous":"M16-GAP-00004","next":"M16-GAP-00006"},"M16-GAP-00006":{"line":5,"offset":830,"length":164,"previous":"M16-GAP-00005","next":"M16-GAP-00007"},"M16-GAP-00007":{"line":6,"offset":994,"length":165,"previous":"M16-GAP-00006","next":"M16-GAP-00008"},"M16-GAP-00008":{"line":7,"offset":1159,"length":177,"previous":"M16-GAP-00007","next":"M16-GAP-00009"},"M16-GAP-00009":{"line":8,"offset":1336,"length":171,"previous":"M16-GAP-00008","next":"M16-GAP-00010"},"M16-GAP-00010":{"line":9,"offset":1507,"length":166,"previous":"M16-GAP-00009","next":"M16-GAP-00011"},"M16-GAP-00011":{"line":10,"offset":1673,"length":166,"previous":"M16-GAP-00010","next":"M16-GAP-00012"},"M16-GAP-00012":{"line":11,"offset":1839,"length":164,"previous":"M16-GAP-00011","next":"M16-GAP-00013"},"M16-GAP-00013":{"line":12,"offset":2003,"length":167,"previous":"M16-GAP-00012","next":"M16-GAP-00014"},"M16-GAP-00014":{"line":13,"offset":2170,"length":163,"previous":"M16-GAP-00013","next":"M16-GAP-00015"},"M16-GAP-00015":{"line":14,"offset":2333,"length":167,"previous":"M16-GAP-00014","next":"M16-GAP-00016"},"M16-GAP-00016":{"line":15,"offset":2500,"length":167,"previous":"M16-GAP-00015","next":"M16-GAP-00017"},"M16-GAP-00017":{"line":16,"offset":2667,"length":165,"previous":"M16-GAP-00016","next":"M16-GAP-00018"},"M16-GAP-00018":{"line":17,"offset":2832,"length":175,"previous":"M16-GAP-00017","next":"M16-GAP-00019"},"M16-GAP-00019":{"line":18,"offset":3007,"length":169,"previous":"M16-GAP-00018","next":"M16-GAP-00020"},"M16-GAP-00020":{"line":19,"offset":3176,"length":164,"previous":"M16-GAP-00019","next":"M16-GAP-00021"},"M16-GAP-00021":{"line":20,"offset":3340,"length":165,"previous":"M16-GAP-00020","next":"M16-GAP-00022"},"M16-GAP-00022":{"line":21,"offset":3505,"length":164,"previous":"M16-GAP-00021","next":"M16-GAP-00023"},"M16-GAP-00023":{"line":22,"offset":3669,"length":166,"previous":"M16-GAP-00022","next":"M16-GAP-00024"},"M16-GAP-00024":{"line":23,"offset":3835,"length":163,"previous":"M16-GAP-00023","next":"M16-GAP-00025"},"M16-GAP-00025":{"line":24,"offset":3998,"length":166,"previous":"M16-GAP-00024","next":"M16-GAP-00026"},"M16-GAP-00026":{"line":25,"offset":4164,"length":165,"previous":"M16-GAP-00025","next":"M16-GAP-00027"},"M16-GAP-00027":{"line":26,"offset":4329,"length":172,"previous":"M16-GAP-00026","next":"M16-GAP-00028"},"M16-GAP-00028":{"line":27,"offset":4501,"length":168,"previous":"M16-GAP-00027","next":"M16-GAP-00029"},"M16-GAP-00029":{"line":28,"offset":4669,"length":164,"previous":"M16-GAP-00028","next":"M16-GAP-00030"},"M16-GAP-00030":{"line":29,"offset":4833,"length":161,"previous":"M16-GAP-00029","next":"M16-GAP-00031"},"M16-GAP-00031":{"line":30,"offset":4994,"length":158,"previous":"M16-GAP-00030","next":"M16-GAP-00032"},"M16-GAP-00032":{"line":31,"offset":5152,"length":158,"previous":"M16-GAP-00031","next":"M16-GAP-00033"},"M16-GAP-00033":{"line":32,"offset":5310,"length":160,"previous":"M16-GAP-00032","next":"M16-GAP-00034"},"M16-GAP-00034":{"line":33,"offset":5470,"length":158,"previous":"M16-GAP-00033","next":"M16-GAP-00035"},"M16-GAP-00035":{"line":34,"offset":5628,"length":157,"previous":"M16-GAP-00034","next":"M16-GAP-00036"},"M16-GAP-00036":{"line":35,"offset":5785,"length":158,"previous":"M16-GAP-00035","next":"M16-GAP-00037"},"M16-GAP-00037":{"line":36,"offset":5943,"length":162,"previous":"M16-GAP-00036","next":"M16-GAP-00038"},"M16-GAP-00038":{"line":37,"offset":6105,"length":170,"previous":"M16-GAP-00037","next":"M16-GAP-00039"},"M16-GAP-00039":{"line":38,"offset":6275,"length":158,"previous":"M16-GAP-00038","next":"M16-GAP-00040"},"M16-GAP-00040":{"line":39,"offset":6433,"length":166,"previous":"M16-GAP-00039","next":"M16-GAP-00041"},"M16-GAP-00041":{"line":40,"offset":6599,"length":161,"previous":"M16-GAP-00040","next":"M16-GAP-00042"},"M16-GAP-00042":{"line":41,"offset":6760,"length":161,"previous":"M16-GAP-00041","next":"M16-GAP-00043"},"M16-GAP-00043":{"line":42,"offset":6921,"length":166,"previous":"M16-GAP-00042","next":"M16-GAP-00044"},"M16-GAP-00044":{"line":43,"offset":7087,"length":163,"previous":"M16-GAP-00043","next":"M16-GAP-00045"},"M16-GAP-00045":{"line":44,"offset":7250,"length":160,"previous":"M16-GAP-00044","next":"M16-GAP-00046"},"M16-GAP-00046":{"line":45,"offset":7410,"length":158,"previous":"M16-GAP-00045","next":"M16-GAP-00047"},"M16-GAP-00047":{"line":46,"offset":7568,"length":175,"previous":"M16-GAP-00046","next":"M16-GAP-00048"},"M16-GAP-00048":{"line":47,"offset":7743,"length":172,"previous":"M16-GAP-00047","next":"M16-GAP-00049"},"M16-GAP-00049":{"line":48,"offset":7915,"length":172,"previous":"M16-GAP-00048","next":"M16-GAP-00050"},"M16-GAP-00050":{"line":49,"offset":8087,"length":172,"previous":"M16-GAP-00049","next":"M16-GAP-00051"},"M16-GAP-00051":{"line":50,"offset":8259,"length":171,"previous":"M16-GAP-00050","next":"M16-GAP-00052"},"M16-GAP-00052":{"line":51,"offset":8430,"length":175,"previous":"M16-GAP-00051","next":"M16-GAP-00053"},"M16-GAP-00053":{"line":52,"offset":8605,"length":171,"previous":"M16-GAP-00052","next":"M16-GAP-00054"},"M16-GAP-00054":{"line":53,"offset":8776,"length":174,"previous":"M16-GAP-00053","next":"M16-GAP-00055"},"M16-GAP-00055":{"line":54,"offset":8950,"length":173,"previous":"M16-GAP-00054","next":"M16-GAP-00056"},"M16-GAP-00056":{"line":55,"offset":9123,"length":173,"previous":"M16-GAP-00055","next":"M16-GAP-00057"},"M16-GAP-00057":{"line":56,"offset":9296,"length":175,"previous":"M16-GAP-00056","next":"M16-GAP-00058"},"M16-GAP-00058":{"line":57,"offset":9471,"length":172,"previous":"M16-GAP-00057","next":"M16-GAP-00059"},"M16-GAP-00059":{"line":58,"offset":9643,"length":173,"previous":"M16-GAP-00058","next":"M16-GAP-00060"},"M16-GAP-00060":{"line":59,"offset":9816,"length":174,"previous":"M16-GAP-00059","next":"M16-GAP-00061"},"M16-GAP-00061":{"line":60,"offset":9990,"length":174,"previous":"M16-GAP-00060","next":"M16-GAP-00062"},"M16-GAP-00062":{"line":61,"offset":10164,"length":177,"previous":"M16-GAP-00061","next":"M16-GAP-00063"},"M16-GAP-00063":{"line":62,"offset":10341,"length":175,"previous":"M16-GAP-00062","next":"M16-GAP-00064"},"M16-GAP-00064":{"line":63,"offset":10516,"length":173,"previous":"M16-GAP-00063","next":"M16-GAP-00065"},"M16-GAP-00065":{"line":64,"offset":10689,"length":173,"previous":"M16-GAP-00064","next":"M16-GAP-00066"},"M16-GAP-00066":{"line":65,"offset":10862,"length":174,"previous":"M16-GAP-00065","next":"M16-GAP-00067"},"M16-GAP-00067":{"line":66,"offset":11036,"length":176,"previous":"M16-GAP-00066","next":"M16-GAP-00068"},"M16-GAP-00068":{"line":67,"offset":11212,"length":171,"previous":"M16-GAP-00067","next":"M16-GAP-00069"},"M16-GAP-00069":{"line":68,"offset":11383,"length":171,"previous":"M16-GAP-00068","next":"M16-GAP-00070"},"M16-GAP-00070":{"line":69,"offset":11554,"length":186,"previous":"M16-GAP-00069","next":"M16-GAP-00071"},"M16-GAP-00071":{"line":70,"offset":11740,"length":187,"previous":"M16-GAP-00070","next":"M16-GAP-00072"},"M16-GAP-00072":{"line":71,"offset":11927,"length":155,"previous":"M16-GAP-00071","next":"M16-GAP-00073"},"M16-GAP-00073":{"line":72,"offset":12082,"length":166,"previous":"M16-GAP-00072","next":"M16-GAP-00074"},"M16-GAP-00074":{"line":73,"offset":12248,"length":166,"previous":"M16-GAP-00073","next":"M16-GAP-00075"},"M16-GAP-00075":{"line":74,"offset":12414,"length":158,"previous":"M16-GAP-00074","next":"M16-GAP-00076"},"M16-GAP-00076":{"line":75,"offset":12572,"length":158,"previous":"M16-GAP-00075","next":"M16-GAP-00077"},"M16-GAP-00077":{"line":76,"offset":12730,"length":155,"previous":"M16-GAP-00076","next":"M16-GAP-00078"},"M16-GAP-00078":{"line":77,"offset":12885,"length":161,"previous":"M16-GAP-00077","next":"M16-GAP-00079"},"M16-GAP-00079":{"line":78,"offset":13046,"length":162,"previous":"M16-GAP-00078","next":"M16-GAP-00080"},"M16-GAP-00080":{"line":79,"offset":13208,"length":170,"previous":"M16-GAP-00079","next":"M16-GAP-00081"},"M16-GAP-00081":{"line":80,"offset":13378,"length":165,"previous":"M16-GAP-00080","next":"M16-GAP-00082"},"M16-GAP-00082":{"line":81,"offset":13543,"length":157,"previous":"M16-GAP-00081","next":"M16-GAP-00083"},"M16-GAP-00083":{"line":82,"offset":13700,"length":159,"previous":"M16-GAP-00082","next":"M16-GAP-00084"},"M16-GAP-00084":{"line":83,"offset":13859,"length":156,"previous":"M16-GAP-00083","next":"M16-GAP-00085"},"M16-GAP-00085":{"line":84,"offset":14015,"length":162,"previous":"M16-GAP-00084","next":"M16-GAP-00086"},"M16-GAP-00086":{"line":85,"offset":14177,"length":156,"previous":"M16-GAP-00085","next":"M16-GAP-00087"},"M16-GAP-00087":{"line":86,"offset":14333,"length":168,"previous":"M16-GAP-00086","next":"M16-GAP-00088"},"M16-GAP-00088":{"line":87,"offset":14501,"length":166,"previous":"M16-GAP-00087","next":"M16-GAP-00089"},"M16-GAP-00089":{"line":88,"offset":14667,"length":157,"previous":"M16-GAP-00088","next":"M16-GAP-00090"},"M16-GAP-00090":{"line":89,"offset":14824,"length":156,"previous":"M16-GAP-00089","next":"M16-GAP-00091"},"M16-GAP-00091":{"line":90,"offset":14980,"length":161,"previous":"M16-GAP-00090","next":"M16-GAP-00092"},"M16-GAP-00092":{"line":91,"offset":15141,"length":164,"previous":"M16-GAP-00091","next":"M16-GAP-00093"},"M16-GAP-00093":{"line":92,"offset":15305,"length":155,"previous":"M16-GAP-00092","next":"M16-GAP-00094"},"M16-GAP-00094":{"line":93,"offset":15460,"length":157,"previous":"M16-GAP-00093","next":"M16-GAP-00095"},"M16-GAP-00095":{"line":94,"offset":15617,"length":160,"previous":"M16-GAP-00094","next":"M16-GAP-00096"},"M16-GAP-00096":{"line":95,"offset":15777,"length":159,"previous":"M16-GAP-00095","next":"M16-GAP-00097"},"M16-GAP-00097":{"line":96,"offset":15936,"length":158,"previous":"M16-GAP-00096","next":"M16-GAP-00098"},"M16-GAP-00098":{"line":97,"offset":16094,"length":158,"previous":"M16-GAP-00097","next":"M16-GAP-00099"},"M16-GAP-00099":{"line":98,"offset":16252,"length":165,"previous":"M16-GAP-00098","next":"M16-GAP-00100"},"M16-GAP-00100":{"line":99,"offset":16417,"length":162,"previous":"M16-GAP-00099","next":"M16-GAP-00101"},"M16-GAP-00101":{"line":100,"offset":16579,"length":161,"previous":"M16-GAP-00100","next":"M16-GAP-00102"},"M16-GAP-00102":{"line":101,"offset":16740,"length":158,"previous":"M16-GAP-00101","next":"M16-GAP-00103"},"M16-GAP-00103":{"line":102,"offset":16898,"length":169,"previous":"M16-GAP-00102","next":"M16-GAP-00104"},"M16-GAP-00104":{"line":103,"offset":17067,"length":168,"previous":"M16-GAP-00103","next":"M16-GAP-00105"},"M16-GAP-00105":{"line":104,"offset":17235,"length":174,"previous":"M16-GAP-00104","next":"M16-GAP-00106"},"M16-GAP-00106":{"line":105,"offset":17409,"length":166,"previous":"M16-GAP-00105","next":"M16-GAP-00107"},"M16-GAP-00107":{"line":106,"offset":17575,"length":165,"previous":"M16-GAP-00106","next":"M16-GAP-00108"},"M16-GAP-00108":{"line":107,"offset":17740,"length":155,"previous":"M16-GAP-00107","next":"M16-GAP-00109"},"M16-GAP-00109":{"line":108,"offset":17895,"length":155,"previous":"M16-GAP-00108","next":"M16-GAP-00110"},"M16-GAP-00110":{"line":109,"offset":18050,"length":166,"previous":"M16-GAP-00109","next":"M16-GAP-00111"},"M16-GAP-00111":{"line":110,"offset":18216,"length":155,"previous":"M16-GAP-00110","next":"M16-GAP-00112"},"M16-GAP-00112":{"line":111,"offset":18371,"length":160,"previous":"M16-GAP-00111","next":"M16-GAP-00113"},"M16-GAP-00113":{"line":112,"offset":18531,"length":167,"previous":"M16-GAP-00112","next":"M16-GAP-00114"},"M16-GAP-00114":{"line":113,"offset":18698,"length":163,"previous":"M16-GAP-00113","next":"M16-GAP-00115"},"M16-GAP-00115":{"line":114,"offset":18861,"length":169,"previous":"M16-GAP-00114","next":"M16-GAP-00116"},"M16-GAP-00116":{"line":115,"offset":19030,"length":162,"previous":"M16-GAP-00115","next":"M16-GAP-00117"},"M16-GAP-00117":{"line":116,"offset":19192,"length":164,"previous":"M16-GAP-00116","next":"M16-GAP-00118"},"M16-GAP-00118":{"line":117,"offset":19356,"length":167,"previous":"M16-GAP-00117","next":"M16-GAP-00119"},"M16-GAP-00119":{"line":118,"offset":19523,"length":172,"previous":"M16-GAP-00118","next":"M16-GAP-00120"},"M16-GAP-00120":{"line":119,"offset":19695,"length":169,"previous":"M16-GAP-00119","next":"M16-GAP-00121"},"M16-GAP-00121":{"line":120,"offset":19864,"length":176,"previous":"M16-GAP-00120","next":"M16-GAP-00122"},"M16-GAP-00122":{"line":121,"offset":20040,"length":168,"previous":"M16-GAP-00121","next":"M16-GAP-00123"},"M16-GAP-00123":{"line":122,"offset":20208,"length":169,"previous":"M16-GAP-00122","next":"M16-GAP-00124"},"M16-GAP-00124":{"line":123,"offset":20377,"length":176,"previous":"M16-GAP-00123","next":"M16-GAP-00125"},"M16-GAP-00125":{"line":124,"offset":20553,"length":173,"previous":"M16-GAP-00124","next":"M16-GAP-00126"},"M16-GAP-00126":{"line":125,"offset":20726,"length":171,"previous":"M16-GAP-00125","next":"M16-GAP-00127"},"M16-GAP-00127":{"line":126,"offset":20897,"length":176,"previous":"M16-GAP-00126","next":"M16-GAP-00128"},"M16-GAP-00128":{"line":127,"offset":21073,"length":164,"previous":"M16-GAP-00127","next":"M16-GAP-00129"},"M16-GAP-00129":{"line":128,"offset":21237,"length":161,"previous":"M16-GAP-00128","next":"M16-GAP-00130"},"M16-GAP-00130":{"line":129,"offset":21398,"length":163,"previous":"M16-GAP-00129","next":"M16-GAP-00131"},"M16-GAP-00131":{"line":130,"offset":21561,"length":174,"previous":"M16-GAP-00130","next":"M16-GAP-00132"},"M16-GAP-00132":{"line":131,"offset":21735,"length":167,"previous":"M16-GAP-00131","next":"M16-GAP-00133"},"M16-GAP-00133":{"line":132,"offset":21902,"length":168,"previous":"M16-GAP-00132","next":"M16-GAP-00134"},"M16-GAP-00134":{"line":133,"offset":22070,"length":168,"previous":"M16-GAP-00133","next":"M16-GAP-00135"},"M16-GAP-00135":{"line":134,"offset":22238,"length":172,"previous":"M16-GAP-00134","next":"M16-GAP-00136"},"M16-GAP-00136":{"line":135,"offset":22410,"length":171,"previous":"M16-GAP-00135","next":"M16-GAP-00137"},"M16-GAP-00137":{"line":136,"offset":22581,"length":171,"previous":"M16-GAP-00136","next":"M16-GAP-00138"},"M16-GAP-00138":{"line":137,"offset":22752,"length":170,"previous":"M16-GAP-00137","next":"M16-GAP-00139"},"M16-GAP-00139":{"line":138,"offset":22922,"length":174,"previous":"M16-GAP-00138","next":"M16-GAP-00140"},"M16-GAP-00140":{"line":139,"offset":23096,"length":169,"previous":"M16-GAP-00139","next":"M16-GAP-00141"},"M16-GAP-00141":{"line":140,"offset":23265,"length":171,"previous":"M16-GAP-00140","next":"M16-GAP-00142"},"M16-GAP-00142":{"line":141,"offset":23436,"length":169,"previous":"M16-GAP-00141","next":"M16-GAP-00143"},"M16-GAP-00143":{"line":142,"offset":23605,"length":162,"previous":"M16-GAP-00142","next":"M16-GAP-00144"},"M16-GAP-00144":{"line":143,"offset":23767,"length":163,"previous":"M16-GAP-00143","next":"M16-GAP-00145"},"M16-GAP-00145":{"line":144,"offset":23930,"length":174,"previous":"M16-GAP-00144","next":"M16-GAP-00146"},"M16-GAP-00146":{"line":145,"offset":24104,"length":164,"previous":"M16-GAP-00145","next":"M16-GAP-00147"},"M16-GAP-00147":{"line":146,"offset":24268,"length":166,"previous":"M16-GAP-00146","next":"M16-GAP-00148"},"M16-GAP-00148":{"line":147,"offset":24434,"length":168,"previous":"M16-GAP-00147","next":"M16-GAP-00149"},"M16-GAP-00149":{"line":148,"offset":24602,"length":171,"previous":"M16-GAP-00148","next":"M16-GAP-00150"},"M16-GAP-00150":{"line":149,"offset":24773,"length":168,"previous":"M16-GAP-00149","next":"M16-GAP-00151"},"M16-GAP-00151":{"line":150,"offset":24941,"length":175,"previous":"M16-GAP-00150","next":"M16-GAP-00152"},"M16-GAP-00152":{"line":151,"offset":25116,"length":173,"previous":"M16-GAP-00151","next":"M16-GAP-00153"},"M16-GAP-00153":{"line":152,"offset":25289,"length":169,"previous":"M16-GAP-00152","next":"M16-GAP-00154"},"M16-GAP-00154":{"line":153,"offset":25458,"length":176,"previous":"M16-GAP-00153","next":"M16-GAP-00155"},"M16-GAP-00155":{"line":154,"offset":25634,"length":170,"previous":"M16-GAP-00154","next":"M16-GAP-00156"},"M16-GAP-00156":{"line":155,"offset":25804,"length":173,"previous":"M16-GAP-00155","next":"M16-GAP-00157"},"M16-GAP-00157":{"line":156,"offset":25977,"length":171,"previous":"M16-GAP-00156","next":"M16-GAP-00158"},"M16-GAP-00158":{"line":157,"offset":26148,"length":180,"previous":"M16-GAP-00157","next":"M16-GAP-00159"},"M16-GAP-00159":{"line":158,"offset":26328,"length":171,"previous":"M16-GAP-00158","next":"M16-GAP-00160"},"M16-GAP-00160":{"line":159,"offset":26499,"length":179,"previous":"M16-GAP-00159","next":"M16-GAP-00161"},"M16-GAP-00161":{"line":160,"offset":26678,"length":170,"previous":"M16-GAP-00160","next":"M16-GAP-00162"},"M16-GAP-00162":{"line":161,"offset":26848,"length":169,"previous":"M16-GAP-00161","next":"M16-GAP-00163"},"M16-GAP-00163":{"line":162,"offset":27017,"length":171,"previous":"M16-GAP-00162","next":"M16-GAP-00164"},"M16-GAP-00164":{"line":163,"offset":27188,"length":175,"previous":"M16-GAP-00163","next":"M16-GAP-00165"},"M16-GAP-00165":{"line":164,"offset":27363,"length":175,"previous":"M16-GAP-00164","next":"M16-GAP-00166"},"M16-GAP-00166":{"line":165,"offset":27538,"length":178,"previous":"M16-GAP-00165","next":"M16-GAP-00167"},"M16-GAP-00167":{"line":166,"offset":27716,"length":180,"previous":"M16-GAP-00166","next":"M16-GAP-00168"},"M16-GAP-00168":{"line":167,"offset":27896,"length":179,"previous":"M16-GAP-00167","next":"M16-GAP-00169"},"M16-GAP-00169":{"line":168,"offset":28075,"length":179,"previous":"M16-GAP-00168","next":"M16-GAP-00170"},"M16-GAP-00170":{"line":169,"offset":28254,"length":172,"previous":"M16-GAP-00169","next":"M16-GAP-00171"},"M16-GAP-00171":{"line":170,"offset":28426,"length":178,"previous":"M16-GAP-00170","next":"M16-GAP-00172"},"M16-GAP-00172":{"line":171,"offset":28604,"length":177,"previous":"M16-GAP-00171","next":"M16-GAP-00173"},"M16-GAP-00173":{"line":172,"offset":28781,"length":174,"previous":"M16-GAP-00172","next":"M16-GAP-00174"},"M16-GAP-00174":{"line":173,"offset":28955,"length":173,"previous":"M16-GAP-00173","next":"M16-GAP-00175"},"M16-GAP-00175":{"line":174,"offset":29128,"length":174,"previous":"M16-GAP-00174","next":"M16-GAP-00176"},"M16-GAP-00176":{"line":175,"offset":29302,"length":176,"previous":"M16-GAP-00175","next":"M16-GAP-00177"},"M16-GAP-00177":{"line":176,"offset":29478,"length":169,"previous":"M16-GAP-00176","next":"M16-GAP-00178"},"M16-GAP-00178":{"line":177,"offset":29647,"length":177,"previous":"M16-GAP-00177","next":"M16-GAP-00179"},"M16-GAP-00179":{"line":178,"offset":29824,"length":174,"previous":"M16-GAP-00178","next":"M16-GAP-00180"},"M16-GAP-00180":{"line":179,"offset":29998,"length":174,"previous":"M16-GAP-00179","next":"M16-GAP-00181"},"M16-GAP-00181":{"line":180,"offset":30172,"length":171,"previous":"M16-GAP-00180","next":"M16-GAP-00182"},"M16-GAP-00182":{"line":181,"offset":30343,"length":178,"previous":"M16-GAP-00181","next":"M16-GAP-00183"},"M16-GAP-00183":{"line":182,"offset":30521,"length":179,"previous":"M16-GAP-00182","next":"M16-GAP-00184"},"M16-GAP-00184":{"line":183,"offset":30700,"length":175,"previous":"M16-GAP-00183","next":"M16-GAP-00185"},"M16-GAP-00185":{"line":184,"offset":30875,"length":175,"previous":"M16-GAP-00184","next":"M16-GAP-00186"},"M16-GAP-00186":{"line":185,"offset":31050,"length":171,"previous":"M16-GAP-00185","next":"M16-GAP-00187"},"M16-GAP-00187":{"line":186,"offset":31221,"length":178,"previous":"M16-GAP-00186","next":"M16-GAP-00188"},"M16-GAP-00188":{"line":187,"offset":31399,"length":179,"previous":"M16-GAP-00187","next":"M16-GAP-00189"},"M16-GAP-00189":{"line":188,"offset":31578,"length":176,"previous":"M16-GAP-00188","next":"M16-GAP-00190"},"M16-GAP-00190":{"line":189,"offset":31754,"length":177,"previous":"M16-GAP-00189","next":"M16-GAP-00191"},"M16-GAP-00191":{"line":190,"offset":31931,"length":170,"previous":"M16-GAP-00190","next":"M16-GAP-00192"},"M16-GAP-00192":{"line":191,"offset":32101,"length":173,"previous":"M16-GAP-00191","next":"M16-GAP-00193"},"M16-GAP-00193":{"line":192,"offset":32274,"length":175,"previous":"M16-GAP-00192","next":"M16-GAP-00194"},"M16-GAP-00194":{"line":193,"offset":32449,"length":178,"previous":"M16-GAP-00193","next":"M16-GAP-00195"},"M16-GAP-00195":{"line":194,"offset":32627,"length":173,"previous":"M16-GAP-00194","next":"M16-GAP-00196"},"M16-GAP-00196":{"line":195,"offset":32800,"length":176,"previous":"M16-GAP-00195","next":"M16-GAP-00197"},"M16-GAP-00197":{"line":196,"offset":32976,"length":179,"previous":"M16-GAP-00196","next":"M16-GAP-00198"},"M16-GAP-00198":{"line":197,"offset":33155,"length":171,"previous":"M16-GAP-00197","next":"M16-GAP-00199"},"M16-GAP-00199":{"line":198,"offset":33326,"length":175,"previous":"M16-GAP-00198","next":"M16-GAP-00200"},"M16-GAP-00200":{"line":199,"offset":33501,"length":174,"previous":"M16-GAP-00199","next":"M16-GAP-00201"},"M16-GAP-00201":{"line":200,"offset":33675,"length":172,"previous":"M16-GAP-00200","next":"M16-GAP-00202"},"M16-GAP-00202":{"line":201,"offset":33847,"length":170,"previous":"M16-GAP-00201","next":"M16-GAP-00203"},"M16-GAP-00203":{"line":202,"offset":34017,"length":174,"previous":"M16-GAP-00202","next":"M16-GAP-00204"},"M16-GAP-00204":{"line":203,"offset":34191,"length":173,"previous":"M16-GAP-00203","next":"M16-GAP-00205"},"M16-GAP-00205":{"line":204,"offset":34364,"length":170,"previous":"M16-GAP-00204","next":"M16-GAP-00206"},"M16-GAP-00206":{"line":205,"offset":34534,"length":188,"previous":"M16-GAP-00205","next":"M16-GAP-00207"},"M16-GAP-00207":{"line":206,"offset":34722,"length":171,"previous":"M16-GAP-00206","next":"M16-GAP-00208"},"M16-GAP-00208":{"line":207,"offset":34893,"length":185,"previous":"M16-GAP-00207","next":"M16-GAP-00209"},"M16-GAP-00209":{"line":208,"offset":35078,"length":177,"previous":"M16-GAP-00208","next":"M16-GAP-00210"},"M16-GAP-00210":{"line":209,"offset":35255,"length":184,"previous":"M16-GAP-00209","next":"M16-GAP-00211"},"M16-GAP-00211":{"line":210,"offset":35439,"length":171,"previous":"M16-GAP-00210","next":"M16-GAP-00212"},"M16-GAP-00212":{"line":211,"offset":35610,"length":193,"previous":"M16-GAP-00211","next":"M16-GAP-00213"},"M16-GAP-00213":{"line":212,"offset":35803,"length":182,"previous":"M16-GAP-00212","next":"M16-GAP-00214"},"M16-GAP-00214":{"line":213,"offset":35985,"length":182,"previous":"M16-GAP-00213","next":"M16-GAP-00215"},"M16-GAP-00215":{"line":214,"offset":36167,"length":165,"previous":"M16-GAP-00214","next":"M16-GAP-00216"},"M16-GAP-00216":{"line":215,"offset":36332,"length":180,"previous":"M16-GAP-00215","next":"M16-GAP-00217"},"M16-GAP-00217":{"line":216,"offset":36512,"length":174,"previous":"M16-GAP-00216","next":"M16-GAP-00218"},"M16-GAP-00218":{"line":217,"offset":36686,"length":178,"previous":"M16-GAP-00217","next":"M16-GAP-00219"},"M16-GAP-00219":{"line":218,"offset":36864,"length":174,"previous":"M16-GAP-00218","next":"M16-GAP-00220"},"M16-GAP-00220":{"line":219,"offset":37038,"length":173,"previous":"M16-GAP-00219","next":"M16-GAP-00221"},"M16-GAP-00221":{"line":220,"offset":37211,"length":174,"previous":"M16-GAP-00220","next":"M16-GAP-00222"},"M16-GAP-00222":{"line":221,"offset":37385,"length":177,"previous":"M16-GAP-00221","next":"M16-GAP-00223"},"M16-GAP-00223":{"line":222,"offset":37562,"length":188,"previous":"M16-GAP-00222","next":"M16-GAP-00224"},"M16-GAP-00224":{"line":223,"offset":37750,"length":179,"previous":"M16-GAP-00223","next":"M16-GAP-00225"},"M16-GAP-00225":{"line":224,"offset":37929,"length":175,"previous":"M16-GAP-00224","next":"M16-GAP-00226"},"M16-GAP-00226":{"line":225,"offset":38104,"length":177,"previous":"M16-GAP-00225","next":"M16-GAP-00227"},"M16-GAP-00227":{"line":226,"offset":38281,"length":184,"previous":"M16-GAP-00226","next":"M16-GAP-00228"},"M16-GAP-00228":{"line":227,"offset":38465,"length":177,"previous":"M16-GAP-00227","next":"M16-GAP-00229"},"M16-GAP-00229":{"line":228,"offset":38642,"length":179,"previous":"M16-GAP-00228","next":"M16-GAP-00230"},"M16-GAP-00230":{"line":229,"offset":38821,"length":179,"previous":"M16-GAP-00229","next":"M16-GAP-00231"},"M16-GAP-00231":{"line":230,"offset":39000,"length":185,"previous":"M16-GAP-00230","next":"M16-GAP-00232"},"M16-GAP-00232":{"line":231,"offset":39185,"length":181,"previous":"M16-GAP-00231","next":"M16-GAP-00233"},"M16-GAP-00233":{"line":232,"offset":39366,"length":187,"previous":"M16-GAP-00232","next":"M16-GAP-00234"},"M16-GAP-00234":{"line":233,"offset":39553,"length":166,"previous":"M16-GAP-00233","next":"M16-GAP-00235"},"M16-GAP-00235":{"line":234,"offset":39719,"length":168,"previous":"M16-GAP-00234","next":"M16-GAP-00236"},"M16-GAP-00236":{"line":235,"offset":39887,"length":169,"previous":"M16-GAP-00235","next":"M16-GAP-00237"},"M16-GAP-00237":{"line":236,"offset":40056,"length":174,"previous":"M16-GAP-00236","next":"M16-GAP-00238"},"M16-GAP-00238":{"line":237,"offset":40230,"length":176,"previous":"M16-GAP-00237","next":"M16-GAP-00239"},"M16-GAP-00239":{"line":238,"offset":40406,"length":167,"previous":"M16-GAP-00238","next":"M16-GAP-00240"},"M16-GAP-00240":{"line":239,"offset":40573,"length":174,"previous":"M16-GAP-00239","next":"M16-GAP-00241"},"M16-GAP-00241":{"line":240,"offset":40747,"length":172,"previous":"M16-GAP-00240","next":"M16-GAP-00242"},"M16-GAP-00242":{"line":241,"offset":40919,"length":164,"previous":"M16-GAP-00241","next":"M16-GAP-00243"},"M16-GAP-00243":{"line":242,"offset":41083,"length":170,"previous":"M16-GAP-00242","next":"M16-GAP-00244"},"M16-GAP-00244":{"line":243,"offset":41253,"length":164,"previous":"M16-GAP-00243","next":"M16-GAP-00245"},"M16-GAP-00245":{"line":244,"offset":41417,"length":178,"previous":"M16-GAP-00244","next":"M16-GAP-00246"},"M16-GAP-00246":{"line":245,"offset":41595,"length":172,"previous":"M16-GAP-00245","next":"M16-GAP-00247"},"M16-GAP-00247":{"line":246,"offset":41767,"length":170,"previous":"M16-GAP-00246","next":"M16-GAP-00248"},"M16-GAP-00248":{"line":247,"offset":41937,"length":166,"previous":"M16-GAP-00247","next":"M16-GAP-00249"},"M16-GAP-00249":{"line":248,"offset":42103,"length":170,"previous":"M16-GAP-00248","next":"M16-GAP-00250"},"M16-GAP-00250":{"line":249,"offset":42273,"length":170,"previous":"M16-GAP-00249","next":"M16-GAP-00251"},"M16-GAP-00251":{"line":250,"offset":42443,"length":176,"previous":"M16-GAP-00250","next":"M16-GAP-00252"},"M16-GAP-00252":{"line":251,"offset":42619,"length":171,"previous":"M16-GAP-00251","next":"M16-GAP-00253"},"M16-GAP-00253":{"line":252,"offset":42790,"length":173,"previous":"M16-GAP-00252","next":"M16-GAP-00254"},"M16-GAP-00254":{"line":253,"offset":42963,"length":178,"previous":"M16-GAP-00253","next":"M16-GAP-00255"},"M16-GAP-00255":{"line":254,"offset":43141,"length":173,"previous":"M16-GAP-00254","next":"M16-GAP-00256"},"M16-GAP-00256":{"line":255,"offset":43314,"length":171,"previous":"M16-GAP-00255","next":"M16-GAP-00257"},"M16-GAP-00257":{"line":256,"offset":43485,"length":174,"previous":"M16-GAP-00256","next":"M16-GAP-00258"},"M16-GAP-00258":{"line":257,"offset":43659,"length":168,"previous":"M16-GAP-00257","next":"M16-GAP-00259"},"M16-GAP-00259":{"line":258,"offset":43827,"length":178,"previous":"M16-GAP-00258","next":"M16-GAP-00260"},"M16-GAP-00260":{"line":259,"offset":44005,"length":165,"previous":"M16-GAP-00259","next":"M16-GAP-00261"},"M16-GAP-00261":{"line":260,"offset":44170,"length":169,"previous":"M16-GAP-00260","next":"M16-GAP-00262"},"M16-GAP-00262":{"line":261,"offset":44339,"length":176,"previous":"M16-GAP-00261","next":"M16-GAP-00263"},"M16-GAP-00263":{"line":262,"offset":44515,"length":170,"previous":"M16-GAP-00262","next":"M16-GAP-00264"},"M16-GAP-00264":{"line":263,"offset":44685,"length":171,"previous":"M16-GAP-00263","next":"M16-GAP-00265"},"M16-GAP-00265":{"line":264,"offset":44856,"length":172,"previous":"M16-GAP-00264","next":"M16-GAP-00266"},"M16-GAP-00266":{"line":265,"offset":45028,"length":170,"previous":"M16-GAP-00265","next":"M16-GAP-00267"},"M16-GAP-00267":{"line":266,"offset":45198,"length":185,"previous":"M16-GAP-00266","next":"M16-GAP-00268"},"M16-GAP-00268":{"line":267,"offset":45383,"length":171,"previous":"M16-GAP-00267","next":"M16-GAP-00269"},"M16-GAP-00269":{"line":268,"offset":45554,"length":171,"previous":"M16-GAP-00268","next":"M16-GAP-00270"},"M16-GAP-00270":{"line":269,"offset":45725,"length":168,"previous":"M16-GAP-00269","next":"M16-GAP-00271"},"M16-GAP-00271":{"line":270,"offset":45893,"length":169,"previous":"M16-GAP-00270","next":"M16-GAP-00272"},"M16-GAP-00272":{"line":271,"offset":46062,"length":169,"previous":"M16-GAP-00271","next":"M16-GAP-00273"},"M16-GAP-00273":{"line":272,"offset":46231,"length":174,"previous":"M16-GAP-00272","next":"M16-GAP-00274"},"M16-GAP-00274":{"line":273,"offset":46405,"length":170,"previous":"M16-GAP-00273","next":"M16-GAP-00275"},"M16-GAP-00275":{"line":274,"offset":46575,"length":162,"previous":"M16-GAP-00274","next":"M16-GAP-00276"},"M16-GAP-00276":{"line":275,"offset":46737,"length":169,"previous":"M16-GAP-00275","next":"M16-GAP-00277"},"M16-GAP-00277":{"line":276,"offset":46906,"length":172,"previous":"M16-GAP-00276","next":"M16-GAP-00278"},"M16-GAP-00278":{"line":277,"offset":47078,"length":179,"previous":"M16-GAP-00277","next":"M16-GAP-00279"},"M16-GAP-00279":{"line":278,"offset":47257,"length":161,"previous":"M16-GAP-00278","next":"M16-GAP-00280"},"M16-GAP-00280":{"line":279,"offset":47418,"length":168,"previous":"M16-GAP-00279","next":"M16-GAP-00281"},"M16-GAP-00281":{"line":280,"offset":47586,"length":183,"previous":"M16-GAP-00280","next":"M16-GAP-00282"},"M16-GAP-00282":{"line":281,"offset":47769,"length":175,"previous":"M16-GAP-00281","next":"M16-GAP-00283"},"M16-GAP-00283":{"line":282,"offset":47944,"length":164,"previous":"M16-GAP-00282","next":"M16-GAP-00284"},"M16-GAP-00284":{"line":283,"offset":48108,"length":167,"previous":"M16-GAP-00283","next":"M16-GAP-00285"},"M16-GAP-00285":{"line":284,"offset":48275,"length":164,"previous":"M16-GAP-00284","next":"M16-GAP-00286"},"M16-GAP-00286":{"line":285,"offset":48439,"length":164,"previous":"M16-GAP-00285","next":"M16-GAP-00287"},"M16-GAP-00287":{"line":286,"offset":48603,"length":170,"previous":"M16-GAP-00286","next":"M16-GAP-00288"},"M16-GAP-00288":{"line":287,"offset":48773,"length":168,"previous":"M16-GAP-00287","next":"M16-GAP-00289"},"M16-GAP-00289":{"line":288,"offset":48941,"length":165,"previous":"M16-GAP-00288","next":"M16-GAP-00290"},"M16-GAP-00290":{"line":289,"offset":49106,"length":165,"previous":"M16-GAP-00289","next":"M16-GAP-00291"},"M16-GAP-00291":{"line":290,"offset":49271,"length":171,"previous":"M16-GAP-00290","next":"M16-GAP-00292"},"M16-GAP-00292":{"line":291,"offset":49442,"length":169,"previous":"M16-GAP-00291","next":"M16-GAP-00293"},"M16-GAP-00293":{"line":292,"offset":49611,"length":171,"previous":"M16-GAP-00292","next":"M16-GAP-00294"},"M16-GAP-00294":{"line":293,"offset":49782,"length":169,"previous":"M16-GAP-00293","next":"M16-GAP-00295"},"M16-GAP-00295":{"line":294,"offset":49951,"length":176,"previous":"M16-GAP-00294","next":"M16-GAP-00296"},"M16-GAP-00296":{"line":295,"offset":50127,"length":175,"previous":"M16-GAP-00295","next":"M16-GAP-00297"},"M16-GAP-00297":{"line":296,"offset":50302,"length":169,"previous":"M16-GAP-00296","next":"M16-GAP-00298"},"M16-GAP-00298":{"line":297,"offset":50471,"length":167,"previous":"M16-GAP-00297","next":"M16-GAP-00299"},"M16-GAP-00299":{"line":298,"offset":50638,"length":170,"previous":"M16-GAP-00298","next":"M16-GAP-00300"},"M16-GAP-00300":{"line":299,"offset":50808,"length":167,"previous":"M16-GAP-00299","next":"M16-GAP-00301"},"M16-GAP-00301":{"line":300,"offset":50975,"length":172,"previous":"M16-GAP-00300","next":"M16-GAP-00302"},"M16-GAP-00302":{"line":301,"offset":51147,"length":181,"previous":"M16-GAP-00301","next":"M16-GAP-00303"},"M16-GAP-00303":{"line":302,"offset":51328,"length":180,"previous":"M16-GAP-00302","next":"M16-GAP-00304"},"M16-GAP-00304":{"line":303,"offset":51508,"length":171,"previous":"M16-GAP-00303","next":"M16-GAP-00305"},"M16-GAP-00305":{"line":304,"offset":51679,"length":171,"previous":"M16-GAP-00304","next":"M16-GAP-00306"},"M16-GAP-00306":{"line":305,"offset":51850,"length":175,"previous":"M16-GAP-00305","next":"M16-GAP-00307"},"M16-GAP-00307":{"line":306,"offset":52025,"length":170,"previous":"M16-GAP-00306","next":"M16-GAP-00308"},"M16-GAP-00308":{"line":307,"offset":52195,"length":171,"previous":"M16-GAP-00307","next":"M16-GAP-00309"},"M16-GAP-00309":{"line":308,"offset":52366,"length":169,"previous":"M16-GAP-00308","next":"M16-GAP-00310"},"M16-GAP-00310":{"line":309,"offset":52535,"length":170,"previous":"M16-GAP-00309","next":"M16-GAP-00311"},"M16-GAP-00311":{"line":310,"offset":52705,"length":171,"previous":"M16-GAP-00310","next":"M16-GAP-00312"},"M16-GAP-00312":{"line":311,"offset":52876,"length":173,"previous":"M16-GAP-00311","next":"M16-GAP-00313"},"M16-GAP-00313":{"line":312,"offset":53049,"length":165,"previous":"M16-GAP-00312","next":"M16-GAP-00314"},"M16-GAP-00314":{"line":313,"offset":53214,"length":167,"previous":"M16-GAP-00313","next":"M16-GAP-00315"},"M16-GAP-00315":{"line":314,"offset":53381,"length":168,"previous":"M16-GAP-00314","next":"M16-GAP-00316"},"M16-GAP-00316":{"line":315,"offset":53549,"length":179,"previous":"M16-GAP-00315","next":"M16-GAP-00317"},"M16-GAP-00317":{"line":316,"offset":53728,"length":166,"previous":"M16-GAP-00316","next":"M16-GAP-00318"},"M16-GAP-00318":{"line":317,"offset":53894,"length":175,"previous":"M16-GAP-00317","next":"M16-GAP-00319"},"M16-GAP-00319":{"line":318,"offset":54069,"length":171,"previous":"M16-GAP-00318","next":"M16-GAP-00320"},"M16-GAP-00320":{"line":319,"offset":54240,"length":172,"previous":"M16-GAP-00319","next":"M16-GAP-00321"},"M16-GAP-00321":{"line":320,"offset":54412,"length":176,"previous":"M16-GAP-00320","next":"M16-GAP-00322"},"M16-GAP-00322":{"line":321,"offset":54588,"length":170,"previous":"M16-GAP-00321","next":"M16-GAP-00323"},"M16-GAP-00323":{"line":322,"offset":54758,"length":171,"previous":"M16-GAP-00322","next":"M16-GAP-00324"},"M16-GAP-00324":{"line":323,"offset":54929,"length":173,"previous":"M16-GAP-00323","next":"M16-GAP-00325"},"M16-GAP-00325":{"line":324,"offset":55102,"length":168,"previous":"M16-GAP-00324","next":"M16-GAP-00326"},"M16-GAP-00326":{"line":325,"offset":55270,"length":168,"previous":"M16-GAP-00325","next":"M16-GAP-00327"},"M16-GAP-00327":{"line":326,"offset":55438,"length":170,"previous":"M16-GAP-00326","next":"M16-GAP-00328"},"M16-GAP-00328":{"line":327,"offset":55608,"length":172,"previous":"M16-GAP-00327","next":"M16-GAP-00329"},"M16-GAP-00329":{"line":328,"offset":55780,"length":176,"previous":"M16-GAP-00328","next":"M16-GAP-00330"},"M16-GAP-00330":{"line":329,"offset":55956,"length":167,"previous":"M16-GAP-00329","next":"M16-GAP-00331"},"M16-GAP-00331":{"line":330,"offset":56123,"length":174,"previous":"M16-GAP-00330","next":"M16-GAP-00332"},"M16-GAP-00332":{"line":331,"offset":56297,"length":166,"previous":"M16-GAP-00331","next":"M16-GAP-00333"},"M16-GAP-00333":{"line":332,"offset":56463,"length":169,"previous":"M16-GAP-00332","next":"M16-GAP-00334"},"M16-GAP-00334":{"line":333,"offset":56632,"length":168,"previous":"M16-GAP-00333","next":"M16-GAP-00335"},"M16-GAP-00335":{"line":334,"offset":56800,"length":168,"previous":"M16-GAP-00334","next":"M16-GAP-00336"},"M16-GAP-00336":{"line":335,"offset":56968,"length":171,"previous":"M16-GAP-00335","next":"M16-GAP-00337"},"M16-GAP-00337":{"line":336,"offset":57139,"length":171,"previous":"M16-GAP-00336","next":"M16-GAP-00338"},"M16-GAP-00338":{"line":337,"offset":57310,"length":180,"previous":"M16-GAP-00337","next":"M16-GAP-00339"},"M16-GAP-00339":{"line":338,"offset":57490,"length":174,"previous":"M16-GAP-00338","next":"M16-GAP-00340"},"M16-GAP-00340":{"line":339,"offset":57664,"length":169,"previous":"M16-GAP-00339","next":"M16-GAP-00341"},"M16-GAP-00341":{"line":340,"offset":57833,"length":166,"previous":"M16-GAP-00340","next":"M16-GAP-00342"},"M16-GAP-00342":{"line":341,"offset":57999,"length":182,"previous":"M16-GAP-00341","next":"M16-GAP-00343"},"M16-GAP-00343":{"line":342,"offset":58181,"length":174,"previous":"M16-GAP-00342","next":"M16-GAP-00344"},"M16-GAP-00344":{"line":343,"offset":58355,"length":173,"previous":"M16-GAP-00343","next":"M16-GAP-00345"},"M16-GAP-00345":{"line":344,"offset":58528,"length":177,"previous":"M16-GAP-00344","next":"M16-GAP-00346"},"M16-GAP-00346":{"line":345,"offset":58705,"length":168,"previous":"M16-GAP-00345","next":"M16-GAP-00347"},"M16-GAP-00347":{"line":346,"offset":58873,"length":180,"previous":"M16-GAP-00346","next":"M16-GAP-00348"},"M16-GAP-00348":{"line":347,"offset":59053,"length":172,"previous":"M16-GAP-00347","next":"M16-GAP-00349"},"M16-GAP-00349":{"line":348,"offset":59225,"length":170,"previous":"M16-GAP-00348","next":"M16-GAP-00350"},"M16-GAP-00350":{"line":349,"offset":59395,"length":167,"previous":"M16-GAP-00349","next":"M16-GAP-00351"},"M16-GAP-00351":{"line":350,"offset":59562,"length":173,"previous":"M16-GAP-00350","next":"M16-GAP-00352"},"M16-GAP-00352":{"line":351,"offset":59735,"length":167,"previous":"M16-GAP-00351","next":"M16-GAP-00353"},"M16-GAP-00353":{"line":352,"offset":59902,"length":171,"previous":"M16-GAP-00352","next":"M16-GAP-00354"},"M16-GAP-00354":{"line":353,"offset":60073,"length":171,"previous":"M16-GAP-00353","next":"M16-GAP-00355"},"M16-GAP-00355":{"line":354,"offset":60244,"length":177,"previous":"M16-GAP-00354","next":"M16-GAP-00356"},"M16-GAP-00356":{"line":355,"offset":60421,"length":167,"previous":"M16-GAP-00355","next":"M16-GAP-00357"},"M16-GAP-00357":{"line":356,"offset":60588,"length":164,"previous":"M16-GAP-00356","next":"M16-GAP-00358"},"M16-GAP-00358":{"line":357,"offset":60752,"length":183,"previous":"M16-GAP-00357","next":"M16-GAP-00359"},"M16-GAP-00359":{"line":358,"offset":60935,"length":160,"previous":"M16-GAP-00358","next":"M16-GAP-00360"},"M16-GAP-00360":{"line":359,"offset":61095,"length":168,"previous":"M16-GAP-00359","next":"M16-GAP-00361"},"M16-GAP-00361":{"line":360,"offset":61263,"length":164,"previous":"M16-GAP-00360","next":"M16-GAP-00362"},"M16-GAP-00362":{"line":361,"offset":61427,"length":169,"previous":"M16-GAP-00361","next":"M16-GAP-00363"},"M16-GAP-00363":{"line":362,"offset":61596,"length":170,"previous":"M16-GAP-00362","next":"M16-GAP-00364"},"M16-GAP-00364":{"line":363,"offset":61766,"length":162,"previous":"M16-GAP-00363","next":"M16-GAP-00365"},"M16-GAP-00365":{"line":364,"offset":61928,"length":162,"previous":"M16-GAP-00364","next":"M16-GAP-00366"},"M16-GAP-00366":{"line":365,"offset":62090,"length":166,"previous":"M16-GAP-00365","next":"M16-GAP-00367"},"M16-GAP-00367":{"line":366,"offset":62256,"length":166,"previous":"M16-GAP-00366","next":"M16-GAP-00368"},"M16-GAP-00368":{"line":367,"offset":62422,"length":169,"previous":"M16-GAP-00367","next":"M16-GAP-00369"},"M16-GAP-00369":{"line":368,"offset":62591,"length":170,"previous":"M16-GAP-00368","next":"M16-GAP-00370"},"M16-GAP-00370":{"line":369,"offset":62761,"length":168,"previous":"M16-GAP-00369","next":"M16-GAP-00371"},"M16-GAP-00371":{"line":370,"offset":62929,"length":171,"previous":"M16-GAP-00370","next":"M16-GAP-00372"},"M16-GAP-00372":{"line":371,"offset":63100,"length":164,"previous":"M16-GAP-00371","next":"M16-GAP-00373"},"M16-GAP-00373":{"line":372,"offset":63264,"length":166,"previous":"M16-GAP-00372","next":"M16-GAP-00374"},"M16-GAP-00374":{"line":373,"offset":63430,"length":165,"previous":"M16-GAP-00373","next":"M16-GAP-00375"},"M16-GAP-00375":{"line":374,"offset":63595,"length":165,"previous":"M16-GAP-00374","next":"M16-GAP-00376"},"M16-GAP-00376":{"line":375,"offset":63760,"length":172,"previous":"M16-GAP-00375","next":"M16-GAP-00377"},"M16-GAP-00377":{"line":376,"offset":63932,"length":174,"previous":"M16-GAP-00376","next":"M16-GAP-00378"},"M16-GAP-00378":{"line":377,"offset":64106,"length":175,"previous":"M16-GAP-00377","next":"M16-GAP-00379"},"M16-GAP-00379":{"line":378,"offset":64281,"length":179,"previous":"M16-GAP-00378","next":"M16-GAP-00380"},"M16-GAP-00380":{"line":379,"offset":64460,"length":176,"previous":"M16-GAP-00379","next":"M16-GAP-00381"},"M16-GAP-00381":{"line":380,"offset":64636,"length":168,"previous":"M16-GAP-00380","next":"M16-GAP-00382"},"M16-GAP-00382":{"line":381,"offset":64804,"length":174,"previous":"M16-GAP-00381","next":"M16-GAP-00383"},"M16-GAP-00383":{"line":382,"offset":64978,"length":168,"previous":"M16-GAP-00382","next":"M16-GAP-00384"},"M16-GAP-00384":{"line":383,"offset":65146,"length":172,"previous":"M16-GAP-00383","next":"M16-GAP-00385"},"M16-GAP-00385":{"line":384,"offset":65318,"length":175,"previous":"M16-GAP-00384","next":"M16-GAP-00386"},"M16-GAP-00386":{"line":385,"offset":65493,"length":181,"previous":"M16-GAP-00385","next":"M16-GAP-00387"},"M16-GAP-00387":{"line":386,"offset":65674,"length":184,"previous":"M16-GAP-00386","next":"M16-GAP-00388"},"M16-GAP-00388":{"line":387,"offset":65858,"length":184,"previous":"M16-GAP-00387","next":"M16-GAP-00389"},"M16-GAP-00389":{"line":388,"offset":66042,"length":175,"previous":"M16-GAP-00388","next":"M16-GAP-00390"},"M16-GAP-00390":{"line":389,"offset":66217,"length":178,"previous":"M16-GAP-00389","next":"M16-GAP-00391"},"M16-GAP-00391":{"line":390,"offset":66395,"length":172,"previous":"M16-GAP-00390","next":"M16-GAP-00392"},"M16-GAP-00392":{"line":391,"offset":66567,"length":169,"previous":"M16-GAP-00391","next":"M16-GAP-00393"},"M16-GAP-00393":{"line":392,"offset":66736,"length":181,"previous":"M16-GAP-00392","next":"M16-GAP-00394"},"M16-GAP-00394":{"line":393,"offset":66917,"length":179,"previous":"M16-GAP-00393","next":"M16-GAP-00395"},"M16-GAP-00395":{"line":394,"offset":67096,"length":170,"previous":"M16-GAP-00394","next":"M16-GAP-00396"},"M16-GAP-00396":{"line":395,"offset":67266,"length":175,"previous":"M16-GAP-00395","next":"M16-GAP-00397"},"M16-GAP-00397":{"line":396,"offset":67441,"length":178,"previous":"M16-GAP-00396","next":"M16-GAP-00398"},"M16-GAP-00398":{"line":397,"offset":67619,"length":184,"previous":"M16-GAP-00397","next":"M16-GAP-00399"},"M16-GAP-00399":{"line":398,"offset":67803,"length":186,"previous":"M16-GAP-00398","next":"M16-GAP-00400"},"M16-GAP-00400":{"line":399,"offset":67989,"length":164,"previous":"M16-GAP-00399","next":"M16-GAP-00401"},"M16-GAP-00401":{"line":400,"offset":68153,"length":174,"previous":"M16-GAP-00400","next":"M16-GAP-00402"},"M16-GAP-00402":{"line":401,"offset":68327,"length":165,"previous":"M16-GAP-00401","next":"M16-GAP-00403"},"M16-GAP-00403":{"line":402,"offset":68492,"length":164,"previous":"M16-GAP-00402","next":"M16-GAP-00404"},"M16-GAP-00404":{"line":403,"offset":68656,"length":169,"previous":"M16-GAP-00403","next":"M16-GAP-00405"},"M16-GAP-00405":{"line":404,"offset":68825,"length":165,"previous":"M16-GAP-00404","next":"M16-GAP-00406"},"M16-GAP-00406":{"line":405,"offset":68990,"length":168,"previous":"M16-GAP-00405","next":"M16-GAP-00407"},"M16-GAP-00407":{"line":406,"offset":69158,"length":169,"previous":"M16-GAP-00406","next":"M16-GAP-00408"},"M16-GAP-00408":{"line":407,"offset":69327,"length":171,"previous":"M16-GAP-00407","next":"M16-GAP-00409"},"M16-GAP-00409":{"line":408,"offset":69498,"length":167,"previous":"M16-GAP-00408","next":"M16-GAP-00410"},"M16-GAP-00410":{"line":409,"offset":69665,"length":168,"previous":"M16-GAP-00409","next":"M16-GAP-00411"},"M16-GAP-00411":{"line":410,"offset":69833,"length":172,"previous":"M16-GAP-00410","next":"M16-GAP-00412"},"M16-GAP-00412":{"line":411,"offset":70005,"length":174,"previous":"M16-GAP-00411","next":"M16-GAP-00413"},"M16-GAP-00413":{"line":412,"offset":70179,"length":177,"previous":"M16-GAP-00412","next":"M16-GAP-00414"},"M16-GAP-00414":{"line":413,"offset":70356,"length":175,"previous":"M16-GAP-00413","next":"M16-GAP-00415"},"M16-GAP-00415":{"line":414,"offset":70531,"length":177,"previous":"M16-GAP-00414","next":"M16-GAP-00416"},"M16-GAP-00416":{"line":415,"offset":70708,"length":174,"previous":"M16-GAP-00415","next":"M16-GAP-00417"},"M16-GAP-00417":{"line":416,"offset":70882,"length":177,"previous":"M16-GAP-00416","next":"M16-GAP-00418"},"M16-GAP-00418":{"line":417,"offset":71059,"length":180,"previous":"M16-GAP-00417","next":"M16-GAP-00419"},"M16-GAP-00419":{"line":418,"offset":71239,"length":176,"previous":"M16-GAP-00418","next":"M16-GAP-00420"},"M16-GAP-00420":{"line":419,"offset":71415,"length":183,"previous":"M16-GAP-00419","next":"M16-GAP-00421"},"M16-GAP-00421":{"line":420,"offset":71598,"length":180,"previous":"M16-GAP-00420","next":"M16-GAP-00422"},"M16-GAP-00422":{"line":421,"offset":71778,"length":171,"previous":"M16-GAP-00421","next":"M16-GAP-00423"},"M16-GAP-00423":{"line":422,"offset":71949,"length":165,"previous":"M16-GAP-00422","next":"M16-GAP-00424"},"M16-GAP-00424":{"line":423,"offset":72114,"length":164,"previous":"M16-GAP-00423","next":"M16-GAP-00425"},"M16-GAP-00425":{"line":424,"offset":72278,"length":169,"previous":"M16-GAP-00424","next":"M16-GAP-00426"},"M16-GAP-00426":{"line":425,"offset":72447,"length":163,"previous":"M16-GAP-00425","next":"M16-GAP-00427"},"M16-GAP-00427":{"line":426,"offset":72610,"length":173,"previous":"M16-GAP-00426","next":"M16-GAP-00428"},"M16-GAP-00428":{"line":427,"offset":72783,"length":165,"previous":"M16-GAP-00427","next":"M16-GAP-00429"},"M16-GAP-00429":{"line":428,"offset":72948,"length":166,"previous":"M16-GAP-00428","next":"M16-GAP-00430"},"M16-GAP-00430":{"line":429,"offset":73114,"length":173,"previous":"M16-GAP-00429","next":"M16-GAP-00431"},"M16-GAP-00431":{"line":430,"offset":73287,"length":172,"previous":"M16-GAP-00430","next":"M16-GAP-00432"},"M16-GAP-00432":{"line":431,"offset":73459,"length":165,"previous":"M16-GAP-00431","next":"M16-GAP-00433"},"M16-GAP-00433":{"line":432,"offset":73624,"length":181,"previous":"M16-GAP-00432","next":"M16-GAP-00434"},"M16-GAP-00434":{"line":433,"offset":73805,"length":165,"previous":"M16-GAP-00433","next":"M16-GAP-00435"},"M16-GAP-00435":{"line":434,"offset":73970,"length":167,"previous":"M16-GAP-00434","next":"M16-GAP-00436"},"M16-GAP-00436":{"line":435,"offset":74137,"length":163,"previous":"M16-GAP-00435","next":"M16-GAP-00437"},"M16-GAP-00437":{"line":436,"offset":74300,"length":164,"previous":"M16-GAP-00436","next":"M16-GAP-00438"},"M16-GAP-00438":{"line":437,"offset":74464,"length":176,"previous":"M16-GAP-00437","next":"M16-GAP-00439"},"M16-GAP-00439":{"line":438,"offset":74640,"length":169,"previous":"M16-GAP-00438","next":"M16-GAP-00440"},"M16-GAP-00440":{"line":439,"offset":74809,"length":169,"previous":"M16-GAP-00439","next":"M16-GAP-00441"},"M16-GAP-00441":{"line":440,"offset":74978,"length":170,"previous":"M16-GAP-00440","next":"M16-GAP-00442"},"M16-GAP-00442":{"line":441,"offset":75148,"length":167,"previous":"M16-GAP-00441","next":"M16-GAP-00443"},"M16-GAP-00443":{"line":442,"offset":75315,"length":172,"previous":"M16-GAP-00442","next":"M16-GAP-00444"},"M16-GAP-00444":{"line":443,"offset":75487,"length":167,"previous":"M16-GAP-00443","next":"M16-GAP-00445"},"M16-GAP-00445":{"line":444,"offset":75654,"length":183,"previous":"M16-GAP-00444","next":"M16-GAP-00446"},"M16-GAP-00446":{"line":445,"offset":75837,"length":181,"previous":"M16-GAP-00445","next":"M16-GAP-00447"},"M16-GAP-00447":{"line":446,"offset":76018,"length":166,"previous":"M16-GAP-00446","next":"M16-GAP-00448"},"M16-GAP-00448":{"line":447,"offset":76184,"length":178,"previous":"M16-GAP-00447","next":"M16-GAP-00449"},"M16-GAP-00449":{"line":448,"offset":76362,"length":168,"previous":"M16-GAP-00448","next":"M16-GAP-00450"},"M16-GAP-00450":{"line":449,"offset":76530,"length":184,"previous":"M16-GAP-00449","next":"M16-GAP-00451"},"M16-GAP-00451":{"line":450,"offset":76714,"length":185,"previous":"M16-GAP-00450","next":"M16-GAP-00452"},"M16-GAP-00452":{"line":451,"offset":76899,"length":181,"previous":"M16-GAP-00451","next":"M16-GAP-00453"},"M16-GAP-00453":{"line":452,"offset":77080,"length":171,"previous":"M16-GAP-00452","next":"M16-GAP-00454"},"M16-GAP-00454":{"line":453,"offset":77251,"length":175,"previous":"M16-GAP-00453","next":"M16-GAP-00455"},"M16-GAP-00455":{"line":454,"offset":77426,"length":169,"previous":"M16-GAP-00454","next":"M16-GAP-00456"},"M16-GAP-00456":{"line":455,"offset":77595,"length":186,"previous":"M16-GAP-00455","next":"M16-GAP-00457"},"M16-GAP-00457":{"line":456,"offset":77781,"length":188,"previous":"M16-GAP-00456","next":"M16-GAP-00458"},"M16-GAP-00458":{"line":457,"offset":77969,"length":186,"previous":"M16-GAP-00457","next":"M16-GAP-00459"},"M16-GAP-00459":{"line":458,"offset":78155,"length":175,"previous":"M16-GAP-00458","next":"M16-GAP-00460"},"M16-GAP-00460":{"line":459,"offset":78330,"length":177,"previous":"M16-GAP-00459","next":"M16-GAP-00461"},"M16-GAP-00461":{"line":460,"offset":78507,"length":170,"previous":"M16-GAP-00460","next":"M16-GAP-00462"},"M16-GAP-00462":{"line":461,"offset":78677,"length":172,"previous":"M16-GAP-00461","next":"M16-GAP-00463"},"M16-GAP-00463":{"line":462,"offset":78849,"length":171,"previous":"M16-GAP-00462","next":"M16-GAP-00464"},"M16-GAP-00464":{"line":463,"offset":79020,"length":165,"previous":"M16-GAP-00463","next":"M16-GAP-00465"},"M16-GAP-00465":{"line":464,"offset":79185,"length":163,"previous":"M16-GAP-00464","next":"M16-GAP-00466"},"M16-GAP-00466":{"line":465,"offset":79348,"length":171,"previous":"M16-GAP-00465","next":"M16-GAP-00467"},"M16-GAP-00467":{"line":466,"offset":79519,"length":161,"previous":"M16-GAP-00466","next":"M16-GAP-00468"},"M16-GAP-00468":{"line":467,"offset":79680,"length":166,"previous":"M16-GAP-00467","next":"M16-GAP-00469"},"M16-GAP-00469":{"line":468,"offset":79846,"length":171,"previous":"M16-GAP-00468","next":"M16-GAP-00470"},"M16-GAP-00470":{"line":469,"offset":80017,"length":164,"previous":"M16-GAP-00469","next":"M16-GAP-00471"},"M16-GAP-00471":{"line":470,"offset":80181,"length":169,"previous":"M16-GAP-00470","next":"M16-GAP-00472"},"M16-GAP-00472":{"line":471,"offset":80350,"length":172,"previous":"M16-GAP-00471","next":"M16-GAP-00473"},"M16-GAP-00473":{"line":472,"offset":80522,"length":161,"previous":"M16-GAP-00472","next":"M16-GAP-00474"},"M16-GAP-00474":{"line":473,"offset":80683,"length":169,"previous":"M16-GAP-00473","next":"M16-GAP-00475"},"M16-GAP-00475":{"line":474,"offset":80852,"length":176,"previous":"M16-GAP-00474","next":"M16-GAP-00476"},"M16-GAP-00476":{"line":475,"offset":81028,"length":180,"previous":"M16-GAP-00475","next":"M16-GAP-00477"},"M16-GAP-00477":{"line":476,"offset":81208,"length":160,"previous":"M16-GAP-00476","next":"M16-GAP-00478"},"M16-GAP-00478":{"line":477,"offset":81368,"length":184,"previous":"M16-GAP-00477","next":"M16-GAP-00479"},"M16-GAP-00479":{"line":478,"offset":81552,"length":183,"previous":"M16-GAP-00478","next":"M16-GAP-00480"},"M16-GAP-00480":{"line":479,"offset":81735,"length":183,"previous":"M16-GAP-00479","next":"M16-GAP-00481"},"M16-GAP-00481":{"line":480,"offset":81918,"length":182,"previous":"M16-GAP-00480","next":"M16-GAP-00482"},"M16-GAP-00482":{"line":481,"offset":82100,"length":181,"previous":"M16-GAP-00481","next":"M16-GAP-00483"},"M16-GAP-00483":{"line":482,"offset":82281,"length":167,"previous":"M16-GAP-00482","next":"M16-GAP-00484"},"M16-GAP-00484":{"line":483,"offset":82448,"length":163,"previous":"M16-GAP-00483","next":"M16-GAP-00485"},"M16-GAP-00485":{"line":484,"offset":82611,"length":167,"previous":"M16-GAP-00484","next":"M16-GAP-00486"},"M16-GAP-00486":{"line":485,"offset":82778,"length":168,"previous":"M16-GAP-00485","next":"M16-GAP-00487"},"M16-GAP-00487":{"line":486,"offset":82946,"length":170,"previous":"M16-GAP-00486","next":"M16-GAP-00488"},"M16-GAP-00488":{"line":487,"offset":83116,"length":175,"previous":"M16-GAP-00487","next":"M16-GAP-00489"},"M16-GAP-00489":{"line":488,"offset":83291,"length":168,"previous":"M16-GAP-00488","next":"M16-GAP-00490"},"M16-GAP-00490":{"line":489,"offset":83459,"length":168,"previous":"M16-GAP-00489","next":"M16-GAP-00491"},"M16-GAP-00491":{"line":490,"offset":83627,"length":167,"previous":"M16-GAP-00490","next":"M16-GAP-00492"},"M16-GAP-00492":{"line":491,"offset":83794,"length":172,"previous":"M16-GAP-00491","next":"M16-GAP-00493"},"M16-GAP-00493":{"line":492,"offset":83966,"length":170,"previous":"M16-GAP-00492","next":"M16-GAP-00494"},"M16-GAP-00494":{"line":493,"offset":84136,"length":167,"previous":"M16-GAP-00493","next":"M16-GAP-00495"},"M16-GAP-00495":{"line":494,"offset":84303,"length":171,"previous":"M16-GAP-00494","next":"M16-GAP-00496"},"M16-GAP-00496":{"line":495,"offset":84474,"length":165,"previous":"M16-GAP-00495","next":"M16-GAP-00497"},"M16-GAP-00497":{"line":496,"offset":84639,"length":167,"previous":"M16-GAP-00496","next":"M16-GAP-00498"},"M16-GAP-00498":{"line":497,"offset":84806,"length":169,"previous":"M16-GAP-00497","next":"M16-GAP-00499"},"M16-GAP-00499":{"line":498,"offset":84975,"length":175,"previous":"M16-GAP-00498","next":"M16-GAP-00500"},"M16-GAP-00500":{"line":499,"offset":85150,"length":163,"previous":"M16-GAP-00499","next":"M16-GAP-00501"},"M16-GAP-00501":{"line":500,"offset":85313,"length":170,"previous":"M16-GAP-00500","next":"M16-GAP-00502"},"M16-GAP-00502":{"line":501,"offset":85483,"length":168,"previous":"M16-GAP-00501","next":"M16-GAP-00503"},"M16-GAP-00503":{"line":502,"offset":85651,"length":170,"previous":"M16-GAP-00502","next":"M16-GAP-00504"},"M16-GAP-00504":{"line":503,"offset":85821,"length":161,"previous":"M16-GAP-00503","next":"M16-GAP-00505"},"M16-GAP-00505":{"line":504,"offset":85982,"length":172,"previous":"M16-GAP-00504","next":"M16-GAP-00506"},"M16-GAP-00506":{"line":505,"offset":86154,"length":174,"previous":"M16-GAP-00505","next":"M16-GAP-00507"},"M16-GAP-00507":{"line":506,"offset":86328,"length":162,"previous":"M16-GAP-00506","next":"M16-GAP-00508"},"M16-GAP-00508":{"line":507,"offset":86490,"length":166,"previous":"M16-GAP-00507","next":"M16-GAP-00509"},"M16-GAP-00509":{"line":508,"offset":86656,"length":173,"previous":"M16-GAP-00508","next":"M16-GAP-00510"},"M16-GAP-00510":{"line":509,"offset":86829,"length":167,"previous":"M16-GAP-00509","next":"M16-GAP-00511"},"M16-GAP-00511":{"line":510,"offset":86996,"length":167,"previous":"M16-GAP-00510","next":"M16-GAP-00512"},"M16-GAP-00512":{"line":511,"offset":87163,"length":168,"previous":"M16-GAP-00511","next":"M16-GAP-00513"},"M16-GAP-00513":{"line":512,"offset":87331,"length":168,"previous":"M16-GAP-00512","next":"M16-GAP-00514"},"M16-GAP-00514":{"line":513,"offset":87499,"length":171,"previous":"M16-GAP-00513","next":"M16-GAP-00515"},"M16-GAP-00515":{"line":514,"offset":87670,"length":186,"previous":"M16-GAP-00514","next":"M16-GAP-00516"},"M16-GAP-00516":{"line":515,"offset":87856,"length":184,"previous":"M16-GAP-00515","next":"M16-GAP-00517"},"M16-GAP-00517":{"line":516,"offset":88040,"length":172,"previous":"M16-GAP-00516","next":"M16-GAP-00518"},"M16-GAP-00518":{"line":517,"offset":88212,"length":171,"previous":"M16-GAP-00517","next":"M16-GAP-00519"},"M16-GAP-00519":{"line":518,"offset":88383,"length":164,"previous":"M16-GAP-00518","next":"M16-GAP-00520"},"M16-GAP-00520":{"line":519,"offset":88547,"length":162,"previous":"M16-GAP-00519","next":"M16-GAP-00521"},"M16-GAP-00521":{"line":520,"offset":88709,"length":167,"previous":"M16-GAP-00520","next":"M16-GAP-00522"},"M16-GAP-00522":{"line":521,"offset":88876,"length":172,"previous":"M16-GAP-00521","next":"M16-GAP-00523"},"M16-GAP-00523":{"line":522,"offset":89048,"length":165,"previous":"M16-GAP-00522","next":"M16-GAP-00524"},"M16-GAP-00524":{"line":523,"offset":89213,"length":170,"previous":"M16-GAP-00523","next":"M16-GAP-00525"},"M16-GAP-00525":{"line":524,"offset":89383,"length":173,"previous":"M16-GAP-00524","next":"M16-GAP-00526"},"M16-GAP-00526":{"line":525,"offset":89556,"length":161,"previous":"M16-GAP-00525","next":"M16-GAP-00527"},"M16-GAP-00527":{"line":526,"offset":89717,"length":175,"previous":"M16-GAP-00526","next":"M16-GAP-00528"},"M16-GAP-00528":{"line":527,"offset":89892,"length":168,"previous":"M16-GAP-00527","next":"M16-GAP-00529"},"M16-GAP-00529":{"line":528,"offset":90060,"length":169,"previous":"M16-GAP-00528","next":"M16-GAP-00530"},"M16-GAP-00530":{"line":529,"offset":90229,"length":169,"previous":"M16-GAP-00529","next":"M16-GAP-00531"},"M16-GAP-00531":{"line":530,"offset":90398,"length":171,"previous":"M16-GAP-00530","next":"M16-GAP-00532"},"M16-GAP-00532":{"line":531,"offset":90569,"length":176,"previous":"M16-GAP-00531","next":"M16-GAP-00533"},"M16-GAP-00533":{"line":532,"offset":90745,"length":169,"previous":"M16-GAP-00532","next":"M16-GAP-00534"},"M16-GAP-00534":{"line":533,"offset":90914,"length":171,"previous":"M16-GAP-00533","next":"M16-GAP-00535"},"M16-GAP-00535":{"line":534,"offset":91085,"length":166,"previous":"M16-GAP-00534","next":"M16-GAP-00536"},"M16-GAP-00536":{"line":535,"offset":91251,"length":178,"previous":"M16-GAP-00535","next":"M16-GAP-00537"},"M16-GAP-00537":{"line":536,"offset":91429,"length":180,"previous":"M16-GAP-00536","next":"M16-GAP-00538"},"M16-GAP-00538":{"line":537,"offset":91609,"length":163,"previous":"M16-GAP-00537","next":"M16-GAP-00539"},"M16-GAP-00539":{"line":538,"offset":91772,"length":167,"previous":"M16-GAP-00538","next":"M16-GAP-00540"},"M16-GAP-00540":{"line":539,"offset":91939,"length":169,"previous":"M16-GAP-00539","next":"M16-GAP-00541"},"M16-GAP-00541":{"line":540,"offset":92108,"length":174,"previous":"M16-GAP-00540","next":"M16-GAP-00542"},"M16-GAP-00542":{"line":541,"offset":92282,"length":168,"previous":"M16-GAP-00541","next":"M16-GAP-00543"},"M16-GAP-00543":{"line":542,"offset":92450,"length":175,"previous":"M16-GAP-00542","next":"M16-GAP-00544"},"M16-GAP-00544":{"line":543,"offset":92625,"length":170,"previous":"M16-GAP-00543","next":"M16-GAP-00545"},"M16-GAP-00545":{"line":544,"offset":92795,"length":175,"previous":"M16-GAP-00544","next":"M16-GAP-00546"},"M16-GAP-00546":{"line":545,"offset":92970,"length":162,"previous":"M16-GAP-00545","next":"M16-GAP-00547"},"M16-GAP-00547":{"line":546,"offset":93132,"length":171,"previous":"M16-GAP-00546","next":"M16-GAP-00548"},"M16-GAP-00548":{"line":547,"offset":93303,"length":174,"previous":"M16-GAP-00547","next":"M16-GAP-00549"},"M16-GAP-00549":{"line":548,"offset":93477,"length":177,"previous":"M16-GAP-00548","next":"M16-GAP-00550"},"M16-GAP-00550":{"line":549,"offset":93654,"length":169,"previous":"M16-GAP-00549","next":"M16-GAP-00551"},"M16-GAP-00551":{"line":550,"offset":93823,"length":165,"previous":"M16-GAP-00550","next":"M16-GAP-00552"},"M16-GAP-00552":{"line":551,"offset":93988,"length":177,"previous":"M16-GAP-00551","next":"M16-GAP-00553"},"M16-GAP-00553":{"line":552,"offset":94165,"length":177,"previous":"M16-GAP-00552","next":"M16-GAP-00554"},"M16-GAP-00554":{"line":553,"offset":94342,"length":189,"previous":"M16-GAP-00553","next":"M16-GAP-00555"},"M16-GAP-00555":{"line":554,"offset":94531,"length":180,"previous":"M16-GAP-00554","next":"M16-GAP-00556"},"M16-GAP-00556":{"line":555,"offset":94711,"length":185,"previous":"M16-GAP-00555","next":"M16-GAP-00557"},"M16-GAP-00557":{"line":556,"offset":94896,"length":175,"previous":"M16-GAP-00556","next":"M16-GAP-00558"},"M16-GAP-00558":{"line":557,"offset":95071,"length":167,"previous":"M16-GAP-00557","next":"M16-GAP-00559"},"M16-GAP-00559":{"line":558,"offset":95238,"length":158,"previous":"M16-GAP-00558","next":"M16-GAP-00560"},"M16-GAP-00560":{"line":559,"offset":95396,"length":158,"previous":"M16-GAP-00559","next":"M16-GAP-00561"},"M16-GAP-00561":{"line":560,"offset":95554,"length":166,"previous":"M16-GAP-00560","next":"M16-GAP-00562"},"M16-GAP-00562":{"line":561,"offset":95720,"length":163,"previous":"M16-GAP-00561","next":"M16-GAP-00563"},"M16-GAP-00563":{"line":562,"offset":95883,"length":163,"previous":"M16-GAP-00562","next":"M16-GAP-00564"},"M16-GAP-00564":{"line":563,"offset":96046,"length":166,"previous":"M16-GAP-00563","next":"M16-GAP-00565"},"M16-GAP-00565":{"line":564,"offset":96212,"length":167,"previous":"M16-GAP-00564","next":"M16-GAP-00566"},"M16-GAP-00566":{"line":565,"offset":96379,"length":168,"previous":"M16-GAP-00565","next":"M16-GAP-00567"},"M16-GAP-00567":{"line":566,"offset":96547,"length":177,"previous":"M16-GAP-00566","next":"M16-GAP-00568"},"M16-GAP-00568":{"line":567,"offset":96724,"length":177,"previous":"M16-GAP-00567","next":"M16-GAP-00569"},"M16-GAP-00569":{"line":568,"offset":96901,"length":183,"previous":"M16-GAP-00568","next":"M16-GAP-00570"},"M16-GAP-00570":{"line":569,"offset":97084,"length":184,"previous":"M16-GAP-00569","next":"M16-GAP-00571"},"M16-GAP-00571":{"line":570,"offset":97268,"length":180,"previous":"M16-GAP-00570","next":"M16-GAP-00572"},"M16-GAP-00572":{"line":571,"offset":97448,"length":184,"previous":"M16-GAP-00571","next":"M16-GAP-00573"},"M16-GAP-00573":{"line":572,"offset":97632,"length":178,"previous":"M16-GAP-00572","next":"M16-GAP-00574"},"M16-GAP-00574":{"line":573,"offset":97810,"length":182,"previous":"M16-GAP-00573","next":"M16-GAP-00575"},"M16-GAP-00575":{"line":574,"offset":97992,"length":185,"previous":"M16-GAP-00574","next":"M16-GAP-00576"},"M16-GAP-00576":{"line":575,"offset":98177,"length":180,"previous":"M16-GAP-00575","next":"M16-GAP-00577"},"M16-GAP-00577":{"line":576,"offset":98357,"length":178,"previous":"M16-GAP-00576","next":"M16-GAP-00578"},"M16-GAP-00578":{"line":577,"offset":98535,"length":183,"previous":"M16-GAP-00577","next":"M16-GAP-00579"},"M16-GAP-00579":{"line":578,"offset":98718,"length":183,"previous":"M16-GAP-00578","next":"M16-GAP-00580"},"M16-GAP-00580":{"line":579,"offset":98901,"length":182,"previous":"M16-GAP-00579","next":"M16-GAP-00581"},"M16-GAP-00581":{"line":580,"offset":99083,"length":179,"previous":"M16-GAP-00580","next":"M16-GAP-00582"},"M16-GAP-00582":{"line":581,"offset":99262,"length":186,"previous":"M16-GAP-00581","next":"M16-GAP-00583"},"M16-GAP-00583":{"line":582,"offset":99448,"length":186,"previous":"M16-GAP-00582","next":"M16-GAP-00584"},"M16-GAP-00584":{"line":583,"offset":99634,"length":181,"previous":"M16-GAP-00583","next":"M16-GAP-00585"},"M16-GAP-00585":{"line":584,"offset":99815,"length":183,"previous":"M16-GAP-00584","next":"M16-GAP-00586"},"M16-GAP-00586":{"line":585,"offset":99998,"length":175,"previous":"M16-GAP-00585","next":"M16-GAP-00587"},"M16-GAP-00587":{"line":586,"offset":100173,"length":178,"previous":"M16-GAP-00586","next":"M16-GAP-00588"},"M16-GAP-00588":{"line":587,"offset":100351,"length":171,"previous":"M16-GAP-00587","next":"M16-GAP-00589"},"M16-GAP-00589":{"line":588,"offset":100522,"length":175,"previous":"M16-GAP-00588","next":"M16-GAP-00590"},"M16-GAP-00590":{"line":589,"offset":100697,"length":173,"previous":"M16-GAP-00589","next":"M16-GAP-00591"},"M16-GAP-00591":{"line":590,"offset":100870,"length":177,"previous":"M16-GAP-00590","next":"M16-GAP-00592"},"M16-GAP-00592":{"line":591,"offset":101047,"length":174,"previous":"M16-GAP-00591","next":"M16-GAP-00593"},"M16-GAP-00593":{"line":592,"offset":101221,"length":181,"previous":"M16-GAP-00592","next":"M16-GAP-00594"},"M16-GAP-00594":{"line":593,"offset":101402,"length":183,"previous":"M16-GAP-00593","next":"M16-GAP-00595"},"M16-GAP-00595":{"line":594,"offset":101585,"length":189,"previous":"M16-GAP-00594","next":"M16-GAP-00596"},"M16-GAP-00596":{"line":595,"offset":101774,"length":186,"previous":"M16-GAP-00595","next":"M16-GAP-00597"},"M16-GAP-00597":{"line":596,"offset":101960,"length":182,"previous":"M16-GAP-00596","next":"M16-GAP-00598"},"M16-GAP-00598":{"line":597,"offset":102142,"length":179,"previous":"M16-GAP-00597","next":"M16-GAP-00599"},"M16-GAP-00599":{"line":598,"offset":102321,"length":171,"previous":"M16-GAP-00598","next":"M16-GAP-00600"},"M16-GAP-00600":{"line":599,"offset":102492,"length":168,"previous":"M16-GAP-00599","next":"M16-GAP-00601"},"M16-GAP-00601":{"line":600,"offset":102660,"length":172,"previous":"M16-GAP-00600","next":"M16-GAP-00602"},"M16-GAP-00602":{"line":601,"offset":102832,"length":171,"previous":"M16-GAP-00601","next":"M16-GAP-00603"},"M16-GAP-00603":{"line":602,"offset":103003,"length":169,"previous":"M16-GAP-00602","next":"M16-GAP-00604"},"M16-GAP-00604":{"line":603,"offset":103172,"length":162,"previous":"M16-GAP-00603","next":"M16-GAP-00605"},"M16-GAP-00605":{"line":604,"offset":103334,"length":162,"previous":"M16-GAP-00604","next":"M16-GAP-00606"},"M16-GAP-00606":{"line":605,"offset":103496,"length":169,"previous":"M16-GAP-00605","next":"M16-GAP-00607"},"M16-GAP-00607":{"line":606,"offset":103665,"length":175,"previous":"M16-GAP-00606","next":"M16-GAP-00608"},"M16-GAP-00608":{"line":607,"offset":103840,"length":163,"previous":"M16-GAP-00607","next":"M16-GAP-00609"},"M16-GAP-00609":{"line":608,"offset":104003,"length":174,"previous":"M16-GAP-00608","next":"M16-GAP-00610"},"M16-GAP-00610":{"line":609,"offset":104177,"length":163,"previous":"M16-GAP-00609","next":"M16-GAP-00611"},"M16-GAP-00611":{"line":610,"offset":104340,"length":169,"previous":"M16-GAP-00610","next":"M16-GAP-00612"},"M16-GAP-00612":{"line":611,"offset":104509,"length":174,"previous":"M16-GAP-00611","next":"M16-GAP-00613"},"M16-GAP-00613":{"line":612,"offset":104683,"length":163,"previous":"M16-GAP-00612","next":"M16-GAP-00614"},"M16-GAP-00614":{"line":613,"offset":104846,"length":165,"previous":"M16-GAP-00613","next":"M16-GAP-00615"},"M16-GAP-00615":{"line":614,"offset":105011,"length":175,"previous":"M16-GAP-00614","next":"M16-GAP-00616"},"M16-GAP-00616":{"line":615,"offset":105186,"length":175,"previous":"M16-GAP-00615","next":"M16-GAP-00617"},"M16-GAP-00617":{"line":616,"offset":105361,"length":169,"previous":"M16-GAP-00616","next":"M16-GAP-00618"},"M16-GAP-00618":{"line":617,"offset":105530,"length":160,"previous":"M16-GAP-00617","next":"M16-GAP-00619"},"M16-GAP-00619":{"line":618,"offset":105690,"length":164,"previous":"M16-GAP-00618","next":"M16-GAP-00620"},"M16-GAP-00620":{"line":619,"offset":105854,"length":170,"previous":"M16-GAP-00619","next":"M16-GAP-00621"},"M16-GAP-00621":{"line":620,"offset":106024,"length":162,"previous":"M16-GAP-00620","next":"M16-GAP-00622"},"M16-GAP-00622":{"line":621,"offset":106186,"length":164,"previous":"M16-GAP-00621","next":"M16-GAP-00623"},"M16-GAP-00623":{"line":622,"offset":106350,"length":163,"previous":"M16-GAP-00622","next":"M16-GAP-00624"},"M16-GAP-00624":{"line":623,"offset":106513,"length":162,"previous":"M16-GAP-00623","next":"M16-GAP-00625"},"M16-GAP-00625":{"line":624,"offset":106675,"length":176,"previous":"M16-GAP-00624","next":"M16-GAP-00626"},"M16-GAP-00626":{"line":625,"offset":106851,"length":168,"previous":"M16-GAP-00625","next":"M16-GAP-00627"},"M16-GAP-00627":{"line":626,"offset":107019,"length":162,"previous":"M16-GAP-00626","next":"M16-GAP-00628"},"M16-GAP-00628":{"line":627,"offset":107181,"length":166,"previous":"M16-GAP-00627","next":"M16-GAP-00629"},"M16-GAP-00629":{"line":628,"offset":107347,"length":171,"previous":"M16-GAP-00628","next":"M16-GAP-00630"},"M16-GAP-00630":{"line":629,"offset":107518,"length":166,"previous":"M16-GAP-00629","next":"M16-GAP-00631"},"M16-GAP-00631":{"line":630,"offset":107684,"length":167,"previous":"M16-GAP-00630","next":"M16-GAP-00632"},"M16-GAP-00632":{"line":631,"offset":107851,"length":168,"previous":"M16-GAP-00631","next":"M16-GAP-00633"},"M16-GAP-00633":{"line":632,"offset":108019,"length":178,"previous":"M16-GAP-00632","next":"M16-GAP-00634"},"M16-GAP-00634":{"line":633,"offset":108197,"length":168,"previous":"M16-GAP-00633","next":"M16-GAP-00635"},"M16-GAP-00635":{"line":634,"offset":108365,"length":166,"previous":"M16-GAP-00634","next":"M16-GAP-00636"},"M16-GAP-00636":{"line":635,"offset":108531,"length":167,"previous":"M16-GAP-00635","next":"M16-GAP-00637"},"M16-GAP-00637":{"line":636,"offset":108698,"length":172,"previous":"M16-GAP-00636","next":"M16-GAP-00638"},"M16-GAP-00638":{"line":637,"offset":108870,"length":169,"previous":"M16-GAP-00637","next":"M16-GAP-00639"},"M16-GAP-00639":{"line":638,"offset":109039,"length":165,"previous":"M16-GAP-00638","next":"M16-GAP-00640"},"M16-GAP-00640":{"line":639,"offset":109204,"length":166,"previous":"M16-GAP-00639","next":"M16-GAP-00641"},"M16-GAP-00641":{"line":640,"offset":109370,"length":168,"previous":"M16-GAP-00640","next":"M16-GAP-00642"},"M16-GAP-00642":{"line":641,"offset":109538,"length":166,"previous":"M16-GAP-00641","next":"M16-GAP-00643"},"M16-GAP-00643":{"line":642,"offset":109704,"length":167,"previous":"M16-GAP-00642","next":"M16-GAP-00644"},"M16-GAP-00644":{"line":643,"offset":109871,"length":171,"previous":"M16-GAP-00643","next":"M16-GAP-00645"},"M16-GAP-00645":{"line":644,"offset":110042,"length":165,"previous":"M16-GAP-00644","next":"M16-GAP-00646"},"M16-GAP-00646":{"line":645,"offset":110207,"length":166,"previous":"M16-GAP-00645","next":"M16-GAP-00647"},"M16-GAP-00647":{"line":646,"offset":110373,"length":168,"previous":"M16-GAP-00646","next":"M16-GAP-00648"},"M16-GAP-00648":{"line":647,"offset":110541,"length":166,"previous":"M16-GAP-00647","next":"M16-GAP-00649"},"M16-GAP-00649":{"line":648,"offset":110707,"length":167,"previous":"M16-GAP-00648","next":"M16-GAP-00650"},"M16-GAP-00650":{"line":649,"offset":110874,"length":171,"previous":"M16-GAP-00649","next":"M16-GAP-00651"},"M16-GAP-00651":{"line":650,"offset":111045,"length":167,"previous":"M16-GAP-00650","next":"M16-GAP-00652"},"M16-GAP-00652":{"line":651,"offset":111212,"length":167,"previous":"M16-GAP-00651","next":"M16-GAP-00653"},"M16-GAP-00653":{"line":652,"offset":111379,"length":164,"previous":"M16-GAP-00652","next":"M16-GAP-00654"},"M16-GAP-00654":{"line":653,"offset":111543,"length":167,"previous":"M16-GAP-00653","next":"M16-GAP-00655"},"M16-GAP-00655":{"line":654,"offset":111710,"length":172,"previous":"M16-GAP-00654","next":"M16-GAP-00656"},"M16-GAP-00656":{"line":655,"offset":111882,"length":170,"previous":"M16-GAP-00655","next":"M16-GAP-00657"},"M16-GAP-00657":{"line":656,"offset":112052,"length":162,"previous":"M16-GAP-00656","next":"M16-GAP-00658"},"M16-GAP-00658":{"line":657,"offset":112214,"length":166,"previous":"M16-GAP-00657","next":"M16-GAP-00659"},"M16-GAP-00659":{"line":658,"offset":112380,"length":160,"previous":"M16-GAP-00658","next":"M16-GAP-00660"},"M16-GAP-00660":{"line":659,"offset":112540,"length":167,"previous":"M16-GAP-00659","next":"M16-GAP-00661"},"M16-GAP-00661":{"line":660,"offset":112707,"length":160,"previous":"M16-GAP-00660","next":"M16-GAP-00662"},"M16-GAP-00662":{"line":661,"offset":112867,"length":166,"previous":"M16-GAP-00661","next":"M16-GAP-00663"},"M16-GAP-00663":{"line":662,"offset":113033,"length":167,"previous":"M16-GAP-00662","next":"M16-GAP-00664"},"M16-GAP-00664":{"line":663,"offset":113200,"length":169,"previous":"M16-GAP-00663","next":"M16-GAP-00665"},"M16-GAP-00665":{"line":664,"offset":113369,"length":165,"previous":"M16-GAP-00664","next":"M16-GAP-00666"},"M16-GAP-00666":{"line":665,"offset":113534,"length":168,"previous":"M16-GAP-00665","next":"M16-GAP-00667"},"M16-GAP-00667":{"line":666,"offset":113702,"length":165,"previous":"M16-GAP-00666","next":"M16-GAP-00668"},"M16-GAP-00668":{"line":667,"offset":113867,"length":164,"previous":"M16-GAP-00667","next":"M16-GAP-00669"},"M16-GAP-00669":{"line":668,"offset":114031,"length":167,"previous":"M16-GAP-00668","next":"M16-GAP-00670"},"M16-GAP-00670":{"line":669,"offset":114198,"length":175,"previous":"M16-GAP-00669","next":"M16-GAP-00671"},"M16-GAP-00671":{"line":670,"offset":114373,"length":166,"previous":"M16-GAP-00670","next":"M16-GAP-00672"},"M16-GAP-00672":{"line":671,"offset":114539,"length":176,"previous":"M16-GAP-00671","next":"M16-GAP-00673"},"M16-GAP-00673":{"line":672,"offset":114715,"length":167,"previous":"M16-GAP-00672","next":"M16-GAP-00674"},"M16-GAP-00674":{"line":673,"offset":114882,"length":170,"previous":"M16-GAP-00673","next":"M16-GAP-00675"},"M16-GAP-00675":{"line":674,"offset":115052,"length":162,"previous":"M16-GAP-00674","next":"M16-GAP-00676"},"M16-GAP-00676":{"line":675,"offset":115214,"length":173,"previous":"M16-GAP-00675","next":"M16-GAP-00677"},"M16-GAP-00677":{"line":676,"offset":115387,"length":177,"previous":"M16-GAP-00676","next":"M16-GAP-00678"},"M16-GAP-00678":{"line":677,"offset":115564,"length":176,"previous":"M16-GAP-00677","next":"M16-GAP-00679"},"M16-GAP-00679":{"line":678,"offset":115740,"length":179,"previous":"M16-GAP-00678","next":"M16-GAP-00680"},"M16-GAP-00680":{"line":679,"offset":115919,"length":183,"previous":"M16-GAP-00679","next":"M16-GAP-00681"},"M16-GAP-00681":{"line":680,"offset":116102,"length":185,"previous":"M16-GAP-00680","next":"M16-GAP-00682"},"M16-GAP-00682":{"line":681,"offset":116287,"length":182,"previous":"M16-GAP-00681","next":"M16-GAP-00683"},"M16-GAP-00683":{"line":682,"offset":116469,"length":186,"previous":"M16-GAP-00682","next":"M16-GAP-00684"},"M16-GAP-00684":{"line":683,"offset":116655,"length":182,"previous":"M16-GAP-00683","next":"M16-GAP-00685"},"M16-GAP-00685":{"line":684,"offset":116837,"length":174,"previous":"M16-GAP-00684","next":"M16-GAP-00686"},"M16-GAP-00686":{"line":685,"offset":117011,"length":173,"previous":"M16-GAP-00685","next":"M16-GAP-00687"},"M16-GAP-00687":{"line":686,"offset":117184,"length":167,"previous":"M16-GAP-00686","next":"M16-GAP-00688"},"M16-GAP-00688":{"line":687,"offset":117351,"length":189,"previous":"M16-GAP-00687","next":"M16-GAP-00689"},"M16-GAP-00689":{"line":688,"offset":117540,"length":173,"previous":"M16-GAP-00688","next":"M16-GAP-00690"},"M16-GAP-00690":{"line":689,"offset":117713,"length":170,"previous":"M16-GAP-00689","next":"M16-GAP-00691"},"M16-GAP-00691":{"line":690,"offset":117883,"length":179,"previous":"M16-GAP-00690","next":"M16-GAP-00692"},"M16-GAP-00692":{"line":691,"offset":118062,"length":180,"previous":"M16-GAP-00691","next":"M16-GAP-00693"},"M16-GAP-00693":{"line":692,"offset":118242,"length":182,"previous":"M16-GAP-00692","next":"M16-GAP-00694"},"M16-GAP-00694":{"line":693,"offset":118424,"length":166,"previous":"M16-GAP-00693","next":"M16-GAP-00695"},"M16-GAP-00695":{"line":694,"offset":118590,"length":169,"previous":"M16-GAP-00694","next":"M16-GAP-00696"},"M16-GAP-00696":{"line":695,"offset":118759,"length":173,"previous":"M16-GAP-00695","next":"M16-GAP-00697"},"M16-GAP-00697":{"line":696,"offset":118932,"length":170,"previous":"M16-GAP-00696","next":"M16-GAP-00698"},"M16-GAP-00698":{"line":697,"offset":119102,"length":174,"previous":"M16-GAP-00697","next":"M16-GAP-00699"},"M16-GAP-00699":{"line":698,"offset":119276,"length":166,"previous":"M16-GAP-00698","next":"M16-GAP-00700"},"M16-GAP-00700":{"line":699,"offset":119442,"length":175,"previous":"M16-GAP-00699","next":"M16-GAP-00701"},"M16-GAP-00701":{"line":700,"offset":119617,"length":162,"previous":"M16-GAP-00700","next":"M16-GAP-00702"},"M16-GAP-00702":{"line":701,"offset":119779,"length":169,"previous":"M16-GAP-00701","next":"M16-GAP-00703"},"M16-GAP-00703":{"line":702,"offset":119948,"length":168,"previous":"M16-GAP-00702","next":"M16-GAP-00704"},"M16-GAP-00704":{"line":703,"offset":120116,"length":161,"previous":"M16-GAP-00703","next":"M16-GAP-00705"},"M16-GAP-00705":{"line":704,"offset":120277,"length":167,"previous":"M16-GAP-00704","next":"M16-GAP-00706"},"M16-GAP-00706":{"line":705,"offset":120444,"length":165,"previous":"M16-GAP-00705","next":"M16-GAP-00707"},"M16-GAP-00707":{"line":706,"offset":120609,"length":163,"previous":"M16-GAP-00706","next":"M16-GAP-00708"},"M16-GAP-00708":{"line":707,"offset":120772,"length":178,"previous":"M16-GAP-00707","next":"M16-GAP-00709"},"M16-GAP-00709":{"line":708,"offset":120950,"length":178,"previous":"M16-GAP-00708","next":"M16-GAP-00710"},"M16-GAP-00710":{"line":709,"offset":121128,"length":179,"previous":"M16-GAP-00709","next":"M16-GAP-00711"},"M16-GAP-00711":{"line":710,"offset":121307,"length":166,"previous":"M16-GAP-00710","next":"M16-GAP-00712"},"M16-GAP-00712":{"line":711,"offset":121473,"length":171,"previous":"M16-GAP-00711","next":"M16-GAP-00713"},"M16-GAP-00713":{"line":712,"offset":121644,"length":161,"previous":"M16-GAP-00712","next":"M16-GAP-00714"},"M16-GAP-00714":{"line":713,"offset":121805,"length":168,"previous":"M16-GAP-00713","next":"M16-GAP-00715"},"M16-GAP-00715":{"line":714,"offset":121973,"length":173,"previous":"M16-GAP-00714","next":"M16-GAP-00716"},"M16-GAP-00716":{"line":715,"offset":122146,"length":169,"previous":"M16-GAP-00715","next":"M16-GAP-00717"},"M16-GAP-00717":{"line":716,"offset":122315,"length":175,"previous":"M16-GAP-00716","next":"M16-GAP-00718"},"M16-GAP-00718":{"line":717,"offset":122490,"length":170,"previous":"M16-GAP-00717","next":"M16-GAP-00719"},"M16-GAP-00719":{"line":718,"offset":122660,"length":171,"previous":"M16-GAP-00718","next":"M16-GAP-00720"},"M16-GAP-00720":{"line":719,"offset":122831,"length":173,"previous":"M16-GAP-00719","next":"M16-GAP-00721"},"M16-GAP-00721":{"line":720,"offset":123004,"length":172,"previous":"M16-GAP-00720","next":"M16-GAP-00722"},"M16-GAP-00722":{"line":721,"offset":123176,"length":167,"previous":"M16-GAP-00721","next":"M16-GAP-00723"},"M16-GAP-00723":{"line":722,"offset":123343,"length":172,"previous":"M16-GAP-00722","next":"M16-GAP-00724"},"M16-GAP-00724":{"line":723,"offset":123515,"length":175,"previous":"M16-GAP-00723","next":"M16-GAP-00725"},"M16-GAP-00725":{"line":724,"offset":123690,"length":176,"previous":"M16-GAP-00724","next":"M16-GAP-00726"},"M16-GAP-00726":{"line":725,"offset":123866,"length":168,"previous":"M16-GAP-00725","next":"M16-GAP-00727"},"M16-GAP-00727":{"line":726,"offset":124034,"length":161,"previous":"M16-GAP-00726","next":"M16-GAP-00728"},"M16-GAP-00728":{"line":727,"offset":124195,"length":175,"previous":"M16-GAP-00727","next":"M16-GAP-00729"},"M16-GAP-00729":{"line":728,"offset":124370,"length":172,"previous":"M16-GAP-00728","next":"M16-GAP-00730"},"M16-GAP-00730":{"line":729,"offset":124542,"length":170,"previous":"M16-GAP-00729","next":"M16-GAP-00731"},"M16-GAP-00731":{"line":730,"offset":124712,"length":172,"previous":"M16-GAP-00730","next":"M16-GAP-00732"},"M16-GAP-00732":{"line":731,"offset":124884,"length":167,"previous":"M16-GAP-00731","next":"M16-GAP-00733"},"M16-GAP-00733":{"line":732,"offset":125051,"length":168,"previous":"M16-GAP-00732","next":"M16-GAP-00734"},"M16-GAP-00734":{"line":733,"offset":125219,"length":163,"previous":"M16-GAP-00733","next":"M16-GAP-00735"},"M16-GAP-00735":{"line":734,"offset":125382,"length":162,"previous":"M16-GAP-00734","next":"M16-GAP-00736"},"M16-GAP-00736":{"line":735,"offset":125544,"length":173,"previous":"M16-GAP-00735","next":"M16-GAP-00737"},"M16-GAP-00737":{"line":736,"offset":125717,"length":166,"previous":"M16-GAP-00736","next":"M16-GAP-00738"},"M16-GAP-00738":{"line":737,"offset":125883,"length":163,"previous":"M16-GAP-00737","next":"M16-GAP-00739"},"M16-GAP-00739":{"line":738,"offset":126046,"length":172,"previous":"M16-GAP-00738","next":"M16-GAP-00740"},"M16-GAP-00740":{"line":739,"offset":126218,"length":170,"previous":"M16-GAP-00739","next":"M16-GAP-00741"},"M16-GAP-00741":{"line":740,"offset":126388,"length":176,"previous":"M16-GAP-00740","next":"M16-GAP-00742"},"M16-GAP-00742":{"line":741,"offset":126564,"length":167,"previous":"M16-GAP-00741","next":"M16-GAP-00743"},"M16-GAP-00743":{"line":742,"offset":126731,"length":167,"previous":"M16-GAP-00742","next":"M16-GAP-00744"},"M16-GAP-00744":{"line":743,"offset":126898,"length":170,"previous":"M16-GAP-00743","next":"M16-GAP-00745"},"M16-GAP-00745":{"line":744,"offset":127068,"length":170,"previous":"M16-GAP-00744","next":"M16-GAP-00746"},"M16-GAP-00746":{"line":745,"offset":127238,"length":175,"previous":"M16-GAP-00745","next":"M16-GAP-00747"},"M16-GAP-00747":{"line":746,"offset":127413,"length":169,"previous":"M16-GAP-00746","next":"M16-GAP-00748"},"M16-GAP-00748":{"line":747,"offset":127582,"length":173,"previous":"M16-GAP-00747","next":"M16-GAP-00749"},"M16-GAP-00749":{"line":748,"offset":127755,"length":168,"previous":"M16-GAP-00748","next":"M16-GAP-00750"},"M16-GAP-00750":{"line":749,"offset":127923,"length":170,"previous":"M16-GAP-00749","next":"M16-GAP-00751"},"M16-GAP-00751":{"line":750,"offset":128093,"length":168,"previous":"M16-GAP-00750","next":"M16-GAP-00752"},"M16-GAP-00752":{"line":751,"offset":128261,"length":162,"previous":"M16-GAP-00751","next":"M16-GAP-00753"},"M16-GAP-00753":{"line":752,"offset":128423,"length":163,"previous":"M16-GAP-00752","next":"M16-GAP-00754"},"M16-GAP-00754":{"line":753,"offset":128586,"length":161,"previous":"M16-GAP-00753","next":"M16-GAP-00755"},"M16-GAP-00755":{"line":754,"offset":128747,"length":174,"previous":"M16-GAP-00754","next":"M16-GAP-00756"},"M16-GAP-00756":{"line":755,"offset":128921,"length":173,"previous":"M16-GAP-00755","next":"M16-GAP-00757"},"M16-GAP-00757":{"line":756,"offset":129094,"length":168,"previous":"M16-GAP-00756","next":"M16-GAP-00758"},"M16-GAP-00758":{"line":757,"offset":129262,"length":165,"previous":"M16-GAP-00757","next":"M16-GAP-00759"},"M16-GAP-00759":{"line":758,"offset":129427,"length":167,"previous":"M16-GAP-00758","next":"M16-GAP-00760"},"M16-GAP-00760":{"line":759,"offset":129594,"length":170,"previous":"M16-GAP-00759","next":"M16-GAP-00761"},"M16-GAP-00761":{"line":760,"offset":129764,"length":184,"previous":"M16-GAP-00760","next":"M16-GAP-00762"},"M16-GAP-00762":{"line":761,"offset":129948,"length":193,"previous":"M16-GAP-00761","next":"M16-GAP-00763"},"M16-GAP-00763":{"line":762,"offset":130141,"length":177,"previous":"M16-GAP-00762","next":"M16-GAP-00764"},"M16-GAP-00764":{"line":763,"offset":130318,"length":173,"previous":"M16-GAP-00763","next":"M16-GAP-00765"},"M16-GAP-00765":{"line":764,"offset":130491,"length":176,"previous":"M16-GAP-00764","next":"M16-GAP-00766"},"M16-GAP-00766":{"line":765,"offset":130667,"length":183,"previous":"M16-GAP-00765","next":"M16-GAP-00767"},"M16-GAP-00767":{"line":766,"offset":130850,"length":169,"previous":"M16-GAP-00766","next":"M16-GAP-00768"},"M16-GAP-00768":{"line":767,"offset":131019,"length":177,"previous":"M16-GAP-00767","next":"M16-GAP-00769"},"M16-GAP-00769":{"line":768,"offset":131196,"length":171,"previous":"M16-GAP-00768","next":"M16-GAP-00770"},"M16-GAP-00770":{"line":769,"offset":131367,"length":181,"previous":"M16-GAP-00769","next":"M16-GAP-00771"},"M16-GAP-00771":{"line":770,"offset":131548,"length":177,"previous":"M16-GAP-00770","next":"M16-GAP-00772"},"M16-GAP-00772":{"line":771,"offset":131725,"length":173,"previous":"M16-GAP-00771","next":"M16-GAP-00773"},"M16-GAP-00773":{"line":772,"offset":131898,"length":174,"previous":"M16-GAP-00772","next":"M16-GAP-00774"},"M16-GAP-00774":{"line":773,"offset":132072,"length":179,"previous":"M16-GAP-00773","next":"M16-GAP-00775"},"M16-GAP-00775":{"line":774,"offset":132251,"length":174,"previous":"M16-GAP-00774","next":"M16-GAP-00776"},"M16-GAP-00776":{"line":775,"offset":132425,"length":176,"previous":"M16-GAP-00775","next":"M16-GAP-00777"},"M16-GAP-00777":{"line":776,"offset":132601,"length":172,"previous":"M16-GAP-00776","next":"M16-GAP-00778"},"M16-GAP-00778":{"line":777,"offset":132773,"length":177,"previous":"M16-GAP-00777","next":"M16-GAP-00779"},"M16-GAP-00779":{"line":778,"offset":132950,"length":169,"previous":"M16-GAP-00778","next":"M16-GAP-00780"},"M16-GAP-00780":{"line":779,"offset":133119,"length":186,"previous":"M16-GAP-00779","next":"M16-GAP-00781"},"M16-GAP-00781":{"line":780,"offset":133305,"length":180,"previous":"M16-GAP-00780","next":"M16-GAP-00782"},"M16-GAP-00782":{"line":781,"offset":133485,"length":183,"previous":"M16-GAP-00781","next":"M16-GAP-00783"},"M16-GAP-00783":{"line":782,"offset":133668,"length":176,"previous":"M16-GAP-00782","next":"M16-GAP-00784"},"M16-GAP-00784":{"line":783,"offset":133844,"length":185,"previous":"M16-GAP-00783","next":"M16-GAP-00785"},"M16-GAP-00785":{"line":784,"offset":134029,"length":175,"previous":"M16-GAP-00784","next":"M16-GAP-00786"},"M16-GAP-00786":{"line":785,"offset":134204,"length":179,"previous":"M16-GAP-00785","next":"M16-GAP-00787"},"M16-GAP-00787":{"line":786,"offset":134383,"length":177,"previous":"M16-GAP-00786","next":"M16-GAP-00788"},"M16-GAP-00788":{"line":787,"offset":134560,"length":174,"previous":"M16-GAP-00787","next":"M16-GAP-00789"},"M16-GAP-00789":{"line":788,"offset":134734,"length":180,"previous":"M16-GAP-00788","next":"M16-GAP-00790"},"M16-GAP-00790":{"line":789,"offset":134914,"length":187,"previous":"M16-GAP-00789","next":"M16-GAP-00791"},"M16-GAP-00791":{"line":790,"offset":135101,"length":180,"previous":"M16-GAP-00790","next":"M16-GAP-00792"},"M16-GAP-00792":{"line":791,"offset":135281,"length":186,"previous":"M16-GAP-00791","next":"M16-GAP-00793"},"M16-GAP-00793":{"line":792,"offset":135467,"length":183,"previous":"M16-GAP-00792","next":"M16-GAP-00794"},"M16-GAP-00794":{"line":793,"offset":135650,"length":175,"previous":"M16-GAP-00793","next":"M16-GAP-00795"},"M16-GAP-00795":{"line":794,"offset":135825,"length":178,"previous":"M16-GAP-00794","next":"M16-GAP-00796"},"M16-GAP-00796":{"line":795,"offset":136003,"length":179,"previous":"M16-GAP-00795","next":"M16-GAP-00797"},"M16-GAP-00797":{"line":796,"offset":136182,"length":179,"previous":"M16-GAP-00796","next":"M16-GAP-00798"},"M16-GAP-00798":{"line":797,"offset":136361,"length":182,"previous":"M16-GAP-00797","next":"M16-GAP-00799"},"M16-GAP-00799":{"line":798,"offset":136543,"length":183,"previous":"M16-GAP-00798","next":"M16-GAP-00800"},"M16-GAP-00800":{"line":799,"offset":136726,"length":176,"previous":"M16-GAP-00799","next":"M16-GAP-00801"},"M16-GAP-00801":{"line":800,"offset":136902,"length":175,"previous":"M16-GAP-00800","next":"M16-GAP-00802"},"M16-GAP-00802":{"line":801,"offset":137077,"length":177,"previous":"M16-GAP-00801","next":"M16-GAP-00803"},"M16-GAP-00803":{"line":802,"offset":137254,"length":177,"previous":"M16-GAP-00802","next":"M16-GAP-00804"},"M16-GAP-00804":{"line":803,"offset":137431,"length":188,"previous":"M16-GAP-00803","next":"M16-GAP-00805"},"M16-GAP-00805":{"line":804,"offset":137619,"length":178,"previous":"M16-GAP-00804","next":"M16-GAP-00806"},"M16-GAP-00806":{"line":805,"offset":137797,"length":181,"previous":"M16-GAP-00805","next":"M16-GAP-00807"},"M16-GAP-00807":{"line":806,"offset":137978,"length":182,"previous":"M16-GAP-00806","next":"M16-GAP-00808"},"M16-GAP-00808":{"line":807,"offset":138160,"length":189,"previous":"M16-GAP-00807","next":"M16-GAP-00809"},"M16-GAP-00809":{"line":808,"offset":138349,"length":185,"previous":"M16-GAP-00808","next":"M16-GAP-00810"},"M16-GAP-00810":{"line":809,"offset":138534,"length":180,"previous":"M16-GAP-00809","next":"M16-GAP-00811"},"M16-GAP-00811":{"line":810,"offset":138714,"length":180,"previous":"M16-GAP-00810","next":"M16-GAP-00812"},"M16-GAP-00812":{"line":811,"offset":138894,"length":184,"previous":"M16-GAP-00811","next":"M16-GAP-00813"},"M16-GAP-00813":{"line":812,"offset":139078,"length":178,"previous":"M16-GAP-00812","next":"M16-GAP-00814"},"M16-GAP-00814":{"line":813,"offset":139256,"length":172,"previous":"M16-GAP-00813","next":"M16-GAP-00815"},"M16-GAP-00815":{"line":814,"offset":139428,"length":181,"previous":"M16-GAP-00814","next":"M16-GAP-00816"},"M16-GAP-00816":{"line":815,"offset":139609,"length":170,"previous":"M16-GAP-00815","next":"M16-GAP-00817"},"M16-GAP-00817":{"line":816,"offset":139779,"length":168,"previous":"M16-GAP-00816","next":"M16-GAP-00818"},"M16-GAP-00818":{"line":817,"offset":139947,"length":178,"previous":"M16-GAP-00817","next":"M16-GAP-00819"},"M16-GAP-00819":{"line":818,"offset":140125,"length":178,"previous":"M16-GAP-00818","next":"M16-GAP-00820"},"M16-GAP-00820":{"line":819,"offset":140303,"length":181,"previous":"M16-GAP-00819","next":"M16-GAP-00821"},"M16-GAP-00821":{"line":820,"offset":140484,"length":180,"previous":"M16-GAP-00820","next":"M16-GAP-00822"},"M16-GAP-00822":{"line":821,"offset":140664,"length":179,"previous":"M16-GAP-00821","next":"M16-GAP-00823"},"M16-GAP-00823":{"line":822,"offset":140843,"length":183,"previous":"M16-GAP-00822","next":"M16-GAP-00824"},"M16-GAP-00824":{"line":823,"offset":141026,"length":188,"previous":"M16-GAP-00823","next":"M16-GAP-00825"},"M16-GAP-00825":{"line":824,"offset":141214,"length":183,"previous":"M16-GAP-00824","next":"M16-GAP-00826"},"M16-GAP-00826":{"line":825,"offset":141397,"length":172,"previous":"M16-GAP-00825","next":"M16-GAP-00827"},"M16-GAP-00827":{"line":826,"offset":141569,"length":174,"previous":"M16-GAP-00826","next":"M16-GAP-00828"},"M16-GAP-00828":{"line":827,"offset":141743,"length":174,"previous":"M16-GAP-00827","next":"M16-GAP-00829"},"M16-GAP-00829":{"line":828,"offset":141917,"length":177,"previous":"M16-GAP-00828","next":"M16-GAP-00830"},"M16-GAP-00830":{"line":829,"offset":142094,"length":182,"previous":"M16-GAP-00829","next":"M16-GAP-00831"},"M16-GAP-00831":{"line":830,"offset":142276,"length":175,"previous":"M16-GAP-00830","next":"M16-GAP-00832"},"M16-GAP-00832":{"line":831,"offset":142451,"length":181,"previous":"M16-GAP-00831","next":"M16-GAP-00833"},"M16-GAP-00833":{"line":832,"offset":142632,"length":186,"previous":"M16-GAP-00832","next":"M16-GAP-00834"},"M16-GAP-00834":{"line":833,"offset":142818,"length":176,"previous":"M16-GAP-00833","next":"M16-GAP-00835"},"M16-GAP-00835":{"line":834,"offset":142994,"length":176,"previous":"M16-GAP-00834","next":"M16-GAP-00836"},"M16-GAP-00836":{"line":835,"offset":143170,"length":176,"previous":"M16-GAP-00835","next":"M16-GAP-00837"},"M16-GAP-00837":{"line":836,"offset":143346,"length":178,"previous":"M16-GAP-00836","next":"M16-GAP-00838"},"M16-GAP-00838":{"line":837,"offset":143524,"length":176,"previous":"M16-GAP-00837","next":"M16-GAP-00839"},"M16-GAP-00839":{"line":838,"offset":143700,"length":178,"previous":"M16-GAP-00838","next":"M16-GAP-00840"},"M16-GAP-00840":{"line":839,"offset":143878,"length":179,"previous":"M16-GAP-00839","next":"M16-GAP-00841"},"M16-GAP-00841":{"line":840,"offset":144057,"length":173,"previous":"M16-GAP-00840","next":"M16-GAP-00842"},"M16-GAP-00842":{"line":841,"offset":144230,"length":179,"previous":"M16-GAP-00841","next":"M16-GAP-00843"},"M16-GAP-00843":{"line":842,"offset":144409,"length":184,"previous":"M16-GAP-00842","next":"M16-GAP-00844"},"M16-GAP-00844":{"line":843,"offset":144593,"length":180,"previous":"M16-GAP-00843","next":"M16-GAP-00845"},"M16-GAP-00845":{"line":844,"offset":144773,"length":185,"previous":"M16-GAP-00844","next":"M16-GAP-00846"},"M16-GAP-00846":{"line":845,"offset":144958,"length":179,"previous":"M16-GAP-00845","next":"M16-GAP-00847"},"M16-GAP-00847":{"line":846,"offset":145137,"length":180,"previous":"M16-GAP-00846","next":"M16-GAP-00848"},"M16-GAP-00848":{"line":847,"offset":145317,"length":177,"previous":"M16-GAP-00847","next":"M16-GAP-00849"},"M16-GAP-00849":{"line":848,"offset":145494,"length":183,"previous":"M16-GAP-00848","next":"M16-GAP-00850"},"M16-GAP-00850":{"line":849,"offset":145677,"length":180,"previous":"M16-GAP-00849","next":"M16-GAP-00851"},"M16-GAP-00851":{"line":850,"offset":145857,"length":180,"previous":"M16-GAP-00850","next":"M16-GAP-00852"},"M16-GAP-00852":{"line":851,"offset":146037,"length":184,"previous":"M16-GAP-00851","next":"M16-GAP-00853"},"M16-GAP-00853":{"line":852,"offset":146221,"length":186,"previous":"M16-GAP-00852","next":"M16-GAP-00854"},"M16-GAP-00854":{"line":853,"offset":146407,"length":188,"previous":"M16-GAP-00853","next":"M16-GAP-00855"},"M16-GAP-00855":{"line":854,"offset":146595,"length":179,"previous":"M16-GAP-00854","next":"M16-GAP-00856"},"M16-GAP-00856":{"line":855,"offset":146774,"length":177,"previous":"M16-GAP-00855","next":"M16-GAP-00857"},"M16-GAP-00857":{"line":856,"offset":146951,"length":184,"previous":"M16-GAP-00856","next":"M16-GAP-00858"},"M16-GAP-00858":{"line":857,"offset":147135,"length":189,"previous":"M16-GAP-00857","next":"M16-GAP-00859"},"M16-GAP-00859":{"line":858,"offset":147324,"length":190,"previous":"M16-GAP-00858","next":"M16-GAP-00860"},"M16-GAP-00860":{"line":859,"offset":147514,"length":180,"previous":"M16-GAP-00859","next":"M16-GAP-00861"},"M16-GAP-00861":{"line":860,"offset":147694,"length":178,"previous":"M16-GAP-00860","next":"M16-GAP-00862"},"M16-GAP-00862":{"line":861,"offset":147872,"length":177,"previous":"M16-GAP-00861","next":"M16-GAP-00863"},"M16-GAP-00863":{"line":862,"offset":148049,"length":181,"previous":"M16-GAP-00862","next":"M16-GAP-00864"},"M16-GAP-00864":{"line":863,"offset":148230,"length":188,"previous":"M16-GAP-00863","next":"M16-GAP-00865"},"M16-GAP-00865":{"line":864,"offset":148418,"length":188,"previous":"M16-GAP-00864","next":"M16-GAP-00866"},"M16-GAP-00866":{"line":865,"offset":148606,"length":176,"previous":"M16-GAP-00865","next":"M16-GAP-00867"},"M16-GAP-00867":{"line":866,"offset":148782,"length":181,"previous":"M16-GAP-00866","next":"M16-GAP-00868"},"M16-GAP-00868":{"line":867,"offset":148963,"length":176,"previous":"M16-GAP-00867","next":"M16-GAP-00869"},"M16-GAP-00869":{"line":868,"offset":149139,"length":184,"previous":"M16-GAP-00868","next":"M16-GAP-00870"},"M16-GAP-00870":{"line":869,"offset":149323,"length":197,"previous":"M16-GAP-00869","next":"M16-GAP-00871"},"M16-GAP-00871":{"line":870,"offset":149520,"length":181,"previous":"M16-GAP-00870","next":"M16-GAP-00872"},"M16-GAP-00872":{"line":871,"offset":149701,"length":184,"previous":"M16-GAP-00871","next":"M16-GAP-00873"},"M16-GAP-00873":{"line":872,"offset":149885,"length":184,"previous":"M16-GAP-00872","next":"M16-GAP-00874"},"M16-GAP-00874":{"line":873,"offset":150069,"length":181,"previous":"M16-GAP-00873","next":"M16-GAP-00875"},"M16-GAP-00875":{"line":874,"offset":150250,"length":187,"previous":"M16-GAP-00874","next":"M16-GAP-00876"},"M16-GAP-00876":{"line":875,"offset":150437,"length":191,"previous":"M16-GAP-00875","next":"M16-GAP-00877"},"M16-GAP-00877":{"line":876,"offset":150628,"length":184,"previous":"M16-GAP-00876","next":"M16-GAP-00878"},"M16-GAP-00878":{"line":877,"offset":150812,"length":182,"previous":"M16-GAP-00877","next":"M16-GAP-00879"},"M16-GAP-00879":{"line":878,"offset":150994,"length":184,"previous":"M16-GAP-00878","next":"M16-GAP-00880"},"M16-GAP-00880":{"line":879,"offset":151178,"length":178,"previous":"M16-GAP-00879","next":"M16-GAP-00881"},"M16-GAP-00881":{"line":880,"offset":151356,"length":178,"previous":"M16-GAP-00880","next":"M16-GAP-00882"},"M16-GAP-00882":{"line":881,"offset":151534,"length":188,"previous":"M16-GAP-00881","next":"M16-GAP-00883"},"M16-GAP-00883":{"line":882,"offset":151722,"length":182,"previous":"M16-GAP-00882","next":"M16-GAP-00884"},"M16-GAP-00884":{"line":883,"offset":151904,"length":172,"previous":"M16-GAP-00883","next":"M16-GAP-00885"},"M16-GAP-00885":{"line":884,"offset":152076,"length":169,"previous":"M16-GAP-00884","next":"M16-GAP-00886"},"M16-GAP-00886":{"line":885,"offset":152245,"length":176,"previous":"M16-GAP-00885","next":"M16-GAP-00887"},"M16-GAP-00887":{"line":886,"offset":152421,"length":174,"previous":"M16-GAP-00886","next":"M16-GAP-00888"},"M16-GAP-00888":{"line":887,"offset":152595,"length":171,"previous":"M16-GAP-00887","next":"M16-GAP-00889"},"M16-GAP-00889":{"line":888,"offset":152766,"length":172,"previous":"M16-GAP-00888","next":"M16-GAP-00890"},"M16-GAP-00890":{"line":889,"offset":152938,"length":178,"previous":"M16-GAP-00889","next":"M16-GAP-00891"},"M16-GAP-00891":{"line":890,"offset":153116,"length":173,"previous":"M16-GAP-00890","next":"M16-GAP-00892"},"M16-GAP-00892":{"line":891,"offset":153289,"length":174,"previous":"M16-GAP-00891","next":"M16-GAP-00893"},"M16-GAP-00893":{"line":892,"offset":153463,"length":170,"previous":"M16-GAP-00892","next":"M16-GAP-00894"},"M16-GAP-00894":{"line":893,"offset":153633,"length":168,"previous":"M16-GAP-00893","next":"M16-GAP-00895"},"M16-GAP-00895":{"line":894,"offset":153801,"length":161,"previous":"M16-GAP-00894","next":"M16-GAP-00896"},"M16-GAP-00896":{"line":895,"offset":153962,"length":178,"previous":"M16-GAP-00895","next":"M16-GAP-00897"},"M16-GAP-00897":{"line":896,"offset":154140,"length":163,"previous":"M16-GAP-00896","next":"M16-GAP-00898"},"M16-GAP-00898":{"line":897,"offset":154303,"length":175,"previous":"M16-GAP-00897","next":"M16-GAP-00899"},"M16-GAP-00899":{"line":898,"offset":154478,"length":160,"previous":"M16-GAP-00898","next":"M16-GAP-00900"},"M16-GAP-00900":{"line":899,"offset":154638,"length":161,"previous":"M16-GAP-00899","next":"M16-GAP-00901"},"M16-GAP-00901":{"line":900,"offset":154799,"length":168,"previous":"M16-GAP-00900","next":"M16-GAP-00902"},"M16-GAP-00902":{"line":901,"offset":154967,"length":161,"previous":"M16-GAP-00901","next":"M16-GAP-00903"},"M16-GAP-00903":{"line":902,"offset":155128,"length":170,"previous":"M16-GAP-00902","next":"M16-GAP-00904"},"M16-GAP-00904":{"line":903,"offset":155298,"length":169,"previous":"M16-GAP-00903","next":"M16-GAP-00905"},"M16-GAP-00905":{"line":904,"offset":155467,"length":172,"previous":"M16-GAP-00904","next":"M16-GAP-00906"},"M16-GAP-00906":{"line":905,"offset":155639,"length":163,"previous":"M16-GAP-00905","next":"M16-GAP-00907"},"M16-GAP-00907":{"line":906,"offset":155802,"length":175,"previous":"M16-GAP-00906","next":"M16-GAP-00908"},"M16-GAP-00908":{"line":907,"offset":155977,"length":170,"previous":"M16-GAP-00907","next":"M16-GAP-00909"},"M16-GAP-00909":{"line":908,"offset":156147,"length":164,"previous":"M16-GAP-00908","next":"M16-GAP-00910"},"M16-GAP-00910":{"line":909,"offset":156311,"length":163,"previous":"M16-GAP-00909","next":"M16-GAP-00911"},"M16-GAP-00911":{"line":910,"offset":156474,"length":174,"previous":"M16-GAP-00910","next":"M16-GAP-00912"},"M16-GAP-00912":{"line":911,"offset":156648,"length":163,"previous":"M16-GAP-00911","next":"M16-GAP-00913"},"M16-GAP-00913":{"line":912,"offset":156811,"length":168,"previous":"M16-GAP-00912","next":"M16-GAP-00914"},"M16-GAP-00914":{"line":913,"offset":156979,"length":161,"previous":"M16-GAP-00913","next":"M16-GAP-00915"},"M16-GAP-00915":{"line":914,"offset":157140,"length":174,"previous":"M16-GAP-00914","next":"M16-GAP-00916"},"M16-GAP-00916":{"line":915,"offset":157314,"length":164,"previous":"M16-GAP-00915","next":"M16-GAP-00917"},"M16-GAP-00917":{"line":916,"offset":157478,"length":170,"previous":"M16-GAP-00916","next":"M16-GAP-00918"},"M16-GAP-00918":{"line":917,"offset":157648,"length":165,"previous":"M16-GAP-00917","next":"M16-GAP-00919"},"M16-GAP-00919":{"line":918,"offset":157813,"length":166,"previous":"M16-GAP-00918","next":"M16-GAP-00920"},"M16-GAP-00920":{"line":919,"offset":157979,"length":168,"previous":"M16-GAP-00919","next":"M16-GAP-00921"},"M16-GAP-00921":{"line":920,"offset":158147,"length":163,"previous":"M16-GAP-00920","next":"M16-GAP-00922"},"M16-GAP-00922":{"line":921,"offset":158310,"length":165,"previous":"M16-GAP-00921","next":"M16-GAP-00923"},"M16-GAP-00923":{"line":922,"offset":158475,"length":175,"previous":"M16-GAP-00922","next":"M16-GAP-00924"},"M16-GAP-00924":{"line":923,"offset":158650,"length":175,"previous":"M16-GAP-00923","next":"M16-GAP-00925"},"M16-GAP-00925":{"line":924,"offset":158825,"length":166,"previous":"M16-GAP-00924","next":"M16-GAP-00926"},"M16-GAP-00926":{"line":925,"offset":158991,"length":165,"previous":"M16-GAP-00925","next":"M16-GAP-00927"},"M16-GAP-00927":{"line":926,"offset":159156,"length":170,"previous":"M16-GAP-00926","next":"M16-GAP-00928"},"M16-GAP-00928":{"line":927,"offset":159326,"length":166,"previous":"M16-GAP-00927","next":"M16-GAP-00929"},"M16-GAP-00929":{"line":928,"offset":159492,"length":173,"previous":"M16-GAP-00928","next":"M16-GAP-00930"},"M16-GAP-00930":{"line":929,"offset":159665,"length":169,"previous":"M16-GAP-00929","next":"M16-GAP-00931"},"M16-GAP-00931":{"line":930,"offset":159834,"length":170,"previous":"M16-GAP-00930","next":"M16-GAP-00932"},"M16-GAP-00932":{"line":931,"offset":160004,"length":172,"previous":"M16-GAP-00931","next":"M16-GAP-00933"},"M16-GAP-00933":{"line":932,"offset":160176,"length":166,"previous":"M16-GAP-00932","next":"M16-GAP-00934"},"M16-GAP-00934":{"line":933,"offset":160342,"length":167,"previous":"M16-GAP-00933","next":"M16-GAP-00935"},"M16-GAP-00935":{"line":934,"offset":160509,"length":167,"previous":"M16-GAP-00934","next":"M16-GAP-00936"},"M16-GAP-00936":{"line":935,"offset":160676,"length":168,"previous":"M16-GAP-00935","next":"M16-GAP-00937"},"M16-GAP-00937":{"line":936,"offset":160844,"length":167,"previous":"M16-GAP-00936","next":"M16-GAP-00938"},"M16-GAP-00938":{"line":937,"offset":161011,"length":169,"previous":"M16-GAP-00937","next":"M16-GAP-00939"},"M16-GAP-00939":{"line":938,"offset":161180,"length":169,"previous":"M16-GAP-00938","next":"M16-GAP-00940"},"M16-GAP-00940":{"line":939,"offset":161349,"length":178,"previous":"M16-GAP-00939","next":"M16-GAP-00941"},"M16-GAP-00941":{"line":940,"offset":161527,"length":166,"previous":"M16-GAP-00940","next":"M16-GAP-00942"},"M16-GAP-00942":{"line":941,"offset":161693,"length":166,"previous":"M16-GAP-00941","next":"M16-GAP-00943"},"M16-GAP-00943":{"line":942,"offset":161859,"length":167,"previous":"M16-GAP-00942","next":"M16-GAP-00944"},"M16-GAP-00944":{"line":943,"offset":162026,"length":163,"previous":"M16-GAP-00943","next":"M16-GAP-00945"},"M16-GAP-00945":{"line":944,"offset":162189,"length":171,"previous":"M16-GAP-00944","next":"M16-GAP-00946"},"M16-GAP-00946":{"line":945,"offset":162360,"length":169,"previous":"M16-GAP-00945","next":"M16-GAP-00947"},"M16-GAP-00947":{"line":946,"offset":162529,"length":170,"previous":"M16-GAP-00946","next":"M16-GAP-00948"},"M16-GAP-00948":{"line":947,"offset":162699,"length":172,"previous":"M16-GAP-00947","next":"M16-GAP-00949"},"M16-GAP-00949":{"line":948,"offset":162871,"length":170,"previous":"M16-GAP-00948","next":"M16-GAP-00950"},"M16-GAP-00950":{"line":949,"offset":163041,"length":172,"previous":"M16-GAP-00949","next":"M16-GAP-00951"},"M16-GAP-00951":{"line":950,"offset":163213,"length":175,"previous":"M16-GAP-00950","next":"M16-GAP-00952"},"M16-GAP-00952":{"line":951,"offset":163388,"length":161,"previous":"M16-GAP-00951","next":"M16-GAP-00953"},"M16-GAP-00953":{"line":952,"offset":163549,"length":169,"previous":"M16-GAP-00952","next":"M16-GAP-00954"},"M16-GAP-00954":{"line":953,"offset":163718,"length":164,"previous":"M16-GAP-00953","next":"M16-GAP-00955"},"M16-GAP-00955":{"line":954,"offset":163882,"length":167,"previous":"M16-GAP-00954","next":"M16-GAP-00956"},"M16-GAP-00956":{"line":955,"offset":164049,"length":174,"previous":"M16-GAP-00955","next":"M16-GAP-00957"},"M16-GAP-00957":{"line":956,"offset":164223,"length":162,"previous":"M16-GAP-00956","next":"M16-GAP-00958"},"M16-GAP-00958":{"line":957,"offset":164385,"length":164,"previous":"M16-GAP-00957","next":"M16-GAP-00959"},"M16-GAP-00959":{"line":958,"offset":164549,"length":164,"previous":"M16-GAP-00958","next":"M16-GAP-00960"},"M16-GAP-00960":{"line":959,"offset":164713,"length":168,"previous":"M16-GAP-00959","next":"M16-GAP-00961"},"M16-GAP-00961":{"line":960,"offset":164881,"length":168,"previous":"M16-GAP-00960","next":"M16-GAP-00962"},"M16-GAP-00962":{"line":961,"offset":165049,"length":174,"previous":"M16-GAP-00961","next":"M16-GAP-00963"},"M16-GAP-00963":{"line":962,"offset":165223,"length":174,"previous":"M16-GAP-00962","next":"M16-GAP-00964"},"M16-GAP-00964":{"line":963,"offset":165397,"length":180,"previous":"M16-GAP-00963","next":"M16-GAP-00965"},"M16-GAP-00965":{"line":964,"offset":165577,"length":166,"previous":"M16-GAP-00964","next":"M16-GAP-00966"},"M16-GAP-00966":{"line":965,"offset":165743,"length":172,"previous":"M16-GAP-00965","next":"M16-GAP-00967"},"M16-GAP-00967":{"line":966,"offset":165915,"length":168,"previous":"M16-GAP-00966","next":"M16-GAP-00968"},"M16-GAP-00968":{"line":967,"offset":166083,"length":169,"previous":"M16-GAP-00967","next":"M16-GAP-00969"},"M16-GAP-00969":{"line":968,"offset":166252,"length":162,"previous":"M16-GAP-00968","next":"M16-GAP-00970"},"M16-GAP-00970":{"line":969,"offset":166414,"length":165,"previous":"M16-GAP-00969","next":"M16-GAP-00971"},"M16-GAP-00971":{"line":970,"offset":166579,"length":170,"previous":"M16-GAP-00970","next":"M16-GAP-00972"},"M16-GAP-00972":{"line":971,"offset":166749,"length":176,"previous":"M16-GAP-00971","next":"M16-GAP-00973"},"M16-GAP-00973":{"line":972,"offset":166925,"length":171,"previous":"M16-GAP-00972","next":"M16-GAP-00974"},"M16-GAP-00974":{"line":973,"offset":167096,"length":171,"previous":"M16-GAP-00973","next":"M16-GAP-00975"},"M16-GAP-00975":{"line":974,"offset":167267,"length":169,"previous":"M16-GAP-00974","next":"M16-GAP-00976"},"M16-GAP-00976":{"line":975,"offset":167436,"length":166,"previous":"M16-GAP-00975","next":"M16-GAP-00977"},"M16-GAP-00977":{"line":976,"offset":167602,"length":165,"previous":"M16-GAP-00976","next":"M16-GAP-00978"},"M16-GAP-00978":{"line":977,"offset":167767,"length":168,"previous":"M16-GAP-00977","next":"M16-GAP-00979"},"M16-GAP-00979":{"line":978,"offset":167935,"length":169,"previous":"M16-GAP-00978","next":"M16-GAP-00980"},"M16-GAP-00980":{"line":979,"offset":168104,"length":159,"previous":"M16-GAP-00979","next":"M16-GAP-00981"},"M16-GAP-00981":{"line":980,"offset":168263,"length":179,"previous":"M16-GAP-00980","next":"M16-GAP-00982"},"M16-GAP-00982":{"line":981,"offset":168442,"length":168,"previous":"M16-GAP-00981","next":"M16-GAP-00983"},"M16-GAP-00983":{"line":982,"offset":168610,"length":166,"previous":"M16-GAP-00982","next":"M16-GAP-00984"},"M16-GAP-00984":{"line":983,"offset":168776,"length":169,"previous":"M16-GAP-00983","next":"M16-GAP-00985"},"M16-GAP-00985":{"line":984,"offset":168945,"length":176,"previous":"M16-GAP-00984","next":"M16-GAP-00986"},"M16-GAP-00986":{"line":985,"offset":169121,"length":176,"previous":"M16-GAP-00985","next":"M16-GAP-00987"},"M16-GAP-00987":{"line":986,"offset":169297,"length":162,"previous":"M16-GAP-00986","next":"M16-GAP-00988"},"M16-GAP-00988":{"line":987,"offset":169459,"length":166,"previous":"M16-GAP-00987","next":"M16-GAP-00989"},"M16-GAP-00989":{"line":988,"offset":169625,"length":166,"previous":"M16-GAP-00988","next":"M16-GAP-00990"},"M16-GAP-00990":{"line":989,"offset":169791,"length":169,"previous":"M16-GAP-00989","next":"M16-GAP-00991"},"M16-GAP-00991":{"line":990,"offset":169960,"length":168,"previous":"M16-GAP-00990","next":"M16-GAP-00992"},"M16-GAP-00992":{"line":991,"offset":170128,"length":167,"previous":"M16-GAP-00991","next":"M16-GAP-00993"},"M16-GAP-00993":{"line":992,"offset":170295,"length":169,"previous":"M16-GAP-00992","next":"M16-GAP-00994"},"M16-GAP-00994":{"line":993,"offset":170464,"length":174,"previous":"M16-GAP-00993","next":"M16-GAP-00995"},"M16-GAP-00995":{"line":994,"offset":170638,"length":167,"previous":"M16-GAP-00994","next":"M16-GAP-00996"},"M16-GAP-00996":{"line":995,"offset":170805,"length":171,"previous":"M16-GAP-00995","next":"M16-GAP-00997"},"M16-GAP-00997":{"line":996,"offset":170976,"length":179,"previous":"M16-GAP-00996","next":"M16-GAP-00998"},"M16-GAP-00998":{"line":997,"offset":171155,"length":172,"previous":"M16-GAP-00997","next":"M16-GAP-00999"},"M16-GAP-00999":{"line":998,"offset":171327,"length":171,"previous":"M16-GAP-00998","next":"M16-GAP-01000"},"M16-GAP-01000":{"line":999,"offset":171498,"length":167,"previous":"M16-GAP-00999","next":"M16-GAP-01001"},"M16-GAP-01001":{"line":1000,"offset":171665,"length":178,"previous":"M16-GAP-01000","next":"M16-GAP-01002"},"M16-GAP-01002":{"line":1001,"offset":171843,"length":172,"previous":"M16-GAP-01001","next":"M16-GAP-01003"},"M16-GAP-01003":{"line":1002,"offset":172015,"length":164,"previous":"M16-GAP-01002","next":"M16-GAP-01004"},"M16-GAP-01004":{"line":1003,"offset":172179,"length":163,"previous":"M16-GAP-01003","next":"M16-GAP-01005"},"M16-GAP-01005":{"line":1004,"offset":172342,"length":165,"previous":"M16-GAP-01004","next":"M16-GAP-01006"},"M16-GAP-01006":{"line":1005,"offset":172507,"length":173,"previous":"M16-GAP-01005","next":"M16-GAP-01007"},"M16-GAP-01007":{"line":1006,"offset":172680,"length":176,"previous":"M16-GAP-01006","next":"M16-GAP-01008"},"M16-GAP-01008":{"line":1007,"offset":172856,"length":171,"previous":"M16-GAP-01007","next":"M16-GAP-01009"},"M16-GAP-01009":{"line":1008,"offset":173027,"length":171,"previous":"M16-GAP-01008","next":"M16-GAP-01010"},"M16-GAP-01010":{"line":1009,"offset":173198,"length":173,"previous":"M16-GAP-01009","next":"M16-GAP-01011"},"M16-GAP-01011":{"line":1010,"offset":173371,"length":167,"previous":"M16-GAP-01010","next":"M16-GAP-01012"},"M16-GAP-01012":{"line":1011,"offset":173538,"length":180,"previous":"M16-GAP-01011","next":"M16-GAP-01013"},"M16-GAP-01013":{"line":1012,"offset":173718,"length":171,"previous":"M16-GAP-01012","next":"M16-GAP-01014"},"M16-GAP-01014":{"line":1013,"offset":173889,"length":169,"previous":"M16-GAP-01013","next":"M16-GAP-01015"},"M16-GAP-01015":{"line":1014,"offset":174058,"length":171,"previous":"M16-GAP-01014","next":"M16-GAP-01016"},"M16-GAP-01016":{"line":1015,"offset":174229,"length":169,"previous":"M16-GAP-01015","next":"M16-GAP-01017"},"M16-GAP-01017":{"line":1016,"offset":174398,"length":161,"previous":"M16-GAP-01016","next":"M16-GAP-01018"},"M16-GAP-01018":{"line":1017,"offset":174559,"length":162,"previous":"M16-GAP-01017","next":"M16-GAP-01019"},"M16-GAP-01019":{"line":1018,"offset":174721,"length":172,"previous":"M16-GAP-01018","next":"M16-GAP-01020"},"M16-GAP-01020":{"line":1019,"offset":174893,"length":173,"previous":"M16-GAP-01019","next":"M16-GAP-01021"},"M16-GAP-01021":{"line":1020,"offset":175066,"length":167,"previous":"M16-GAP-01020","next":"M16-GAP-01022"},"M16-GAP-01022":{"line":1021,"offset":175233,"length":170,"previous":"M16-GAP-01021","next":"M16-GAP-01023"},"M16-GAP-01023":{"line":1022,"offset":175403,"length":169,"previous":"M16-GAP-01022","next":"M16-GAP-01024"},"M16-GAP-01024":{"line":1023,"offset":175572,"length":167,"previous":"M16-GAP-01023","next":"M16-GAP-01025"},"M16-GAP-01025":{"line":1024,"offset":175739,"length":190,"previous":"M16-GAP-01024","next":"M16-GAP-01026"},"M16-GAP-01026":{"line":1025,"offset":175929,"length":192,"previous":"M16-GAP-01025","next":"M16-GAP-01027"},"M16-GAP-01027":{"line":1026,"offset":176121,"length":182,"previous":"M16-GAP-01026","next":"M16-GAP-01028"},"M16-GAP-01028":{"line":1027,"offset":176303,"length":177,"previous":"M16-GAP-01027","next":"M16-GAP-01029"},"M16-GAP-01029":{"line":1028,"offset":176480,"length":175,"previous":"M16-GAP-01028","next":"M16-GAP-01030"},"M16-GAP-01030":{"line":1029,"offset":176655,"length":177,"previous":"M16-GAP-01029","next":"M16-GAP-01031"},"M16-GAP-01031":{"line":1030,"offset":176832,"length":164,"previous":"M16-GAP-01030","next":"M16-GAP-01032"},"M16-GAP-01032":{"line":1031,"offset":176996,"length":162,"previous":"M16-GAP-01031","next":"M16-GAP-01033"},"M16-GAP-01033":{"line":1032,"offset":177158,"length":171,"previous":"M16-GAP-01032","next":"M16-GAP-01034"},"M16-GAP-01034":{"line":1033,"offset":177329,"length":168,"previous":"M16-GAP-01033","next":"M16-GAP-01035"},"M16-GAP-01035":{"line":1034,"offset":177497,"length":175,"previous":"M16-GAP-01034","next":"M16-GAP-01036"},"M16-GAP-01036":{"line":1035,"offset":177672,"length":170,"previous":"M16-GAP-01035","next":"M16-GAP-01037"},"M16-GAP-01037":{"line":1036,"offset":177842,"length":170,"previous":"M16-GAP-01036","next":"M16-GAP-01038"},"M16-GAP-01038":{"line":1037,"offset":178012,"length":172,"previous":"M16-GAP-01037","next":"M16-GAP-01039"},"M16-GAP-01039":{"line":1038,"offset":178184,"length":169,"previous":"M16-GAP-01038","next":"M16-GAP-01040"},"M16-GAP-01040":{"line":1039,"offset":178353,"length":170,"previous":"M16-GAP-01039","next":"M16-GAP-01041"},"M16-GAP-01041":{"line":1040,"offset":178523,"length":176,"previous":"M16-GAP-01040","next":"M16-GAP-01042"},"M16-GAP-01042":{"line":1041,"offset":178699,"length":165,"previous":"M16-GAP-01041","next":"M16-GAP-01043"},"M16-GAP-01043":{"line":1042,"offset":178864,"length":170,"previous":"M16-GAP-01042","next":"M16-GAP-01044"},"M16-GAP-01044":{"line":1043,"offset":179034,"length":169,"previous":"M16-GAP-01043","next":"M16-GAP-01045"},"M16-GAP-01045":{"line":1044,"offset":179203,"length":169,"previous":"M16-GAP-01044","next":"M16-GAP-01046"},"M16-GAP-01046":{"line":1045,"offset":179372,"length":167,"previous":"M16-GAP-01045","next":"M16-GAP-01047"},"M16-GAP-01047":{"line":1046,"offset":179539,"length":166,"previous":"M16-GAP-01046","next":"M16-GAP-01048"},"M16-GAP-01048":{"line":1047,"offset":179705,"length":171,"previous":"M16-GAP-01047","next":"M16-GAP-01049"},"M16-GAP-01049":{"line":1048,"offset":179876,"length":174,"previous":"M16-GAP-01048","next":"M16-GAP-01050"},"M16-GAP-01050":{"line":1049,"offset":180050,"length":171,"previous":"M16-GAP-01049","next":"M16-GAP-01051"},"M16-GAP-01051":{"line":1050,"offset":180221,"length":176,"previous":"M16-GAP-01050","next":"M16-GAP-01052"},"M16-GAP-01052":{"line":1051,"offset":180397,"length":175,"previous":"M16-GAP-01051","next":"M16-GAP-01053"},"M16-GAP-01053":{"line":1052,"offset":180572,"length":174,"previous":"M16-GAP-01052","next":"M16-GAP-01054"},"M16-GAP-01054":{"line":1053,"offset":180746,"length":175,"previous":"M16-GAP-01053","next":"M16-GAP-01055"},"M16-GAP-01055":{"line":1054,"offset":180921,"length":174,"previous":"M16-GAP-01054","next":"M16-GAP-01056"},"M16-GAP-01056":{"line":1055,"offset":181095,"length":172,"previous":"M16-GAP-01055","next":"M16-GAP-01057"},"M16-GAP-01057":{"line":1056,"offset":181267,"length":170,"previous":"M16-GAP-01056","next":"M16-GAP-01058"},"M16-GAP-01058":{"line":1057,"offset":181437,"length":175,"previous":"M16-GAP-01057","next":"M16-GAP-01059"},"M16-GAP-01059":{"line":1058,"offset":181612,"length":184,"previous":"M16-GAP-01058","next":"M16-GAP-01060"},"M16-GAP-01060":{"line":1059,"offset":181796,"length":170,"previous":"M16-GAP-01059","next":"M16-GAP-01061"},"M16-GAP-01061":{"line":1060,"offset":181966,"length":177,"previous":"M16-GAP-01060","next":"M16-GAP-01062"},"M16-GAP-01062":{"line":1061,"offset":182143,"length":175,"previous":"M16-GAP-01061","next":"M16-GAP-01063"},"M16-GAP-01063":{"line":1062,"offset":182318,"length":172,"previous":"M16-GAP-01062","next":"M16-GAP-01064"},"M16-GAP-01064":{"line":1063,"offset":182490,"length":175,"previous":"M16-GAP-01063","next":"M16-GAP-01065"},"M16-GAP-01065":{"line":1064,"offset":182665,"length":180,"previous":"M16-GAP-01064","next":"M16-GAP-01066"},"M16-GAP-01066":{"line":1065,"offset":182845,"length":172,"previous":"M16-GAP-01065","next":"M16-GAP-01067"},"M16-GAP-01067":{"line":1066,"offset":183017,"length":174,"previous":"M16-GAP-01066","next":"M16-GAP-01068"},"M16-GAP-01068":{"line":1067,"offset":183191,"length":160,"previous":"M16-GAP-01067","next":"M16-GAP-01069"},"M16-GAP-01069":{"line":1068,"offset":183351,"length":165,"previous":"M16-GAP-01068","next":"M16-GAP-01070"},"M16-GAP-01070":{"line":1069,"offset":183516,"length":166,"previous":"M16-GAP-01069","next":"M16-GAP-01071"},"M16-GAP-01071":{"line":1070,"offset":183682,"length":163,"previous":"M16-GAP-01070","next":"M16-GAP-01072"},"M16-GAP-01072":{"line":1071,"offset":183845,"length":168,"previous":"M16-GAP-01071","next":"M16-GAP-01073"},"M16-GAP-01073":{"line":1072,"offset":184013,"length":178,"previous":"M16-GAP-01072","next":"M16-GAP-01074"},"M16-GAP-01074":{"line":1073,"offset":184191,"length":160,"previous":"M16-GAP-01073","next":"M16-GAP-01075"},"M16-GAP-01075":{"line":1074,"offset":184351,"length":161,"previous":"M16-GAP-01074","next":"M16-GAP-01076"},"M16-GAP-01076":{"line":1075,"offset":184512,"length":165,"previous":"M16-GAP-01075","next":"M16-GAP-01077"},"M16-GAP-01077":{"line":1076,"offset":184677,"length":173,"previous":"M16-GAP-01076","next":"M16-GAP-01078"},"M16-GAP-01078":{"line":1077,"offset":184850,"length":169,"previous":"M16-GAP-01077","next":"M16-GAP-01079"},"M16-GAP-01079":{"line":1078,"offset":185019,"length":166,"previous":"M16-GAP-01078","next":"M16-GAP-01080"},"M16-GAP-01080":{"line":1079,"offset":185185,"length":167,"previous":"M16-GAP-01079","next":"M16-GAP-01081"},"M16-GAP-01081":{"line":1080,"offset":185352,"length":170,"previous":"M16-GAP-01080","next":"M16-GAP-01082"},"M16-GAP-01082":{"line":1081,"offset":185522,"length":163,"previous":"M16-GAP-01081","next":"M16-GAP-01083"},"M16-GAP-01083":{"line":1082,"offset":185685,"length":169,"previous":"M16-GAP-01082","next":"M16-GAP-01084"},"M16-GAP-01084":{"line":1083,"offset":185854,"length":175,"previous":"M16-GAP-01083","next":"M16-GAP-01085"},"M16-GAP-01085":{"line":1084,"offset":186029,"length":175,"previous":"M16-GAP-01084","next":"M16-GAP-01086"},"M16-GAP-01086":{"line":1085,"offset":186204,"length":165,"previous":"M16-GAP-01085","next":"M16-GAP-01087"},"M16-GAP-01087":{"line":1086,"offset":186369,"length":166,"previous":"M16-GAP-01086","next":"M16-GAP-01088"},"M16-GAP-01088":{"line":1087,"offset":186535,"length":161,"previous":"M16-GAP-01087","next":"M16-GAP-01089"},"M16-GAP-01089":{"line":1088,"offset":186696,"length":169,"previous":"M16-GAP-01088","next":"M16-GAP-01090"},"M16-GAP-01090":{"line":1089,"offset":186865,"length":177,"previous":"M16-GAP-01089","next":"M16-GAP-01091"},"M16-GAP-01091":{"line":1090,"offset":187042,"length":179,"previous":"M16-GAP-01090","next":"M16-GAP-01092"},"M16-GAP-01092":{"line":1091,"offset":187221,"length":169,"previous":"M16-GAP-01091","next":"M16-GAP-01093"},"M16-GAP-01093":{"line":1092,"offset":187390,"length":173,"previous":"M16-GAP-01092","next":"M16-GAP-01094"},"M16-GAP-01094":{"line":1093,"offset":187563,"length":179,"previous":"M16-GAP-01093","next":"M16-GAP-01095"},"M16-GAP-01095":{"line":1094,"offset":187742,"length":169,"previous":"M16-GAP-01094","next":"M16-GAP-01096"},"M16-GAP-01096":{"line":1095,"offset":187911,"length":160,"previous":"M16-GAP-01095","next":"M16-GAP-01097"},"M16-GAP-01097":{"line":1096,"offset":188071,"length":182,"previous":"M16-GAP-01096","next":"M16-GAP-01098"},"M16-GAP-01098":{"line":1097,"offset":188253,"length":184,"previous":"M16-GAP-01097","next":"M16-GAP-01099"},"M16-GAP-01099":{"line":1098,"offset":188437,"length":188,"previous":"M16-GAP-01098","next":"M16-GAP-01100"},"M16-GAP-01100":{"line":1099,"offset":188625,"length":180,"previous":"M16-GAP-01099","next":"M16-GAP-01101"},"M16-GAP-01101":{"line":1100,"offset":188805,"length":185,"previous":"M16-GAP-01100","next":"M16-GAP-01102"},"M16-GAP-01102":{"line":1101,"offset":188990,"length":181,"previous":"M16-GAP-01101","next":"M16-GAP-01103"},"M16-GAP-01103":{"line":1102,"offset":189171,"length":186,"previous":"M16-GAP-01102","next":"M16-GAP-01104"},"M16-GAP-01104":{"line":1103,"offset":189357,"length":185,"previous":"M16-GAP-01103","next":"M16-GAP-01105"},"M16-GAP-01105":{"line":1104,"offset":189542,"length":190,"previous":"M16-GAP-01104","next":"M16-GAP-01106"},"M16-GAP-01106":{"line":1105,"offset":189732,"length":176,"previous":"M16-GAP-01105","next":"M16-GAP-01107"},"M16-GAP-01107":{"line":1106,"offset":189908,"length":174,"previous":"M16-GAP-01106","next":"M16-GAP-01108"},"M16-GAP-01108":{"line":1107,"offset":190082,"length":174,"previous":"M16-GAP-01107","next":"M16-GAP-01109"},"M16-GAP-01109":{"line":1108,"offset":190256,"length":180,"previous":"M16-GAP-01108","next":"M16-GAP-01110"},"M16-GAP-01110":{"line":1109,"offset":190436,"length":178,"previous":"M16-GAP-01109","next":"M16-GAP-01111"},"M16-GAP-01111":{"line":1110,"offset":190614,"length":174,"previous":"M16-GAP-01110","next":"M16-GAP-01112"},"M16-GAP-01112":{"line":1111,"offset":190788,"length":180,"previous":"M16-GAP-01111","next":"M16-GAP-01113"},"M16-GAP-01113":{"line":1112,"offset":190968,"length":176,"previous":"M16-GAP-01112","next":"M16-GAP-01114"},"M16-GAP-01114":{"line":1113,"offset":191144,"length":175,"previous":"M16-GAP-01113","next":"M16-GAP-01115"},"M16-GAP-01115":{"line":1114,"offset":191319,"length":175,"previous":"M16-GAP-01114","next":"M16-GAP-01116"},"M16-GAP-01116":{"line":1115,"offset":191494,"length":179,"previous":"M16-GAP-01115","next":"M16-GAP-01117"},"M16-GAP-01117":{"line":1116,"offset":191673,"length":177,"previous":"M16-GAP-01116","next":"M16-GAP-01118"},"M16-GAP-01118":{"line":1117,"offset":191850,"length":170,"previous":"M16-GAP-01117","next":"M16-GAP-01119"},"M16-GAP-01119":{"line":1118,"offset":192020,"length":170,"previous":"M16-GAP-01118","next":"M16-GAP-01120"},"M16-GAP-01120":{"line":1119,"offset":192190,"length":180,"previous":"M16-GAP-01119","next":"M16-GAP-01121"},"M16-GAP-01121":{"line":1120,"offset":192370,"length":162,"previous":"M16-GAP-01120","next":"M16-GAP-01122"},"M16-GAP-01122":{"line":1121,"offset":192532,"length":159,"previous":"M16-GAP-01121","next":"M16-GAP-01123"},"M16-GAP-01123":{"line":1122,"offset":192691,"length":164,"previous":"M16-GAP-01122","next":"M16-GAP-01124"},"M16-GAP-01124":{"line":1123,"offset":192855,"length":169,"previous":"M16-GAP-01123","next":"M16-GAP-01125"},"M16-GAP-01125":{"line":1124,"offset":193024,"length":164,"previous":"M16-GAP-01124","next":"M16-GAP-01126"},"M16-GAP-01126":{"line":1125,"offset":193188,"length":161,"previous":"M16-GAP-01125","next":"M16-GAP-01127"},"M16-GAP-01127":{"line":1126,"offset":193349,"length":166,"previous":"M16-GAP-01126","next":"M16-GAP-01128"},"M16-GAP-01128":{"line":1127,"offset":193515,"length":167,"previous":"M16-GAP-01127","next":"M16-GAP-01129"},"M16-GAP-01129":{"line":1128,"offset":193682,"length":182,"previous":"M16-GAP-01128","next":"M16-GAP-01130"},"M16-GAP-01130":{"line":1129,"offset":193864,"length":175,"previous":"M16-GAP-01129","next":"M16-GAP-01131"},"M16-GAP-01131":{"line":1130,"offset":194039,"length":176,"previous":"M16-GAP-01130","next":"M16-GAP-01132"},"M16-GAP-01132":{"line":1131,"offset":194215,"length":178,"previous":"M16-GAP-01131","next":"M16-GAP-01133"},"M16-GAP-01133":{"line":1132,"offset":194393,"length":178,"previous":"M16-GAP-01132","next":"M16-GAP-01134"},"M16-GAP-01134":{"line":1133,"offset":194571,"length":176,"previous":"M16-GAP-01133","next":"M16-GAP-01135"},"M16-GAP-01135":{"line":1134,"offset":194747,"length":177,"previous":"M16-GAP-01134","next":"M16-GAP-01136"},"M16-GAP-01136":{"line":1135,"offset":194924,"length":167,"previous":"M16-GAP-01135","next":"M16-GAP-01137"},"M16-GAP-01137":{"line":1136,"offset":195091,"length":169,"previous":"M16-GAP-01136","next":"M16-GAP-01138"},"M16-GAP-01138":{"line":1137,"offset":195260,"length":174,"previous":"M16-GAP-01137","next":"M16-GAP-01139"},"M16-GAP-01139":{"line":1138,"offset":195434,"length":168,"previous":"M16-GAP-01138","next":"M16-GAP-01140"},"M16-GAP-01140":{"line":1139,"offset":195602,"length":169,"previous":"M16-GAP-01139","next":"M16-GAP-01141"},"M16-GAP-01141":{"line":1140,"offset":195771,"length":167,"previous":"M16-GAP-01140","next":"M16-GAP-01142"},"M16-GAP-01142":{"line":1141,"offset":195938,"length":167,"previous":"M16-GAP-01141","next":"M16-GAP-01143"},"M16-GAP-01143":{"line":1142,"offset":196105,"length":172,"previous":"M16-GAP-01142","next":"M16-GAP-01144"},"M16-GAP-01144":{"line":1143,"offset":196277,"length":175,"previous":"M16-GAP-01143","next":"M16-GAP-01145"},"M16-GAP-01145":{"line":1144,"offset":196452,"length":166,"previous":"M16-GAP-01144","next":"M16-GAP-01146"},"M16-GAP-01146":{"line":1145,"offset":196618,"length":172,"previous":"M16-GAP-01145","next":"M16-GAP-01147"},"M16-GAP-01147":{"line":1146,"offset":196790,"length":169,"previous":"M16-GAP-01146","next":"M16-GAP-01148"},"M16-GAP-01148":{"line":1147,"offset":196959,"length":170,"previous":"M16-GAP-01147","next":"M16-GAP-01149"},"M16-GAP-01149":{"line":1148,"offset":197129,"length":177,"previous":"M16-GAP-01148","next":"M16-GAP-01150"},"M16-GAP-01150":{"line":1149,"offset":197306,"length":172,"previous":"M16-GAP-01149","next":"M16-GAP-01151"},"M16-GAP-01151":{"line":1150,"offset":197478,"length":164,"previous":"M16-GAP-01150","next":"M16-GAP-01152"},"M16-GAP-01152":{"line":1151,"offset":197642,"length":178,"previous":"M16-GAP-01151","next":"M16-GAP-01153"},"M16-GAP-01153":{"line":1152,"offset":197820,"length":178,"previous":"M16-GAP-01152","next":"M16-GAP-01154"},"M16-GAP-01154":{"line":1153,"offset":197998,"length":178,"previous":"M16-GAP-01153","next":"M16-GAP-01155"},"M16-GAP-01155":{"line":1154,"offset":198176,"length":174,"previous":"M16-GAP-01154","next":"M16-GAP-01156"},"M16-GAP-01156":{"line":1155,"offset":198350,"length":176,"previous":"M16-GAP-01155","next":"M16-GAP-01157"},"M16-GAP-01157":{"line":1156,"offset":198526,"length":170,"previous":"M16-GAP-01156","next":"M16-GAP-01158"},"M16-GAP-01158":{"line":1157,"offset":198696,"length":164,"previous":"M16-GAP-01157","next":"M16-GAP-01159"},"M16-GAP-01159":{"line":1158,"offset":198860,"length":169,"previous":"M16-GAP-01158","next":"M16-GAP-01160"},"M16-GAP-01160":{"line":1159,"offset":199029,"length":179,"previous":"M16-GAP-01159","next":"M16-GAP-01161"},"M16-GAP-01161":{"line":1160,"offset":199208,"length":160,"previous":"M16-GAP-01160","next":"M16-GAP-01162"},"M16-GAP-01162":{"line":1161,"offset":199368,"length":161,"previous":"M16-GAP-01161","next":"M16-GAP-01163"},"M16-GAP-01163":{"line":1162,"offset":199529,"length":169,"previous":"M16-GAP-01162","next":"M16-GAP-01164"},"M16-GAP-01164":{"line":1163,"offset":199698,"length":165,"previous":"M16-GAP-01163","next":"M16-GAP-01165"},"M16-GAP-01165":{"line":1164,"offset":199863,"length":174,"previous":"M16-GAP-01164","next":"M16-GAP-01166"},"M16-GAP-01166":{"line":1165,"offset":200037,"length":166,"previous":"M16-GAP-01165","next":"M16-GAP-01167"},"M16-GAP-01167":{"line":1166,"offset":200203,"length":169,"previous":"M16-GAP-01166","next":"M16-GAP-01168"},"M16-GAP-01168":{"line":1167,"offset":200372,"length":177,"previous":"M16-GAP-01167","next":"M16-GAP-01169"},"M16-GAP-01169":{"line":1168,"offset":200549,"length":167,"previous":"M16-GAP-01168","next":"M16-GAP-01170"},"M16-GAP-01170":{"line":1169,"offset":200716,"length":170,"previous":"M16-GAP-01169","next":"M16-GAP-01171"},"M16-GAP-01171":{"line":1170,"offset":200886,"length":173,"previous":"M16-GAP-01170","next":"M16-GAP-01172"},"M16-GAP-01172":{"line":1171,"offset":201059,"length":167,"previous":"M16-GAP-01171","next":"M16-GAP-01173"},"M16-GAP-01173":{"line":1172,"offset":201226,"length":166,"previous":"M16-GAP-01172","next":"M16-GAP-01174"},"M16-GAP-01174":{"line":1173,"offset":201392,"length":168,"previous":"M16-GAP-01173","next":"M16-GAP-01175"},"M16-GAP-01175":{"line":1174,"offset":201560,"length":176,"previous":"M16-GAP-01174","next":"M16-GAP-01176"},"M16-GAP-01176":{"line":1175,"offset":201736,"length":178,"previous":"M16-GAP-01175","next":"M16-GAP-01177"},"M16-GAP-01177":{"line":1176,"offset":201914,"length":173,"previous":"M16-GAP-01176","next":"M16-GAP-01178"},"M16-GAP-01178":{"line":1177,"offset":202087,"length":171,"previous":"M16-GAP-01177","next":"M16-GAP-01179"},"M16-GAP-01179":{"line":1178,"offset":202258,"length":181,"previous":"M16-GAP-01178","next":"M16-GAP-01180"},"M16-GAP-01180":{"line":1179,"offset":202439,"length":165,"previous":"M16-GAP-01179","next":"M16-GAP-01181"},"M16-GAP-01181":{"line":1180,"offset":202604,"length":170,"previous":"M16-GAP-01180","next":"M16-GAP-01182"},"M16-GAP-01182":{"line":1181,"offset":202774,"length":173,"previous":"M16-GAP-01181","next":"M16-GAP-01183"},"M16-GAP-01183":{"line":1182,"offset":202947,"length":168,"previous":"M16-GAP-01182","next":"M16-GAP-01184"},"M16-GAP-01184":{"line":1183,"offset":203115,"length":169,"previous":"M16-GAP-01183","next":"M16-GAP-01185"},"M16-GAP-01185":{"line":1184,"offset":203284,"length":166,"previous":"M16-GAP-01184","next":"M16-GAP-01186"},"M16-GAP-01186":{"line":1185,"offset":203450,"length":159,"previous":"M16-GAP-01185","next":"M16-GAP-01187"},"M16-GAP-01187":{"line":1186,"offset":203609,"length":169,"previous":"M16-GAP-01186","next":"M16-GAP-01188"},"M16-GAP-01188":{"line":1187,"offset":203778,"length":166,"previous":"M16-GAP-01187","next":"M16-GAP-01189"},"M16-GAP-01189":{"line":1188,"offset":203944,"length":167,"previous":"M16-GAP-01188","next":"M16-GAP-01190"},"M16-GAP-01190":{"line":1189,"offset":204111,"length":161,"previous":"M16-GAP-01189","next":"M16-GAP-01191"},"M16-GAP-01191":{"line":1190,"offset":204272,"length":164,"previous":"M16-GAP-01190","next":"M16-GAP-01192"},"M16-GAP-01192":{"line":1191,"offset":204436,"length":176,"previous":"M16-GAP-01191","next":"M16-GAP-01193"},"M16-GAP-01193":{"line":1192,"offset":204612,"length":169,"previous":"M16-GAP-01192","next":"M16-GAP-01194"},"M16-GAP-01194":{"line":1193,"offset":204781,"length":168,"previous":"M16-GAP-01193","next":"M16-GAP-01195"},"M16-GAP-01195":{"line":1194,"offset":204949,"length":169,"previous":"M16-GAP-01194","next":"M16-GAP-01196"},"M16-GAP-01196":{"line":1195,"offset":205118,"length":170,"previous":"M16-GAP-01195","next":"M16-GAP-01197"},"M16-GAP-01197":{"line":1196,"offset":205288,"length":171,"previous":"M16-GAP-01196","next":"M16-GAP-01198"},"M16-GAP-01198":{"line":1197,"offset":205459,"length":163,"previous":"M16-GAP-01197","next":"M16-GAP-01199"},"M16-GAP-01199":{"line":1198,"offset":205622,"length":166,"previous":"M16-GAP-01198","next":"M16-GAP-01200"},"M16-GAP-01200":{"line":1199,"offset":205788,"length":164,"previous":"M16-GAP-01199","next":"M16-GAP-01201"},"M16-GAP-01201":{"line":1200,"offset":205952,"length":162,"previous":"M16-GAP-01200","next":"M16-GAP-01202"},"M16-GAP-01202":{"line":1201,"offset":206114,"length":166,"previous":"M16-GAP-01201","next":"M16-GAP-01203"},"M16-GAP-01203":{"line":1202,"offset":206280,"length":171,"previous":"M16-GAP-01202","next":"M16-GAP-01204"},"M16-GAP-01204":{"line":1203,"offset":206451,"length":165,"previous":"M16-GAP-01203","next":"M16-GAP-01205"},"M16-GAP-01205":{"line":1204,"offset":206616,"length":165,"previous":"M16-GAP-01204","next":"M16-GAP-01206"},"M16-GAP-01206":{"line":1205,"offset":206781,"length":171,"previous":"M16-GAP-01205","next":"M16-GAP-01207"},"M16-GAP-01207":{"line":1206,"offset":206952,"length":175,"previous":"M16-GAP-01206","next":"M16-GAP-01208"},"M16-GAP-01208":{"line":1207,"offset":207127,"length":159,"previous":"M16-GAP-01207","next":"M16-GAP-01209"},"M16-GAP-01209":{"line":1208,"offset":207286,"length":168,"previous":"M16-GAP-01208","next":"M16-GAP-01210"},"M16-GAP-01210":{"line":1209,"offset":207454,"length":160,"previous":"M16-GAP-01209","next":"M16-GAP-01211"},"M16-GAP-01211":{"line":1210,"offset":207614,"length":159,"previous":"M16-GAP-01210","next":"M16-GAP-01212"},"M16-GAP-01212":{"line":1211,"offset":207773,"length":165,"previous":"M16-GAP-01211","next":"M16-GAP-01213"},"M16-GAP-01213":{"line":1212,"offset":207938,"length":168,"previous":"M16-GAP-01212","next":"M16-GAP-01214"},"M16-GAP-01214":{"line":1213,"offset":208106,"length":169,"previous":"M16-GAP-01213","next":"M16-GAP-01215"},"M16-GAP-01215":{"line":1214,"offset":208275,"length":170,"previous":"M16-GAP-01214","next":"M16-GAP-01216"},"M16-GAP-01216":{"line":1215,"offset":208445,"length":169,"previous":"M16-GAP-01215","next":"M16-GAP-01217"},"M16-GAP-01217":{"line":1216,"offset":208614,"length":163,"previous":"M16-GAP-01216","next":"M16-GAP-01218"},"M16-GAP-01218":{"line":1217,"offset":208777,"length":165,"previous":"M16-GAP-01217","next":"M16-GAP-01219"},"M16-GAP-01219":{"line":1218,"offset":208942,"length":168,"previous":"M16-GAP-01218","next":"M16-GAP-01220"},"M16-GAP-01220":{"line":1219,"offset":209110,"length":171,"previous":"M16-GAP-01219","next":"M16-GAP-01221"},"M16-GAP-01221":{"line":1220,"offset":209281,"length":172,"previous":"M16-GAP-01220","next":"M16-GAP-01222"},"M16-GAP-01222":{"line":1221,"offset":209453,"length":170,"previous":"M16-GAP-01221","next":"M16-GAP-01223"},"M16-GAP-01223":{"line":1222,"offset":209623,"length":165,"previous":"M16-GAP-01222","next":"M16-GAP-01224"},"M16-GAP-01224":{"line":1223,"offset":209788,"length":171,"previous":"M16-GAP-01223","next":"M16-GAP-01225"},"M16-GAP-01225":{"line":1224,"offset":209959,"length":189,"previous":"M16-GAP-01224","next":"M16-GAP-01226"},"M16-GAP-01226":{"line":1225,"offset":210148,"length":165,"previous":"M16-GAP-01225","next":"M16-GAP-01227"},"M16-GAP-01227":{"line":1226,"offset":210313,"length":171,"previous":"M16-GAP-01226","next":"M16-GAP-01228"},"M16-GAP-01228":{"line":1227,"offset":210484,"length":176,"previous":"M16-GAP-01227","next":"M16-GAP-01229"},"M16-GAP-01229":{"line":1228,"offset":210660,"length":165,"previous":"M16-GAP-01228","next":"M16-GAP-01230"},"M16-GAP-01230":{"line":1229,"offset":210825,"length":171,"previous":"M16-GAP-01229","next":"M16-GAP-01231"},"M16-GAP-01231":{"line":1230,"offset":210996,"length":164,"previous":"M16-GAP-01230","next":"M16-GAP-01232"},"M16-GAP-01232":{"line":1231,"offset":211160,"length":168,"previous":"M16-GAP-01231","next":"M16-GAP-01233"},"M16-GAP-01233":{"line":1232,"offset":211328,"length":164,"previous":"M16-GAP-01232","next":"M16-GAP-01234"},"M16-GAP-01234":{"line":1233,"offset":211492,"length":166,"previous":"M16-GAP-01233","next":"M16-GAP-01235"},"M16-GAP-01235":{"line":1234,"offset":211658,"length":171,"previous":"M16-GAP-01234","next":"M16-GAP-01236"},"M16-GAP-01236":{"line":1235,"offset":211829,"length":167,"previous":"M16-GAP-01235","next":"M16-GAP-01237"},"M16-GAP-01237":{"line":1236,"offset":211996,"length":175,"previous":"M16-GAP-01236","next":"M16-GAP-01238"},"M16-GAP-01238":{"line":1237,"offset":212171,"length":172,"previous":"M16-GAP-01237","next":"M16-GAP-01239"},"M16-GAP-01239":{"line":1238,"offset":212343,"length":164,"previous":"M16-GAP-01238","next":"M16-GAP-01240"},"M16-GAP-01240":{"line":1239,"offset":212507,"length":162,"previous":"M16-GAP-01239","next":"M16-GAP-01241"},"M16-GAP-01241":{"line":1240,"offset":212669,"length":169,"previous":"M16-GAP-01240","next":"M16-GAP-01242"},"M16-GAP-01242":{"line":1241,"offset":212838,"length":170,"previous":"M16-GAP-01241","next":"M16-GAP-01243"},"M16-GAP-01243":{"line":1242,"offset":213008,"length":172,"previous":"M16-GAP-01242","next":"M16-GAP-01244"},"M16-GAP-01244":{"line":1243,"offset":213180,"length":170,"previous":"M16-GAP-01243","next":"M16-GAP-01245"},"M16-GAP-01245":{"line":1244,"offset":213350,"length":174,"previous":"M16-GAP-01244","next":"M16-GAP-01246"},"M16-GAP-01246":{"line":1245,"offset":213524,"length":175,"previous":"M16-GAP-01245","next":"M16-GAP-01247"},"M16-GAP-01247":{"line":1246,"offset":213699,"length":177,"previous":"M16-GAP-01246","next":"M16-GAP-01248"},"M16-GAP-01248":{"line":1247,"offset":213876,"length":182,"previous":"M16-GAP-01247","next":"M16-GAP-01249"},"M16-GAP-01249":{"line":1248,"offset":214058,"length":183,"previous":"M16-GAP-01248","next":"M16-GAP-01250"},"M16-GAP-01250":{"line":1249,"offset":214241,"length":185,"previous":"M16-GAP-01249","next":"M16-GAP-01251"},"M16-GAP-01251":{"line":1250,"offset":214426,"length":175,"previous":"M16-GAP-01250","next":"M16-GAP-01252"},"M16-GAP-01252":{"line":1251,"offset":214601,"length":170,"previous":"M16-GAP-01251","next":"M16-GAP-01253"},"M16-GAP-01253":{"line":1252,"offset":214771,"length":171,"previous":"M16-GAP-01252","next":"M16-GAP-01254"},"M16-GAP-01254":{"line":1253,"offset":214942,"length":178,"previous":"M16-GAP-01253","next":"M16-GAP-01255"},"M16-GAP-01255":{"line":1254,"offset":215120,"length":179,"previous":"M16-GAP-01254","next":"M16-GAP-01256"},"M16-GAP-01256":{"line":1255,"offset":215299,"length":181,"previous":"M16-GAP-01255","next":"M16-GAP-01257"},"M16-GAP-01257":{"line":1256,"offset":215480,"length":179,"previous":"M16-GAP-01256","next":"M16-GAP-01258"},"M16-GAP-01258":{"line":1257,"offset":215659,"length":180,"previous":"M16-GAP-01257","next":"M16-GAP-01259"},"M16-GAP-01259":{"line":1258,"offset":215839,"length":182,"previous":"M16-GAP-01258","next":"M16-GAP-01260"},"M16-GAP-01260":{"line":1259,"offset":216021,"length":180,"previous":"M16-GAP-01259","next":"M16-GAP-01261"},"M16-GAP-01261":{"line":1260,"offset":216201,"length":181,"previous":"M16-GAP-01260","next":"M16-GAP-01262"},"M16-GAP-01262":{"line":1261,"offset":216382,"length":183,"previous":"M16-GAP-01261","next":"M16-GAP-01263"},"M16-GAP-01263":{"line":1262,"offset":216565,"length":183,"previous":"M16-GAP-01262","next":"M16-GAP-01264"},"M16-GAP-01264":{"line":1263,"offset":216748,"length":179,"previous":"M16-GAP-01263","next":"M16-GAP-01265"},"M16-GAP-01265":{"line":1264,"offset":216927,"length":180,"previous":"M16-GAP-01264","next":"M16-GAP-01266"},"M16-GAP-01266":{"line":1265,"offset":217107,"length":182,"previous":"M16-GAP-01265","next":"M16-GAP-01267"},"M16-GAP-01267":{"line":1266,"offset":217289,"length":173,"previous":"M16-GAP-01266","next":"M16-GAP-01268"},"M16-GAP-01268":{"line":1267,"offset":217462,"length":177,"previous":"M16-GAP-01267","next":"M16-GAP-01269"},"M16-GAP-01269":{"line":1268,"offset":217639,"length":180,"previous":"M16-GAP-01268","next":"M16-GAP-01270"},"M16-GAP-01270":{"line":1269,"offset":217819,"length":173,"previous":"M16-GAP-01269","next":"M16-GAP-01271"},"M16-GAP-01271":{"line":1270,"offset":217992,"length":179,"previous":"M16-GAP-01270","next":"M16-GAP-01272"},"M16-GAP-01272":{"line":1271,"offset":218171,"length":162,"previous":"M16-GAP-01271","next":"M16-GAP-01273"},"M16-GAP-01273":{"line":1272,"offset":218333,"length":177,"previous":"M16-GAP-01272","next":"M16-GAP-01274"},"M16-GAP-01274":{"line":1273,"offset":218510,"length":172,"previous":"M16-GAP-01273","next":"M16-GAP-01275"},"M16-GAP-01275":{"line":1274,"offset":218682,"length":162,"previous":"M16-GAP-01274","next":"M16-GAP-01276"},"M16-GAP-01276":{"line":1275,"offset":218844,"length":179,"previous":"M16-GAP-01275","next":"M16-GAP-01277"},"M16-GAP-01277":{"line":1276,"offset":219023,"length":165,"previous":"M16-GAP-01276","next":"M16-GAP-01278"},"M16-GAP-01278":{"line":1277,"offset":219188,"length":197,"previous":"M16-GAP-01277","next":"M16-GAP-01279"},"M16-GAP-01279":{"line":1278,"offset":219385,"length":188,"previous":"M16-GAP-01278","next":"M16-GAP-01280"},"M16-GAP-01280":{"line":1279,"offset":219573,"length":170,"previous":"M16-GAP-01279","next":"M16-GAP-01281"},"M16-GAP-01281":{"line":1280,"offset":219743,"length":182,"previous":"M16-GAP-01280","next":"M16-GAP-01282"},"M16-GAP-01282":{"line":1281,"offset":219925,"length":177,"previous":"M16-GAP-01281","next":"M16-GAP-01283"},"M16-GAP-01283":{"line":1282,"offset":220102,"length":180,"previous":"M16-GAP-01282","next":"M16-GAP-01284"},"M16-GAP-01284":{"line":1283,"offset":220282,"length":181,"previous":"M16-GAP-01283","next":"M16-GAP-01285"},"M16-GAP-01285":{"line":1284,"offset":220463,"length":183,"previous":"M16-GAP-01284","next":"M16-GAP-01286"},"M16-GAP-01286":{"line":1285,"offset":220646,"length":187,"previous":"M16-GAP-01285","next":"M16-GAP-01287"},"M16-GAP-01287":{"line":1286,"offset":220833,"length":188,"previous":"M16-GAP-01286","next":"M16-GAP-01288"},"M16-GAP-01288":{"line":1287,"offset":221021,"length":190,"previous":"M16-GAP-01287","next":"M16-GAP-01289"},"M16-GAP-01289":{"line":1288,"offset":221211,"length":188,"previous":"M16-GAP-01288","next":"M16-GAP-01290"},"M16-GAP-01290":{"line":1289,"offset":221399,"length":189,"previous":"M16-GAP-01289","next":"M16-GAP-01291"},"M16-GAP-01291":{"line":1290,"offset":221588,"length":191,"previous":"M16-GAP-01290","next":"M16-GAP-01292"},"M16-GAP-01292":{"line":1291,"offset":221779,"length":178,"previous":"M16-GAP-01291","next":"M16-GAP-01293"},"M16-GAP-01293":{"line":1292,"offset":221957,"length":179,"previous":"M16-GAP-01292","next":"M16-GAP-01294"},"M16-GAP-01294":{"line":1293,"offset":222136,"length":181,"previous":"M16-GAP-01293","next":"M16-GAP-01295"},"M16-GAP-01295":{"line":1294,"offset":222317,"length":178,"previous":"M16-GAP-01294","next":"M16-GAP-01296"},"M16-GAP-01296":{"line":1295,"offset":222495,"length":179,"previous":"M16-GAP-01295","next":"M16-GAP-01297"},"M16-GAP-01297":{"line":1296,"offset":222674,"length":181,"previous":"M16-GAP-01296","next":"M16-GAP-01298"},"M16-GAP-01298":{"line":1297,"offset":222855,"length":176,"previous":"M16-GAP-01297","next":"M16-GAP-01299"},"M16-GAP-01299":{"line":1298,"offset":223031,"length":177,"previous":"M16-GAP-01298","next":"M16-GAP-01300"},"M16-GAP-01300":{"line":1299,"offset":223208,"length":179,"previous":"M16-GAP-01299","next":"M16-GAP-01301"},"M16-GAP-01301":{"line":1300,"offset":223387,"length":165,"previous":"M16-GAP-01300","next":"M16-GAP-01302"},"M16-GAP-01302":{"line":1301,"offset":223552,"length":205,"previous":"M16-GAP-01301","next":"M16-GAP-01303"},"M16-GAP-01303":{"line":1302,"offset":223757,"length":206,"previous":"M16-GAP-01302","next":"M16-GAP-01304"},"M16-GAP-01304":{"line":1303,"offset":223963,"length":208,"previous":"M16-GAP-01303","next":"M16-GAP-01305"},"M16-GAP-01305":{"line":1304,"offset":224171,"length":200,"previous":"M16-GAP-01304","next":"M16-GAP-01306"},"M16-GAP-01306":{"line":1305,"offset":224371,"length":201,"previous":"M16-GAP-01305","next":"M16-GAP-01307"},"M16-GAP-01307":{"line":1306,"offset":224572,"length":203,"previous":"M16-GAP-01306","next":"M16-GAP-01308"},"M16-GAP-01308":{"line":1307,"offset":224775,"length":199,"previous":"M16-GAP-01307","next":"M16-GAP-01309"},"M16-GAP-01309":{"line":1308,"offset":224974,"length":200,"previous":"M16-GAP-01308","next":"M16-GAP-01310"},"M16-GAP-01310":{"line":1309,"offset":225174,"length":202,"previous":"M16-GAP-01309","next":"M16-GAP-01311"},"M16-GAP-01311":{"line":1310,"offset":225376,"length":178,"previous":"M16-GAP-01310","next":"M16-GAP-01312"},"M16-GAP-01312":{"line":1311,"offset":225554,"length":179,"previous":"M16-GAP-01311","next":"M16-GAP-01313"},"M16-GAP-01313":{"line":1312,"offset":225733,"length":181,"previous":"M16-GAP-01312","next":"M16-GAP-01314"},"M16-GAP-01314":{"line":1313,"offset":225914,"length":186,"previous":"M16-GAP-01313","next":"M16-GAP-01315"},"M16-GAP-01315":{"line":1314,"offset":226100,"length":187,"previous":"M16-GAP-01314","next":"M16-GAP-01316"},"M16-GAP-01316":{"line":1315,"offset":226287,"length":189,"previous":"M16-GAP-01315","next":"M16-GAP-01317"},"M16-GAP-01317":{"line":1316,"offset":226476,"length":183,"previous":"M16-GAP-01316","next":"M16-GAP-01318"},"M16-GAP-01318":{"line":1317,"offset":226659,"length":166,"previous":"M16-GAP-01317","next":"M16-GAP-01319"},"M16-GAP-01319":{"line":1318,"offset":226825,"length":172,"previous":"M16-GAP-01318","next":"M16-GAP-01320"},"M16-GAP-01320":{"line":1319,"offset":226997,"length":168,"previous":"M16-GAP-01319","next":"M16-GAP-01321"},"M16-GAP-01321":{"line":1320,"offset":227165,"length":166,"previous":"M16-GAP-01320","next":"M16-GAP-01322"},"M16-GAP-01322":{"line":1321,"offset":227331,"length":170,"previous":"M16-GAP-01321","next":"M16-GAP-01323"},"M16-GAP-01323":{"line":1322,"offset":227501,"length":169,"previous":"M16-GAP-01322","next":"M16-GAP-01324"},"M16-GAP-01324":{"line":1323,"offset":227670,"length":174,"previous":"M16-GAP-01323","next":"M16-GAP-01325"},"M16-GAP-01325":{"line":1324,"offset":227844,"length":167,"previous":"M16-GAP-01324","next":"M16-GAP-01326"},"M16-GAP-01326":{"line":1325,"offset":228011,"length":177,"previous":"M16-GAP-01325","next":"M16-GAP-01327"},"M16-GAP-01327":{"line":1326,"offset":228188,"length":178,"previous":"M16-GAP-01326","next":"M16-GAP-01328"},"M16-GAP-01328":{"line":1327,"offset":228366,"length":180,"previous":"M16-GAP-01327","next":"M16-GAP-01329"},"M16-GAP-01329":{"line":1328,"offset":228546,"length":169,"previous":"M16-GAP-01328","next":"M16-GAP-01330"},"M16-GAP-01330":{"line":1329,"offset":228715,"length":180,"previous":"M16-GAP-01329","next":"M16-GAP-01331"},"M16-GAP-01331":{"line":1330,"offset":228895,"length":188,"previous":"M16-GAP-01330","next":"M16-GAP-01332"},"M16-GAP-01332":{"line":1331,"offset":229083,"length":174,"previous":"M16-GAP-01331","next":"M16-GAP-01333"},"M16-GAP-01333":{"line":1332,"offset":229257,"length":187,"previous":"M16-GAP-01332","next":"M16-GAP-01334"},"M16-GAP-01334":{"line":1333,"offset":229444,"length":177,"previous":"M16-GAP-01333","next":"M16-GAP-01335"},"M16-GAP-01335":{"line":1334,"offset":229621,"length":190,"previous":"M16-GAP-01334","next":"M16-GAP-01336"},"M16-GAP-01336":{"line":1335,"offset":229811,"length":160,"previous":"M16-GAP-01335","next":"M16-GAP-01337"},"M16-GAP-01337":{"line":1336,"offset":229971,"length":166,"previous":"M16-GAP-01336","next":"M16-GAP-01338"},"M16-GAP-01338":{"line":1337,"offset":230137,"length":166,"previous":"M16-GAP-01337","next":"M16-GAP-01339"},"M16-GAP-01339":{"line":1338,"offset":230303,"length":160,"previous":"M16-GAP-01338","next":"M16-GAP-01340"},"M16-GAP-01340":{"line":1339,"offset":230463,"length":180,"previous":"M16-GAP-01339","next":"M16-GAP-01341"},"M16-GAP-01341":{"line":1340,"offset":230643,"length":165,"previous":"M16-GAP-01340","next":"M16-GAP-01342"},"M16-GAP-01342":{"line":1341,"offset":230808,"length":167,"previous":"M16-GAP-01341","next":"M16-GAP-01343"},"M16-GAP-01343":{"line":1342,"offset":230975,"length":165,"previous":"M16-GAP-01342","next":"M16-GAP-01344"},"M16-GAP-01344":{"line":1343,"offset":231140,"length":168,"previous":"M16-GAP-01343","next":"M16-GAP-01345"},"M16-GAP-01345":{"line":1344,"offset":231308,"length":166,"previous":"M16-GAP-01344","next":"M16-GAP-01346"},"M16-GAP-01346":{"line":1345,"offset":231474,"length":173,"previous":"M16-GAP-01345","next":"M16-GAP-01347"},"M16-GAP-01347":{"line":1346,"offset":231647,"length":181,"previous":"M16-GAP-01346","next":"M16-GAP-01348"},"M16-GAP-01348":{"line":1347,"offset":231828,"length":167,"previous":"M16-GAP-01347","next":"M16-GAP-01349"},"M16-GAP-01349":{"line":1348,"offset":231995,"length":182,"previous":"M16-GAP-01348","next":"M16-GAP-01350"},"M16-GAP-01350":{"line":1349,"offset":232177,"length":191,"previous":"M16-GAP-01349","next":"M16-GAP-01351"},"M16-GAP-01351":{"line":1350,"offset":232368,"length":186,"previous":"M16-GAP-01350","next":"M16-GAP-01352"},"M16-GAP-01352":{"line":1351,"offset":232554,"length":184,"previous":"M16-GAP-01351","next":"M16-GAP-01353"},"M16-GAP-01353":{"line":1352,"offset":232738,"length":183,"previous":"M16-GAP-01352","next":"M16-GAP-01354"},"M16-GAP-01354":{"line":1353,"offset":232921,"length":169,"previous":"M16-GAP-01353","next":"M16-GAP-01355"},"M16-GAP-01355":{"line":1354,"offset":233090,"length":177,"previous":"M16-GAP-01354","next":"M16-GAP-01356"},"M16-GAP-01356":{"line":1355,"offset":233267,"length":171,"previous":"M16-GAP-01355","next":"M16-GAP-01357"},"M16-GAP-01357":{"line":1356,"offset":233438,"length":170,"previous":"M16-GAP-01356","next":"M16-GAP-01358"},"M16-GAP-01358":{"line":1357,"offset":233608,"length":166,"previous":"M16-GAP-01357","next":"M16-GAP-01359"},"M16-GAP-01359":{"line":1358,"offset":233774,"length":170,"previous":"M16-GAP-01358","next":"M16-GAP-01360"},"M16-GAP-01360":{"line":1359,"offset":233944,"length":171,"previous":"M16-GAP-01359","next":"M16-GAP-01361"},"M16-GAP-01361":{"line":1360,"offset":234115,"length":170,"previous":"M16-GAP-01360","next":"M16-GAP-01362"},"M16-GAP-01362":{"line":1361,"offset":234285,"length":176,"previous":"M16-GAP-01361","next":"M16-GAP-01363"},"M16-GAP-01363":{"line":1362,"offset":234461,"length":177,"previous":"M16-GAP-01362","next":"M16-GAP-01364"},"M16-GAP-01364":{"line":1363,"offset":234638,"length":179,"previous":"M16-GAP-01363","next":"M16-GAP-01365"},"M16-GAP-01365":{"line":1364,"offset":234817,"length":162,"previous":"M16-GAP-01364","next":"M16-GAP-01366"},"M16-GAP-01366":{"line":1365,"offset":234979,"length":187,"previous":"M16-GAP-01365","next":"M16-GAP-01367"},"M16-GAP-01367":{"line":1366,"offset":235166,"length":188,"previous":"M16-GAP-01366","next":"M16-GAP-01368"},"M16-GAP-01368":{"line":1367,"offset":235354,"length":190,"previous":"M16-GAP-01367","next":"M16-GAP-01369"},"M16-GAP-01369":{"line":1368,"offset":235544,"length":162,"previous":"M16-GAP-01368","next":"M16-GAP-01370"},"M16-GAP-01370":{"line":1369,"offset":235706,"length":166,"previous":"M16-GAP-01369","next":"M16-GAP-01371"},"M16-GAP-01371":{"line":1370,"offset":235872,"length":166,"previous":"M16-GAP-01370","next":"M16-GAP-01372"},"M16-GAP-01372":{"line":1371,"offset":236038,"length":169,"previous":"M16-GAP-01371","next":"M16-GAP-01373"},"M16-GAP-01373":{"line":1372,"offset":236207,"length":170,"previous":"M16-GAP-01372","next":"M16-GAP-01374"},"M16-GAP-01374":{"line":1373,"offset":236377,"length":168,"previous":"M16-GAP-01373","next":"M16-GAP-01375"},"M16-GAP-01375":{"line":1374,"offset":236545,"length":174,"previous":"M16-GAP-01374","next":"M16-GAP-01376"},"M16-GAP-01376":{"line":1375,"offset":236719,"length":174,"previous":"M16-GAP-01375","next":"M16-GAP-01377"},"M16-GAP-01377":{"line":1376,"offset":236893,"length":172,"previous":"M16-GAP-01376","next":"M16-GAP-01378"},"M16-GAP-01378":{"line":1377,"offset":237065,"length":177,"previous":"M16-GAP-01377","next":"M16-GAP-01379"},"M16-GAP-01379":{"line":1378,"offset":237242,"length":180,"previous":"M16-GAP-01378","next":"M16-GAP-01380"},"M16-GAP-01380":{"line":1379,"offset":237422,"length":181,"previous":"M16-GAP-01379","next":"M16-GAP-01381"},"M16-GAP-01381":{"line":1380,"offset":237603,"length":183,"previous":"M16-GAP-01380","next":"M16-GAP-01382"},"M16-GAP-01382":{"line":1381,"offset":237786,"length":176,"previous":"M16-GAP-01381","next":"M16-GAP-01383"},"M16-GAP-01383":{"line":1382,"offset":237962,"length":180,"previous":"M16-GAP-01382","next":"M16-GAP-01384"},"M16-GAP-01384":{"line":1383,"offset":238142,"length":181,"previous":"M16-GAP-01383","next":"M16-GAP-01385"},"M16-GAP-01385":{"line":1384,"offset":238323,"length":183,"previous":"M16-GAP-01384","next":"M16-GAP-01386"},"M16-GAP-01386":{"line":1385,"offset":238506,"length":168,"previous":"M16-GAP-01385","next":"M16-GAP-01387"},"M16-GAP-01387":{"line":1386,"offset":238674,"length":172,"previous":"M16-GAP-01386","next":"M16-GAP-01388"},"M16-GAP-01388":{"line":1387,"offset":238846,"length":172,"previous":"M16-GAP-01387","next":"M16-GAP-01389"},"M16-GAP-01389":{"line":1388,"offset":239018,"length":165,"previous":"M16-GAP-01388","next":"M16-GAP-01390"},"M16-GAP-01390":{"line":1389,"offset":239183,"length":173,"previous":"M16-GAP-01389","next":"M16-GAP-01391"},"M16-GAP-01391":{"line":1390,"offset":239356,"length":165,"previous":"M16-GAP-01390","next":"M16-GAP-01392"},"M16-GAP-01392":{"line":1391,"offset":239521,"length":182,"previous":"M16-GAP-01391","next":"M16-GAP-01393"},"M16-GAP-01393":{"line":1392,"offset":239703,"length":169,"previous":"M16-GAP-01392","next":"M16-GAP-01394"},"M16-GAP-01394":{"line":1393,"offset":239872,"length":172,"previous":"M16-GAP-01393","next":"M16-GAP-01395"},"M16-GAP-01395":{"line":1394,"offset":240044,"length":189,"previous":"M16-GAP-01394","next":"M16-GAP-01396"},"M16-GAP-01396":{"line":1395,"offset":240233,"length":172,"previous":"M16-GAP-01395","next":"M16-GAP-01397"},"M16-GAP-01397":{"line":1396,"offset":240405,"length":164,"previous":"M16-GAP-01396","next":"M16-GAP-01398"},"M16-GAP-01398":{"line":1397,"offset":240569,"length":169,"previous":"M16-GAP-01397","next":"M16-GAP-01399"},"M16-GAP-01399":{"line":1398,"offset":240738,"length":169,"previous":"M16-GAP-01398","next":"M16-GAP-01400"},"M16-GAP-01400":{"line":1399,"offset":240907,"length":175,"previous":"M16-GAP-01399","next":"M16-GAP-01401"},"M16-GAP-01401":{"line":1400,"offset":241082,"length":175,"previous":"M16-GAP-01400","next":"M16-GAP-01402"},"M16-GAP-01402":{"line":1401,"offset":241257,"length":161,"previous":"M16-GAP-01401","next":"M16-GAP-01403"},"M16-GAP-01403":{"line":1402,"offset":241418,"length":175,"previous":"M16-GAP-01402","next":"M16-GAP-01404"},"M16-GAP-01404":{"line":1403,"offset":241593,"length":167,"previous":"M16-GAP-01403","next":"M16-GAP-01405"},"M16-GAP-01405":{"line":1404,"offset":241760,"length":163,"previous":"M16-GAP-01404","next":"M16-GAP-01406"},"M16-GAP-01406":{"line":1405,"offset":241923,"length":183,"previous":"M16-GAP-01405","next":"M16-GAP-01407"},"M16-GAP-01407":{"line":1406,"offset":242106,"length":170,"previous":"M16-GAP-01406","next":"M16-GAP-01408"},"M16-GAP-01408":{"line":1407,"offset":242276,"length":182,"previous":"M16-GAP-01407","next":"M16-GAP-01409"},"M16-GAP-01409":{"line":1408,"offset":242458,"length":162,"previous":"M16-GAP-01408","next":"M16-GAP-01410"},"M16-GAP-01410":{"line":1409,"offset":242620,"length":168,"previous":"M16-GAP-01409","next":"M16-GAP-01411"},"M16-GAP-01411":{"line":1410,"offset":242788,"length":168,"previous":"M16-GAP-01410","next":"M16-GAP-01412"},"M16-GAP-01412":{"line":1411,"offset":242956,"length":178,"previous":"M16-GAP-01411","next":"M16-GAP-01413"},"M16-GAP-01413":{"line":1412,"offset":243134,"length":180,"previous":"M16-GAP-01412","next":"M16-GAP-01414"},"M16-GAP-01414":{"line":1413,"offset":243314,"length":172,"previous":"M16-GAP-01413","next":"M16-GAP-01415"},"M16-GAP-01415":{"line":1414,"offset":243486,"length":188,"previous":"M16-GAP-01414","next":"M16-GAP-01416"},"M16-GAP-01416":{"line":1415,"offset":243674,"length":181,"previous":"M16-GAP-01415","next":"M16-GAP-01417"},"M16-GAP-01417":{"line":1416,"offset":243855,"length":173,"previous":"M16-GAP-01416","next":"M16-GAP-01418"},"M16-GAP-01418":{"line":1417,"offset":244028,"length":183,"previous":"M16-GAP-01417","next":"M16-GAP-01419"},"M16-GAP-01419":{"line":1418,"offset":244211,"length":175,"previous":"M16-GAP-01418","next":"M16-GAP-01420"},"M16-GAP-01420":{"line":1419,"offset":244386,"length":175,"previous":"M16-GAP-01419","next":"M16-GAP-01421"},"M16-GAP-01421":{"line":1420,"offset":244561,"length":172,"previous":"M16-GAP-01420","next":"M16-GAP-01422"},"M16-GAP-01422":{"line":1421,"offset":244733,"length":185,"previous":"M16-GAP-01421","next":"M16-GAP-01423"},"M16-GAP-01423":{"line":1422,"offset":244918,"length":175,"previous":"M16-GAP-01422","next":"M16-GAP-01424"},"M16-GAP-01424":{"line":1423,"offset":245093,"length":174,"previous":"M16-GAP-01423","next":"M16-GAP-01425"},"M16-GAP-01425":{"line":1424,"offset":245267,"length":165,"previous":"M16-GAP-01424","next":"M16-GAP-01426"},"M16-GAP-01426":{"line":1425,"offset":245432,"length":179,"previous":"M16-GAP-01425","next":"M16-GAP-01427"},"M16-GAP-01427":{"line":1426,"offset":245611,"length":181,"previous":"M16-GAP-01426","next":"M16-GAP-01428"},"M16-GAP-01428":{"line":1427,"offset":245792,"length":179,"previous":"M16-GAP-01427","next":"M16-GAP-01429"},"M16-GAP-01429":{"line":1428,"offset":245971,"length":179,"previous":"M16-GAP-01428","next":"M16-GAP-01430"},"M16-GAP-01430":{"line":1429,"offset":246150,"length":175,"previous":"M16-GAP-01429","next":"M16-GAP-01431"},"M16-GAP-01431":{"line":1430,"offset":246325,"length":175,"previous":"M16-GAP-01430","next":"M16-GAP-01432"},"M16-GAP-01432":{"line":1431,"offset":246500,"length":171,"previous":"M16-GAP-01431","next":"M16-GAP-01433"},"M16-GAP-01433":{"line":1432,"offset":246671,"length":177,"previous":"M16-GAP-01432","next":"M16-GAP-01434"},"M16-GAP-01434":{"line":1433,"offset":246848,"length":164,"previous":"M16-GAP-01433","next":"M16-GAP-01435"},"M16-GAP-01435":{"line":1434,"offset":247012,"length":183,"previous":"M16-GAP-01434","next":"M16-GAP-01436"},"M16-GAP-01436":{"line":1435,"offset":247195,"length":177,"previous":"M16-GAP-01435","next":"M16-GAP-01437"},"M16-GAP-01437":{"line":1436,"offset":247372,"length":177,"previous":"M16-GAP-01436","next":"M16-GAP-01438"},"M16-GAP-01438":{"line":1437,"offset":247549,"length":167,"previous":"M16-GAP-01437","next":"M16-GAP-01439"},"M16-GAP-01439":{"line":1438,"offset":247716,"length":172,"previous":"M16-GAP-01438","next":"M16-GAP-01440"},"M16-GAP-01440":{"line":1439,"offset":247888,"length":179,"previous":"M16-GAP-01439","next":"M16-GAP-01441"},"M16-GAP-01441":{"line":1440,"offset":248067,"length":178,"previous":"M16-GAP-01440","next":"M16-GAP-01442"},"M16-GAP-01442":{"line":1441,"offset":248245,"length":173,"previous":"M16-GAP-01441","next":"M16-GAP-01443"},"M16-GAP-01443":{"line":1442,"offset":248418,"length":170,"previous":"M16-GAP-01442","next":"M16-GAP-01444"},"M16-GAP-01444":{"line":1443,"offset":248588,"length":167,"previous":"M16-GAP-01443","next":"M16-GAP-01445"},"M16-GAP-01445":{"line":1444,"offset":248755,"length":173,"previous":"M16-GAP-01444","next":"M16-GAP-01446"},"M16-GAP-01446":{"line":1445,"offset":248928,"length":173,"previous":"M16-GAP-01445","next":"M16-GAP-01447"},"M16-GAP-01447":{"line":1446,"offset":249101,"length":171,"previous":"M16-GAP-01446","next":"M16-GAP-01448"},"M16-GAP-01448":{"line":1447,"offset":249272,"length":175,"previous":"M16-GAP-01447","next":"M16-GAP-01449"},"M16-GAP-01449":{"line":1448,"offset":249447,"length":190,"previous":"M16-GAP-01448","next":"M16-GAP-01450"},"M16-GAP-01450":{"line":1449,"offset":249637,"length":188,"previous":"M16-GAP-01449","next":"M16-GAP-01451"},"M16-GAP-01451":{"line":1450,"offset":249825,"length":183,"previous":"M16-GAP-01450","next":"M16-GAP-01452"},"M16-GAP-01452":{"line":1451,"offset":250008,"length":190,"previous":"M16-GAP-01451","next":"M16-GAP-01453"},"M16-GAP-01453":{"line":1452,"offset":250198,"length":188,"previous":"M16-GAP-01452","next":"M16-GAP-01454"},"M16-GAP-01454":{"line":1453,"offset":250386,"length":195,"previous":"M16-GAP-01453","next":"M16-GAP-01455"},"M16-GAP-01455":{"line":1454,"offset":250581,"length":186,"previous":"M16-GAP-01454","next":"M16-GAP-01456"},"M16-GAP-01456":{"line":1455,"offset":250767,"length":175,"previous":"M16-GAP-01455","next":"M16-GAP-01457"},"M16-GAP-01457":{"line":1456,"offset":250942,"length":197,"previous":"M16-GAP-01456","next":"M16-GAP-01458"},"M16-GAP-01458":{"line":1457,"offset":251139,"length":198,"previous":"M16-GAP-01457","next":"M16-GAP-01459"},"M16-GAP-01459":{"line":1458,"offset":251337,"length":200,"previous":"M16-GAP-01458","next":"M16-GAP-01460"},"M16-GAP-01460":{"line":1459,"offset":251537,"length":197,"previous":"M16-GAP-01459","next":"M16-GAP-01461"},"M16-GAP-01461":{"line":1460,"offset":251734,"length":198,"previous":"M16-GAP-01460","next":"M16-GAP-01462"},"M16-GAP-01462":{"line":1461,"offset":251932,"length":200,"previous":"M16-GAP-01461","next":"M16-GAP-01463"},"M16-GAP-01463":{"line":1462,"offset":252132,"length":173,"previous":"M16-GAP-01462","next":"M16-GAP-01464"},"M16-GAP-01464":{"line":1463,"offset":252305,"length":179,"previous":"M16-GAP-01463","next":"M16-GAP-01465"},"M16-GAP-01465":{"line":1464,"offset":252484,"length":173,"previous":"M16-GAP-01464","next":"M16-GAP-01466"},"M16-GAP-01466":{"line":1465,"offset":252657,"length":171,"previous":"M16-GAP-01465","next":"M16-GAP-01467"},"M16-GAP-01467":{"line":1466,"offset":252828,"length":172,"previous":"M16-GAP-01466","next":"M16-GAP-01468"},"M16-GAP-01468":{"line":1467,"offset":253000,"length":172,"previous":"M16-GAP-01467","next":"M16-GAP-01469"},"M16-GAP-01469":{"line":1468,"offset":253172,"length":169,"previous":"M16-GAP-01468","next":"M16-GAP-01470"},"M16-GAP-01470":{"line":1469,"offset":253341,"length":171,"previous":"M16-GAP-01469","next":"M16-GAP-01471"},"M16-GAP-01471":{"line":1470,"offset":253512,"length":169,"previous":"M16-GAP-01470","next":"M16-GAP-01472"},"M16-GAP-01472":{"line":1471,"offset":253681,"length":168,"previous":"M16-GAP-01471","next":"M16-GAP-01473"},"M16-GAP-01473":{"line":1472,"offset":253849,"length":169,"previous":"M16-GAP-01472","next":"M16-GAP-01474"},"M16-GAP-01474":{"line":1473,"offset":254018,"length":185,"previous":"M16-GAP-01473","next":"M16-GAP-01475"},"M16-GAP-01475":{"line":1474,"offset":254203,"length":185,"previous":"M16-GAP-01474","next":"M16-GAP-01476"},"M16-GAP-01476":{"line":1475,"offset":254388,"length":183,"previous":"M16-GAP-01475","next":"M16-GAP-01477"},"M16-GAP-01477":{"line":1476,"offset":254571,"length":177,"previous":"M16-GAP-01476","next":"M16-GAP-01478"},"M16-GAP-01478":{"line":1477,"offset":254748,"length":162,"previous":"M16-GAP-01477","next":"M16-GAP-01479"},"M16-GAP-01479":{"line":1478,"offset":254910,"length":169,"previous":"M16-GAP-01478","next":"M16-GAP-01480"},"M16-GAP-01480":{"line":1479,"offset":255079,"length":166,"previous":"M16-GAP-01479","next":"M16-GAP-01481"},"M16-GAP-01481":{"line":1480,"offset":255245,"length":178,"previous":"M16-GAP-01480","next":"M16-GAP-01482"},"M16-GAP-01482":{"line":1481,"offset":255423,"length":181,"previous":"M16-GAP-01481","next":"M16-GAP-01483"},"M16-GAP-01483":{"line":1482,"offset":255604,"length":167,"previous":"M16-GAP-01482","next":"M16-GAP-01484"},"M16-GAP-01484":{"line":1483,"offset":255771,"length":194,"previous":"M16-GAP-01483","next":"M16-GAP-01485"},"M16-GAP-01485":{"line":1484,"offset":255965,"length":185,"previous":"M16-GAP-01484","next":"M16-GAP-01486"},"M16-GAP-01486":{"line":1485,"offset":256150,"length":187,"previous":"M16-GAP-01485","next":"M16-GAP-01487"},"M16-GAP-01487":{"line":1486,"offset":256337,"length":195,"previous":"M16-GAP-01486","next":"M16-GAP-01488"},"M16-GAP-01488":{"line":1487,"offset":256532,"length":186,"previous":"M16-GAP-01487","next":"M16-GAP-01489"},"M16-GAP-01489":{"line":1488,"offset":256718,"length":188,"previous":"M16-GAP-01488","next":"M16-GAP-01490"},"M16-GAP-01490":{"line":1489,"offset":256906,"length":194,"previous":"M16-GAP-01489","next":"M16-GAP-01491"},"M16-GAP-01491":{"line":1490,"offset":257100,"length":172,"previous":"M16-GAP-01490","next":"M16-GAP-01492"},"M16-GAP-01492":{"line":1491,"offset":257272,"length":179,"previous":"M16-GAP-01491","next":"M16-GAP-01493"},"M16-GAP-01493":{"line":1492,"offset":257451,"length":179,"previous":"M16-GAP-01492","next":"M16-GAP-01494"},"M16-GAP-01494":{"line":1493,"offset":257630,"length":178,"previous":"M16-GAP-01493","next":"M16-GAP-01495"},"M16-GAP-01495":{"line":1494,"offset":257808,"length":171,"previous":"M16-GAP-01494","next":"M16-GAP-01496"},"M16-GAP-01496":{"line":1495,"offset":257979,"length":176,"previous":"M16-GAP-01495","next":"M16-GAP-01497"},"M16-GAP-01497":{"line":1496,"offset":258155,"length":172,"previous":"M16-GAP-01496","next":"M16-GAP-01498"},"M16-GAP-01498":{"line":1497,"offset":258327,"length":173,"previous":"M16-GAP-01497","next":"M16-GAP-01499"},"M16-GAP-01499":{"line":1498,"offset":258500,"length":173,"previous":"M16-GAP-01498","next":"M16-GAP-01500"},"M16-GAP-01500":{"line":1499,"offset":258673,"length":174,"previous":"M16-GAP-01499","next":"M16-GAP-01501"},"M16-GAP-01501":{"line":1500,"offset":258847,"length":168,"previous":"M16-GAP-01500","next":"M16-GAP-01502"},"M16-GAP-01502":{"line":1501,"offset":259015,"length":179,"previous":"M16-GAP-01501","next":"M16-GAP-01503"},"M16-GAP-01503":{"line":1502,"offset":259194,"length":174,"previous":"M16-GAP-01502","next":"M16-GAP-01504"},"M16-GAP-01504":{"line":1503,"offset":259368,"length":175,"previous":"M16-GAP-01503","next":"M16-GAP-01505"},"M16-GAP-01505":{"line":1504,"offset":259543,"length":178,"previous":"M16-GAP-01504","next":"M16-GAP-01506"},"M16-GAP-01506":{"line":1505,"offset":259721,"length":176,"previous":"M16-GAP-01505","next":"M16-GAP-01507"},"M16-GAP-01507":{"line":1506,"offset":259897,"length":180,"previous":"M16-GAP-01506","next":"M16-GAP-01508"},"M16-GAP-01508":{"line":1507,"offset":260077,"length":176,"previous":"M16-GAP-01507","next":"M16-GAP-01509"},"M16-GAP-01509":{"line":1508,"offset":260253,"length":178,"previous":"M16-GAP-01508","next":"M16-GAP-01510"},"M16-GAP-01510":{"line":1509,"offset":260431,"length":182,"previous":"M16-GAP-01509","next":"M16-GAP-01511"},"M16-GAP-01511":{"line":1510,"offset":260613,"length":185,"previous":"M16-GAP-01510","next":"M16-GAP-01512"},"M16-GAP-01512":{"line":1511,"offset":260798,"length":178,"previous":"M16-GAP-01511","next":"M16-GAP-01513"},"M16-GAP-01513":{"line":1512,"offset":260976,"length":173,"previous":"M16-GAP-01512","next":"M16-GAP-01514"},"M16-GAP-01514":{"line":1513,"offset":261149,"length":170,"previous":"M16-GAP-01513","next":"M16-GAP-01515"},"M16-GAP-01515":{"line":1514,"offset":261319,"length":166,"previous":"M16-GAP-01514","next":"M16-GAP-01516"},"M16-GAP-01516":{"line":1515,"offset":261485,"length":179,"previous":"M16-GAP-01515","next":"M16-GAP-01517"},"M16-GAP-01517":{"line":1516,"offset":261664,"length":170,"previous":"M16-GAP-01516","next":"M16-GAP-01518"},"M16-GAP-01518":{"line":1517,"offset":261834,"length":181,"previous":"M16-GAP-01517","next":"M16-GAP-01519"},"M16-GAP-01519":{"line":1518,"offset":262015,"length":172,"previous":"M16-GAP-01518","next":"M16-GAP-01520"},"M16-GAP-01520":{"line":1519,"offset":262187,"length":184,"previous":"M16-GAP-01519","next":"M16-GAP-01521"},"M16-GAP-01521":{"line":1520,"offset":262371,"length":174,"previous":"M16-GAP-01520","next":"M16-GAP-01522"},"M16-GAP-01522":{"line":1521,"offset":262545,"length":171,"previous":"M16-GAP-01521","next":"M16-GAP-01523"},"M16-GAP-01523":{"line":1522,"offset":262716,"length":183,"previous":"M16-GAP-01522","next":"M16-GAP-01524"},"M16-GAP-01524":{"line":1523,"offset":262899,"length":176,"previous":"M16-GAP-01523","next":"M16-GAP-01525"},"M16-GAP-01525":{"line":1524,"offset":263075,"length":180,"previous":"M16-GAP-01524","next":"M16-GAP-01526"},"M16-GAP-01526":{"line":1525,"offset":263255,"length":174,"previous":"M16-GAP-01525","next":"M16-GAP-01527"},"M16-GAP-01527":{"line":1526,"offset":263429,"length":173,"previous":"M16-GAP-01526","next":"M16-GAP-01528"},"M16-GAP-01528":{"line":1527,"offset":263602,"length":177,"previous":"M16-GAP-01527","next":"M16-GAP-01529"},"M16-GAP-01529":{"line":1528,"offset":263779,"length":173,"previous":"M16-GAP-01528","next":"M16-GAP-01530"},"M16-GAP-01530":{"line":1529,"offset":263952,"length":184,"previous":"M16-GAP-01529","next":"M16-GAP-01531"},"M16-GAP-01531":{"line":1530,"offset":264136,"length":176,"previous":"M16-GAP-01530","next":"M16-GAP-01532"},"M16-GAP-01532":{"line":1531,"offset":264312,"length":177,"previous":"M16-GAP-01531","next":"M16-GAP-01533"},"M16-GAP-01533":{"line":1532,"offset":264489,"length":180,"previous":"M16-GAP-01532","next":"M16-GAP-01534"},"M16-GAP-01534":{"line":1533,"offset":264669,"length":180,"previous":"M16-GAP-01533","next":"M16-GAP-01535"},"M16-GAP-01535":{"line":1534,"offset":264849,"length":187,"previous":"M16-GAP-01534","next":"M16-GAP-01536"},"M16-GAP-01536":{"line":1535,"offset":265036,"length":181,"previous":"M16-GAP-01535","next":"M16-GAP-01537"},"M16-GAP-01537":{"line":1536,"offset":265217,"length":174,"previous":"M16-GAP-01536","next":"M16-GAP-01538"},"M16-GAP-01538":{"line":1537,"offset":265391,"length":176,"previous":"M16-GAP-01537","next":"M16-GAP-01539"},"M16-GAP-01539":{"line":1538,"offset":265567,"length":178,"previous":"M16-GAP-01538","next":"M16-GAP-01540"},"M16-GAP-01540":{"line":1539,"offset":265745,"length":168,"previous":"M16-GAP-01539","next":"M16-GAP-01541"},"M16-GAP-01541":{"line":1540,"offset":265913,"length":170,"previous":"M16-GAP-01540","next":"M16-GAP-01542"},"M16-GAP-01542":{"line":1541,"offset":266083,"length":168,"previous":"M16-GAP-01541","next":"M16-GAP-01543"},"M16-GAP-01543":{"line":1542,"offset":266251,"length":170,"previous":"M16-GAP-01542","next":"M16-GAP-01544"},"M16-GAP-01544":{"line":1543,"offset":266421,"length":178,"previous":"M16-GAP-01543","next":"M16-GAP-01545"},"M16-GAP-01545":{"line":1544,"offset":266599,"length":179,"previous":"M16-GAP-01544","next":"M16-GAP-01546"},"M16-GAP-01546":{"line":1545,"offset":266778,"length":168,"previous":"M16-GAP-01545","next":"M16-GAP-01547"},"M16-GAP-01547":{"line":1546,"offset":266946,"length":177,"previous":"M16-GAP-01546","next":"M16-GAP-01548"},"M16-GAP-01548":{"line":1547,"offset":267123,"length":180,"previous":"M16-GAP-01547","next":"M16-GAP-01549"},"M16-GAP-01549":{"line":1548,"offset":267303,"length":173,"previous":"M16-GAP-01548","next":"M16-GAP-01550"},"M16-GAP-01550":{"line":1549,"offset":267476,"length":173,"previous":"M16-GAP-01549","next":"M16-GAP-01551"},"M16-GAP-01551":{"line":1550,"offset":267649,"length":169,"previous":"M16-GAP-01550","next":"M16-GAP-01552"},"M16-GAP-01552":{"line":1551,"offset":267818,"length":170,"previous":"M16-GAP-01551","next":"M16-GAP-01553"},"M16-GAP-01553":{"line":1552,"offset":267988,"length":178,"previous":"M16-GAP-01552","next":"M16-GAP-01554"},"M16-GAP-01554":{"line":1553,"offset":268166,"length":179,"previous":"M16-GAP-01553","next":"M16-GAP-01555"},"M16-GAP-01555":{"line":1554,"offset":268345,"length":173,"previous":"M16-GAP-01554","next":"M16-GAP-01556"},"M16-GAP-01556":{"line":1555,"offset":268518,"length":175,"previous":"M16-GAP-01555","next":"M16-GAP-01557"},"M16-GAP-01557":{"line":1556,"offset":268693,"length":171,"previous":"M16-GAP-01556","next":"M16-GAP-01558"},"M16-GAP-01558":{"line":1557,"offset":268864,"length":167,"previous":"M16-GAP-01557","next":"M16-GAP-01559"},"M16-GAP-01559":{"line":1558,"offset":269031,"length":170,"previous":"M16-GAP-01558","next":"M16-GAP-01560"},"M16-GAP-01560":{"line":1559,"offset":269201,"length":169,"previous":"M16-GAP-01559","next":"M16-GAP-01561"},"M16-GAP-01561":{"line":1560,"offset":269370,"length":177,"previous":"M16-GAP-01560","next":"M16-GAP-01562"},"M16-GAP-01562":{"line":1561,"offset":269547,"length":180,"previous":"M16-GAP-01561","next":"M16-GAP-01563"},"M16-GAP-01563":{"line":1562,"offset":269727,"length":172,"previous":"M16-GAP-01562","next":"M16-GAP-01564"},"M16-GAP-01564":{"line":1563,"offset":269899,"length":169,"previous":"M16-GAP-01563","next":"M16-GAP-01565"},"M16-GAP-01565":{"line":1564,"offset":270068,"length":168,"previous":"M16-GAP-01564","next":"M16-GAP-01566"},"M16-GAP-01566":{"line":1565,"offset":270236,"length":172,"previous":"M16-GAP-01565","next":"M16-GAP-01567"},"M16-GAP-01567":{"line":1566,"offset":270408,"length":171,"previous":"M16-GAP-01566","next":"M16-GAP-01568"},"M16-GAP-01568":{"line":1567,"offset":270579,"length":172,"previous":"M16-GAP-01567","next":"M16-GAP-01569"},"M16-GAP-01569":{"line":1568,"offset":270751,"length":174,"previous":"M16-GAP-01568","next":"M16-GAP-01570"},"M16-GAP-01570":{"line":1569,"offset":270925,"length":169,"previous":"M16-GAP-01569","next":"M16-GAP-01571"},"M16-GAP-01571":{"line":1570,"offset":271094,"length":171,"previous":"M16-GAP-01570","next":"M16-GAP-01572"},"M16-GAP-01572":{"line":1571,"offset":271265,"length":171,"previous":"M16-GAP-01571","next":"M16-GAP-01573"},"M16-GAP-01573":{"line":1572,"offset":271436,"length":169,"previous":"M16-GAP-01572","next":"M16-GAP-01574"},"M16-GAP-01574":{"line":1573,"offset":271605,"length":172,"previous":"M16-GAP-01573","next":"M16-GAP-01575"},"M16-GAP-01575":{"line":1574,"offset":271777,"length":171,"previous":"M16-GAP-01574","next":"M16-GAP-01576"},"M16-GAP-01576":{"line":1575,"offset":271948,"length":180,"previous":"M16-GAP-01575","next":"M16-GAP-01577"},"M16-GAP-01577":{"line":1576,"offset":272128,"length":175,"previous":"M16-GAP-01576","next":"M16-GAP-01578"},"M16-GAP-01578":{"line":1577,"offset":272303,"length":168,"previous":"M16-GAP-01577","next":"M16-GAP-01579"},"M16-GAP-01579":{"line":1578,"offset":272471,"length":170,"previous":"M16-GAP-01578","next":"M16-GAP-01580"},"M16-GAP-01580":{"line":1579,"offset":272641,"length":179,"previous":"M16-GAP-01579","next":"M16-GAP-01581"},"M16-GAP-01581":{"line":1580,"offset":272820,"length":170,"previous":"M16-GAP-01580","next":"M16-GAP-01582"},"M16-GAP-01582":{"line":1581,"offset":272990,"length":171,"previous":"M16-GAP-01581","next":"M16-GAP-01583"},"M16-GAP-01583":{"line":1582,"offset":273161,"length":176,"previous":"M16-GAP-01582","next":"M16-GAP-01584"},"M16-GAP-01584":{"line":1583,"offset":273337,"length":180,"previous":"M16-GAP-01583","next":"M16-GAP-01585"},"M16-GAP-01585":{"line":1584,"offset":273517,"length":174,"previous":"M16-GAP-01584","next":"M16-GAP-01586"},"M16-GAP-01586":{"line":1585,"offset":273691,"length":173,"previous":"M16-GAP-01585","next":"M16-GAP-01587"},"M16-GAP-01587":{"line":1586,"offset":273864,"length":171,"previous":"M16-GAP-01586","next":"M16-GAP-01588"},"M16-GAP-01588":{"line":1587,"offset":274035,"length":182,"previous":"M16-GAP-01587","next":"M16-GAP-01589"},"M16-GAP-01589":{"line":1588,"offset":274217,"length":173,"previous":"M16-GAP-01588","next":"M16-GAP-01590"},"M16-GAP-01590":{"line":1589,"offset":274390,"length":172,"previous":"M16-GAP-01589","next":"M16-GAP-01591"},"M16-GAP-01591":{"line":1590,"offset":274562,"length":172,"previous":"M16-GAP-01590","next":"M16-GAP-01592"},"M16-GAP-01592":{"line":1591,"offset":274734,"length":178,"previous":"M16-GAP-01591","next":"M16-GAP-01593"},"M16-GAP-01593":{"line":1592,"offset":274912,"length":174,"previous":"M16-GAP-01592","next":"M16-GAP-01594"},"M16-GAP-01594":{"line":1593,"offset":275086,"length":172,"previous":"M16-GAP-01593","next":"M16-GAP-01595"},"M16-GAP-01595":{"line":1594,"offset":275258,"length":174,"previous":"M16-GAP-01594","next":"M16-GAP-01596"},"M16-GAP-01596":{"line":1595,"offset":275432,"length":174,"previous":"M16-GAP-01595","next":"M16-GAP-01597"},"M16-GAP-01597":{"line":1596,"offset":275606,"length":176,"previous":"M16-GAP-01596","next":"M16-GAP-01598"},"M16-GAP-01598":{"line":1597,"offset":275782,"length":185,"previous":"M16-GAP-01597","next":"M16-GAP-01599"},"M16-GAP-01599":{"line":1598,"offset":275967,"length":199,"previous":"M16-GAP-01598","next":"M16-GAP-01600"},"M16-GAP-01600":{"line":1599,"offset":276166,"length":187,"previous":"M16-GAP-01599","next":"M16-GAP-01601"},"M16-GAP-01601":{"line":1600,"offset":276353,"length":178,"previous":"M16-GAP-01600","next":"M16-GAP-01602"},"M16-GAP-01602":{"line":1601,"offset":276531,"length":179,"previous":"M16-GAP-01601","next":"M16-GAP-01603"},"M16-GAP-01603":{"line":1602,"offset":276710,"length":177,"previous":"M16-GAP-01602","next":"M16-GAP-01604"},"M16-GAP-01604":{"line":1603,"offset":276887,"length":172,"previous":"M16-GAP-01603","next":"M16-GAP-01605"},"M16-GAP-01605":{"line":1604,"offset":277059,"length":169,"previous":"M16-GAP-01604","next":"M16-GAP-01606"},"M16-GAP-01606":{"line":1605,"offset":277228,"length":173,"previous":"M16-GAP-01605","next":"M16-GAP-01607"},"M16-GAP-01607":{"line":1606,"offset":277401,"length":176,"previous":"M16-GAP-01606","next":"M16-GAP-01608"},"M16-GAP-01608":{"line":1607,"offset":277577,"length":166,"previous":"M16-GAP-01607","next":"M16-GAP-01609"},"M16-GAP-01609":{"line":1608,"offset":277743,"length":169,"previous":"M16-GAP-01608","next":"M16-GAP-01610"},"M16-GAP-01610":{"line":1609,"offset":277912,"length":167,"previous":"M16-GAP-01609","next":"M16-GAP-01611"},"M16-GAP-01611":{"line":1610,"offset":278079,"length":171,"previous":"M16-GAP-01610","next":"M16-GAP-01612"},"M16-GAP-01612":{"line":1611,"offset":278250,"length":173,"previous":"M16-GAP-01611","next":"M16-GAP-01613"},"M16-GAP-01613":{"line":1612,"offset":278423,"length":179,"previous":"M16-GAP-01612","next":"M16-GAP-01614"},"M16-GAP-01614":{"line":1613,"offset":278602,"length":176,"previous":"M16-GAP-01613","next":"M16-GAP-01615"},"M16-GAP-01615":{"line":1614,"offset":278778,"length":178,"previous":"M16-GAP-01614","next":"M16-GAP-01616"},"M16-GAP-01616":{"line":1615,"offset":278956,"length":169,"previous":"M16-GAP-01615","next":"M16-GAP-01617"},"M16-GAP-01617":{"line":1616,"offset":279125,"length":171,"previous":"M16-GAP-01616","next":"M16-GAP-01618"},"M16-GAP-01618":{"line":1617,"offset":279296,"length":174,"previous":"M16-GAP-01617","next":"M16-GAP-01619"},"M16-GAP-01619":{"line":1618,"offset":279470,"length":177,"previous":"M16-GAP-01618","next":"M16-GAP-01620"},"M16-GAP-01620":{"line":1619,"offset":279647,"length":181,"previous":"M16-GAP-01619","next":"M16-GAP-01621"},"M16-GAP-01621":{"line":1620,"offset":279828,"length":176,"previous":"M16-GAP-01620","next":"M16-GAP-01622"},"M16-GAP-01622":{"line":1621,"offset":280004,"length":175,"previous":"M16-GAP-01621","next":"M16-GAP-01623"},"M16-GAP-01623":{"line":1622,"offset":280179,"length":187,"previous":"M16-GAP-01622","next":"M16-GAP-01624"},"M16-GAP-01624":{"line":1623,"offset":280366,"length":179,"previous":"M16-GAP-01623","next":"M16-GAP-01625"},"M16-GAP-01625":{"line":1624,"offset":280545,"length":177,"previous":"M16-GAP-01624","next":"M16-GAP-01626"},"M16-GAP-01626":{"line":1625,"offset":280722,"length":177,"previous":"M16-GAP-01625","next":"M16-GAP-01627"},"M16-GAP-01627":{"line":1626,"offset":280899,"length":182,"previous":"M16-GAP-01626","next":"M16-GAP-01628"},"M16-GAP-01628":{"line":1627,"offset":281081,"length":175,"previous":"M16-GAP-01627","next":"M16-GAP-01629"},"M16-GAP-01629":{"line":1628,"offset":281256,"length":177,"previous":"M16-GAP-01628","next":"M16-GAP-01630"},"M16-GAP-01630":{"line":1629,"offset":281433,"length":175,"previous":"M16-GAP-01629","next":"M16-GAP-01631"},"M16-GAP-01631":{"line":1630,"offset":281608,"length":180,"previous":"M16-GAP-01630","next":"M16-GAP-01632"},"M16-GAP-01632":{"line":1631,"offset":281788,"length":184,"previous":"M16-GAP-01631","next":"M16-GAP-01633"},"M16-GAP-01633":{"line":1632,"offset":281972,"length":179,"previous":"M16-GAP-01632","next":"M16-GAP-01634"},"M16-GAP-01634":{"line":1633,"offset":282151,"length":177,"previous":"M16-GAP-01633","next":"M16-GAP-01635"},"M16-GAP-01635":{"line":1634,"offset":282328,"length":182,"previous":"M16-GAP-01634","next":"M16-GAP-01636"},"M16-GAP-01636":{"line":1635,"offset":282510,"length":177,"previous":"M16-GAP-01635","next":"M16-GAP-01637"},"M16-GAP-01637":{"line":1636,"offset":282687,"length":181,"previous":"M16-GAP-01636","next":"M16-GAP-01638"},"M16-GAP-01638":{"line":1637,"offset":282868,"length":177,"previous":"M16-GAP-01637","next":"M16-GAP-01639"},"M16-GAP-01639":{"line":1638,"offset":283045,"length":175,"previous":"M16-GAP-01638","next":"M16-GAP-01640"},"M16-GAP-01640":{"line":1639,"offset":283220,"length":175,"previous":"M16-GAP-01639","next":"M16-GAP-01641"},"M16-GAP-01641":{"line":1640,"offset":283395,"length":176,"previous":"M16-GAP-01640","next":"M16-GAP-01642"},"M16-GAP-01642":{"line":1641,"offset":283571,"length":178,"previous":"M16-GAP-01641","next":"M16-GAP-01643"},"M16-GAP-01643":{"line":1642,"offset":283749,"length":195,"previous":"M16-GAP-01642","next":"M16-GAP-01644"},"M16-GAP-01644":{"line":1643,"offset":283944,"length":177,"previous":"M16-GAP-01643","next":"M16-GAP-01645"},"M16-GAP-01645":{"line":1644,"offset":284121,"length":182,"previous":"M16-GAP-01644","next":"M16-GAP-01646"},"M16-GAP-01646":{"line":1645,"offset":284303,"length":184,"previous":"M16-GAP-01645","next":"M16-GAP-01647"},"M16-GAP-01647":{"line":1646,"offset":284487,"length":180,"previous":"M16-GAP-01646","next":"M16-GAP-01648"},"M16-GAP-01648":{"line":1647,"offset":284667,"length":168,"previous":"M16-GAP-01647","next":"M16-GAP-01649"},"M16-GAP-01649":{"line":1648,"offset":284835,"length":171,"previous":"M16-GAP-01648","next":"M16-GAP-01650"},"M16-GAP-01650":{"line":1649,"offset":285006,"length":170,"previous":"M16-GAP-01649","next":"M16-GAP-01651"},"M16-GAP-01651":{"line":1650,"offset":285176,"length":173,"previous":"M16-GAP-01650","next":"M16-GAP-01652"},"M16-GAP-01652":{"line":1651,"offset":285349,"length":170,"previous":"M16-GAP-01651","next":"M16-GAP-01653"},"M16-GAP-01653":{"line":1652,"offset":285519,"length":178,"previous":"M16-GAP-01652","next":"M16-GAP-01654"},"M16-GAP-01654":{"line":1653,"offset":285697,"length":172,"previous":"M16-GAP-01653","next":"M16-GAP-01655"},"M16-GAP-01655":{"line":1654,"offset":285869,"length":184,"previous":"M16-GAP-01654","next":"M16-GAP-01656"},"M16-GAP-01656":{"line":1655,"offset":286053,"length":178,"previous":"M16-GAP-01655","next":"M16-GAP-01657"},"M16-GAP-01657":{"line":1656,"offset":286231,"length":185,"previous":"M16-GAP-01656","next":"M16-GAP-01658"},"M16-GAP-01658":{"line":1657,"offset":286416,"length":175,"previous":"M16-GAP-01657","next":"M16-GAP-01659"},"M16-GAP-01659":{"line":1658,"offset":286591,"length":180,"previous":"M16-GAP-01658","next":"M16-GAP-01660"},"M16-GAP-01660":{"line":1659,"offset":286771,"length":187,"previous":"M16-GAP-01659","next":"M16-GAP-01661"},"M16-GAP-01661":{"line":1660,"offset":286958,"length":177,"previous":"M16-GAP-01660","next":"M16-GAP-01662"},"M16-GAP-01662":{"line":1661,"offset":287135,"length":184,"previous":"M16-GAP-01661","next":"M16-GAP-01663"},"M16-GAP-01663":{"line":1662,"offset":287319,"length":184,"previous":"M16-GAP-01662","next":"M16-GAP-01664"},"M16-GAP-01664":{"line":1663,"offset":287503,"length":182,"previous":"M16-GAP-01663","next":"M16-GAP-01665"},"M16-GAP-01665":{"line":1664,"offset":287685,"length":175,"previous":"M16-GAP-01664","next":"M16-GAP-01666"},"M16-GAP-01666":{"line":1665,"offset":287860,"length":182,"previous":"M16-GAP-01665","next":"M16-GAP-01667"},"M16-GAP-01667":{"line":1666,"offset":288042,"length":187,"previous":"M16-GAP-01666","next":"M16-GAP-01668"},"M16-GAP-01668":{"line":1667,"offset":288229,"length":184,"previous":"M16-GAP-01667","next":"M16-GAP-01669"},"M16-GAP-01669":{"line":1668,"offset":288413,"length":182,"previous":"M16-GAP-01668","next":"M16-GAP-01670"},"M16-GAP-01670":{"line":1669,"offset":288595,"length":190,"previous":"M16-GAP-01669","next":"M16-GAP-01671"},"M16-GAP-01671":{"line":1670,"offset":288785,"length":188,"previous":"M16-GAP-01670","next":"M16-GAP-01672"},"M16-GAP-01672":{"line":1671,"offset":288973,"length":179,"previous":"M16-GAP-01671","next":"M16-GAP-01673"},"M16-GAP-01673":{"line":1672,"offset":289152,"length":178,"previous":"M16-GAP-01672","next":"M16-GAP-01674"},"M16-GAP-01674":{"line":1673,"offset":289330,"length":175,"previous":"M16-GAP-01673","next":"M16-GAP-01675"},"M16-GAP-01675":{"line":1674,"offset":289505,"length":174,"previous":"M16-GAP-01674","next":"M16-GAP-01676"},"M16-GAP-01676":{"line":1675,"offset":289679,"length":187,"previous":"M16-GAP-01675","next":"M16-GAP-01677"},"M16-GAP-01677":{"line":1676,"offset":289866,"length":185,"previous":"M16-GAP-01676","next":"M16-GAP-01678"},"M16-GAP-01678":{"line":1677,"offset":290051,"length":175,"previous":"M16-GAP-01677","next":"M16-GAP-01679"},"M16-GAP-01679":{"line":1678,"offset":290226,"length":182,"previous":"M16-GAP-01678","next":"M16-GAP-01680"},"M16-GAP-01680":{"line":1679,"offset":290408,"length":180,"previous":"M16-GAP-01679","next":"M16-GAP-01681"},"M16-GAP-01681":{"line":1680,"offset":290588,"length":174,"previous":"M16-GAP-01680","next":"M16-GAP-01682"},"M16-GAP-01682":{"line":1681,"offset":290762,"length":174,"previous":"M16-GAP-01681","next":"M16-GAP-01683"},"M16-GAP-01683":{"line":1682,"offset":290936,"length":166,"previous":"M16-GAP-01682","next":"M16-GAP-01684"},"M16-GAP-01684":{"line":1683,"offset":291102,"length":180,"previous":"M16-GAP-01683","next":"M16-GAP-01685"},"M16-GAP-01685":{"line":1684,"offset":291282,"length":183,"previous":"M16-GAP-01684","next":"M16-GAP-01686"},"M16-GAP-01686":{"line":1685,"offset":291465,"length":175,"previous":"M16-GAP-01685","next":"M16-GAP-01687"},"M16-GAP-01687":{"line":1686,"offset":291640,"length":164,"previous":"M16-GAP-01686","next":"M16-GAP-01688"},"M16-GAP-01688":{"line":1687,"offset":291804,"length":176,"previous":"M16-GAP-01687","next":"M16-GAP-01689"},"M16-GAP-01689":{"line":1688,"offset":291980,"length":167,"previous":"M16-GAP-01688","next":"M16-GAP-01690"},"M16-GAP-01690":{"line":1689,"offset":292147,"length":169,"previous":"M16-GAP-01689","next":"M16-GAP-01691"},"M16-GAP-01691":{"line":1690,"offset":292316,"length":178,"previous":"M16-GAP-01690","next":"M16-GAP-01692"},"M16-GAP-01692":{"line":1691,"offset":292494,"length":172,"previous":"M16-GAP-01691","next":"M16-GAP-01693"},"M16-GAP-01693":{"line":1692,"offset":292666,"length":168,"previous":"M16-GAP-01692","next":"M16-GAP-01694"},"M16-GAP-01694":{"line":1693,"offset":292834,"length":168,"previous":"M16-GAP-01693","next":"M16-GAP-01695"},"M16-GAP-01695":{"line":1694,"offset":293002,"length":173,"previous":"M16-GAP-01694","next":"M16-GAP-01696"},"M16-GAP-01696":{"line":1695,"offset":293175,"length":174,"previous":"M16-GAP-01695","next":"M16-GAP-01697"},"M16-GAP-01697":{"line":1696,"offset":293349,"length":174,"previous":"M16-GAP-01696","next":"M16-GAP-01698"},"M16-GAP-01698":{"line":1697,"offset":293523,"length":171,"previous":"M16-GAP-01697","next":"M16-GAP-01699"},"M16-GAP-01699":{"line":1698,"offset":293694,"length":182,"previous":"M16-GAP-01698","next":"M16-GAP-01700"},"M16-GAP-01700":{"line":1699,"offset":293876,"length":185,"previous":"M16-GAP-01699","next":"M16-GAP-01701"},"M16-GAP-01701":{"line":1700,"offset":294061,"length":173,"previous":"M16-GAP-01700","next":"M16-GAP-01702"},"M16-GAP-01702":{"line":1701,"offset":294234,"length":172,"previous":"M16-GAP-01701","next":"M16-GAP-01703"},"M16-GAP-01703":{"line":1702,"offset":294406,"length":181,"previous":"M16-GAP-01702","next":"M16-GAP-01704"},"M16-GAP-01704":{"line":1703,"offset":294587,"length":187,"previous":"M16-GAP-01703","next":"M16-GAP-01705"},"M16-GAP-01705":{"line":1704,"offset":294774,"length":194,"previous":"M16-GAP-01704","next":"M16-GAP-01706"},"M16-GAP-01706":{"line":1705,"offset":294968,"length":173,"previous":"M16-GAP-01705","next":"M16-GAP-01707"},"M16-GAP-01707":{"line":1706,"offset":295141,"length":178,"previous":"M16-GAP-01706","next":"M16-GAP-01708"},"M16-GAP-01708":{"line":1707,"offset":295319,"length":176,"previous":"M16-GAP-01707","next":"M16-GAP-01709"},"M16-GAP-01709":{"line":1708,"offset":295495,"length":169,"previous":"M16-GAP-01708","next":"M16-GAP-01710"},"M16-GAP-01710":{"line":1709,"offset":295664,"length":174,"previous":"M16-GAP-01709","next":"M16-GAP-01711"},"M16-GAP-01711":{"line":1710,"offset":295838,"length":173,"previous":"M16-GAP-01710","next":"M16-GAP-01712"},"M16-GAP-01712":{"line":1711,"offset":296011,"length":172,"previous":"M16-GAP-01711","next":"M16-GAP-01713"},"M16-GAP-01713":{"line":1712,"offset":296183,"length":171,"previous":"M16-GAP-01712","next":"M16-GAP-01714"},"M16-GAP-01714":{"line":1713,"offset":296354,"length":170,"previous":"M16-GAP-01713","next":"M16-GAP-01715"},"M16-GAP-01715":{"line":1714,"offset":296524,"length":175,"previous":"M16-GAP-01714","next":"M16-GAP-01716"},"M16-GAP-01716":{"line":1715,"offset":296699,"length":171,"previous":"M16-GAP-01715","next":"M16-GAP-01717"},"M16-GAP-01717":{"line":1716,"offset":296870,"length":170,"previous":"M16-GAP-01716","next":"M16-GAP-01718"},"M16-GAP-01718":{"line":1717,"offset":297040,"length":170,"previous":"M16-GAP-01717","next":"M16-GAP-01719"},"M16-GAP-01719":{"line":1718,"offset":297210,"length":171,"previous":"M16-GAP-01718","next":"M16-GAP-01720"},"M16-GAP-01720":{"line":1719,"offset":297381,"length":171,"previous":"M16-GAP-01719","next":"M16-GAP-01721"},"M16-GAP-01721":{"line":1720,"offset":297552,"length":174,"previous":"M16-GAP-01720","next":"M16-GAP-01722"},"M16-GAP-01722":{"line":1721,"offset":297726,"length":174,"previous":"M16-GAP-01721","next":"M16-GAP-01723"},"M16-GAP-01723":{"line":1722,"offset":297900,"length":172,"previous":"M16-GAP-01722","next":"M16-GAP-01724"},"M16-GAP-01724":{"line":1723,"offset":298072,"length":170,"previous":"M16-GAP-01723","next":"M16-GAP-01725"},"M16-GAP-01725":{"line":1724,"offset":298242,"length":171,"previous":"M16-GAP-01724","next":"M16-GAP-01726"},"M16-GAP-01726":{"line":1725,"offset":298413,"length":179,"previous":"M16-GAP-01725","next":"M16-GAP-01727"},"M16-GAP-01727":{"line":1726,"offset":298592,"length":174,"previous":"M16-GAP-01726","next":"M16-GAP-01728"},"M16-GAP-01728":{"line":1727,"offset":298766,"length":172,"previous":"M16-GAP-01727","next":"M16-GAP-01729"},"M16-GAP-01729":{"line":1728,"offset":298938,"length":173,"previous":"M16-GAP-01728","next":"M16-GAP-01730"},"M16-GAP-01730":{"line":1729,"offset":299111,"length":173,"previous":"M16-GAP-01729","next":"M16-GAP-01731"},"M16-GAP-01731":{"line":1730,"offset":299284,"length":175,"previous":"M16-GAP-01730","next":"M16-GAP-01732"},"M16-GAP-01732":{"line":1731,"offset":299459,"length":180,"previous":"M16-GAP-01731","next":"M16-GAP-01733"},"M16-GAP-01733":{"line":1732,"offset":299639,"length":173,"previous":"M16-GAP-01732","next":"M16-GAP-01734"},"M16-GAP-01734":{"line":1733,"offset":299812,"length":173,"previous":"M16-GAP-01733","next":"M16-GAP-01735"},"M16-GAP-01735":{"line":1734,"offset":299985,"length":173,"previous":"M16-GAP-01734","next":"M16-GAP-01736"},"M16-GAP-01736":{"line":1735,"offset":300158,"length":167,"previous":"M16-GAP-01735","next":"M16-GAP-01737"},"M16-GAP-01737":{"line":1736,"offset":300325,"length":166,"previous":"M16-GAP-01736","next":"M16-GAP-01738"},"M16-GAP-01738":{"line":1737,"offset":300491,"length":170,"previous":"M16-GAP-01737","next":"M16-GAP-01739"},"M16-GAP-01739":{"line":1738,"offset":300661,"length":180,"previous":"M16-GAP-01738","next":"M16-GAP-01740"},"M16-GAP-01740":{"line":1739,"offset":300841,"length":179,"previous":"M16-GAP-01739","next":"M16-GAP-01741"},"M16-GAP-01741":{"line":1740,"offset":301020,"length":173,"previous":"M16-GAP-01740","next":"M16-GAP-01742"},"M16-GAP-01742":{"line":1741,"offset":301193,"length":183,"previous":"M16-GAP-01741","next":"M16-GAP-01743"},"M16-GAP-01743":{"line":1742,"offset":301376,"length":172,"previous":"M16-GAP-01742","next":"M16-GAP-01744"},"M16-GAP-01744":{"line":1743,"offset":301548,"length":168,"previous":"M16-GAP-01743","next":"M16-GAP-01745"},"M16-GAP-01745":{"line":1744,"offset":301716,"length":173,"previous":"M16-GAP-01744","next":"M16-GAP-01746"},"M16-GAP-01746":{"line":1745,"offset":301889,"length":172,"previous":"M16-GAP-01745","next":"M16-GAP-01747"},"M16-GAP-01747":{"line":1746,"offset":302061,"length":175,"previous":"M16-GAP-01746","next":"M16-GAP-01748"},"M16-GAP-01748":{"line":1747,"offset":302236,"length":174,"previous":"M16-GAP-01747","next":"M16-GAP-01749"},"M16-GAP-01749":{"line":1748,"offset":302410,"length":178,"previous":"M16-GAP-01748","next":"M16-GAP-01750"},"M16-GAP-01750":{"line":1749,"offset":302588,"length":170,"previous":"M16-GAP-01749","next":"M16-GAP-01751"},"M16-GAP-01751":{"line":1750,"offset":302758,"length":169,"previous":"M16-GAP-01750","next":"M16-GAP-01752"},"M16-GAP-01752":{"line":1751,"offset":302927,"length":177,"previous":"M16-GAP-01751","next":"M16-GAP-01753"},"M16-GAP-01753":{"line":1752,"offset":303104,"length":172,"previous":"M16-GAP-01752","next":"M16-GAP-01754"},"M16-GAP-01754":{"line":1753,"offset":303276,"length":173,"previous":"M16-GAP-01753","next":"M16-GAP-01755"},"M16-GAP-01755":{"line":1754,"offset":303449,"length":173,"previous":"M16-GAP-01754","next":"M16-GAP-01756"},"M16-GAP-01756":{"line":1755,"offset":303622,"length":175,"previous":"M16-GAP-01755","next":"M16-GAP-01757"},"M16-GAP-01757":{"line":1756,"offset":303797,"length":180,"previous":"M16-GAP-01756","next":"M16-GAP-01758"},"M16-GAP-01758":{"line":1757,"offset":303977,"length":173,"previous":"M16-GAP-01757","next":"M16-GAP-01759"},"M16-GAP-01759":{"line":1758,"offset":304150,"length":173,"previous":"M16-GAP-01758","next":"M16-GAP-01760"},"M16-GAP-01760":{"line":1759,"offset":304323,"length":178,"previous":"M16-GAP-01759","next":"M16-GAP-01761"},"M16-GAP-01761":{"line":1760,"offset":304501,"length":189,"previous":"M16-GAP-01760","next":"M16-GAP-01762"},"M16-GAP-01762":{"line":1761,"offset":304690,"length":174,"previous":"M16-GAP-01761","next":"M16-GAP-01763"},"M16-GAP-01763":{"line":1762,"offset":304864,"length":181,"previous":"M16-GAP-01762","next":"M16-GAP-01764"},"M16-GAP-01764":{"line":1763,"offset":305045,"length":173,"previous":"M16-GAP-01763","next":"M16-GAP-01765"},"M16-GAP-01765":{"line":1764,"offset":305218,"length":176,"previous":"M16-GAP-01764","next":"M16-GAP-01766"},"M16-GAP-01766":{"line":1765,"offset":305394,"length":176,"previous":"M16-GAP-01765","next":"M16-GAP-01767"},"M16-GAP-01767":{"line":1766,"offset":305570,"length":173,"previous":"M16-GAP-01766","next":"M16-GAP-01768"},"M16-GAP-01768":{"line":1767,"offset":305743,"length":176,"previous":"M16-GAP-01767","next":"M16-GAP-01769"},"M16-GAP-01769":{"line":1768,"offset":305919,"length":169,"previous":"M16-GAP-01768","next":"M16-GAP-01770"},"M16-GAP-01770":{"line":1769,"offset":306088,"length":176,"previous":"M16-GAP-01769","next":"M16-GAP-01771"},"M16-GAP-01771":{"line":1770,"offset":306264,"length":174,"previous":"M16-GAP-01770","next":"M16-GAP-01772"},"M16-GAP-01772":{"line":1771,"offset":306438,"length":174,"previous":"M16-GAP-01771","next":"M16-GAP-01773"},"M16-GAP-01773":{"line":1772,"offset":306612,"length":174,"previous":"M16-GAP-01772","next":"M16-GAP-01774"},"M16-GAP-01774":{"line":1773,"offset":306786,"length":172,"previous":"M16-GAP-01773","next":"M16-GAP-01775"},"M16-GAP-01775":{"line":1774,"offset":306958,"length":169,"previous":"M16-GAP-01774","next":"M16-GAP-01776"},"M16-GAP-01776":{"line":1775,"offset":307127,"length":176,"previous":"M16-GAP-01775","next":"M16-GAP-01777"},"M16-GAP-01777":{"line":1776,"offset":307303,"length":170,"previous":"M16-GAP-01776","next":"M16-GAP-01778"},"M16-GAP-01778":{"line":1777,"offset":307473,"length":176,"previous":"M16-GAP-01777","next":"M16-GAP-01779"},"M16-GAP-01779":{"line":1778,"offset":307649,"length":167,"previous":"M16-GAP-01778","next":"M16-GAP-01780"},"M16-GAP-01780":{"line":1779,"offset":307816,"length":171,"previous":"M16-GAP-01779","next":"M16-GAP-01781"},"M16-GAP-01781":{"line":1780,"offset":307987,"length":177,"previous":"M16-GAP-01780","next":"M16-GAP-01782"},"M16-GAP-01782":{"line":1781,"offset":308164,"length":168,"previous":"M16-GAP-01781","next":"M16-GAP-01783"},"M16-GAP-01783":{"line":1782,"offset":308332,"length":174,"previous":"M16-GAP-01782","next":"M16-GAP-01784"},"M16-GAP-01784":{"line":1783,"offset":308506,"length":166,"previous":"M16-GAP-01783","next":"M16-GAP-01785"},"M16-GAP-01785":{"line":1784,"offset":308672,"length":165,"previous":"M16-GAP-01784","next":"M16-GAP-01786"},"M16-GAP-01786":{"line":1785,"offset":308837,"length":168,"previous":"M16-GAP-01785","next":"M16-GAP-01787"},"M16-GAP-01787":{"line":1786,"offset":309005,"length":167,"previous":"M16-GAP-01786","next":"M16-GAP-01788"},"M16-GAP-01788":{"line":1787,"offset":309172,"length":168,"previous":"M16-GAP-01787","next":"M16-GAP-01789"},"M16-GAP-01789":{"line":1788,"offset":309340,"length":171,"previous":"M16-GAP-01788","next":"M16-GAP-01790"},"M16-GAP-01790":{"line":1789,"offset":309511,"length":169,"previous":"M16-GAP-01789","next":"M16-GAP-01791"},"M16-GAP-01791":{"line":1790,"offset":309680,"length":177,"previous":"M16-GAP-01790","next":"M16-GAP-01792"},"M16-GAP-01792":{"line":1791,"offset":309857,"length":163,"previous":"M16-GAP-01791","next":"M16-GAP-01793"},"M16-GAP-01793":{"line":1792,"offset":310020,"length":162,"previous":"M16-GAP-01792","next":"M16-GAP-01794"},"M16-GAP-01794":{"line":1793,"offset":310182,"length":163,"previous":"M16-GAP-01793","next":"M16-GAP-01795"},"M16-GAP-01795":{"line":1794,"offset":310345,"length":170,"previous":"M16-GAP-01794","next":"M16-GAP-01796"},"M16-GAP-01796":{"line":1795,"offset":310515,"length":172,"previous":"M16-GAP-01795","next":"M16-GAP-01797"},"M16-GAP-01797":{"line":1796,"offset":310687,"length":181,"previous":"M16-GAP-01796","next":"M16-GAP-01798"},"M16-GAP-01798":{"line":1797,"offset":310868,"length":166,"previous":"M16-GAP-01797","next":"M16-GAP-01799"},"M16-GAP-01799":{"line":1798,"offset":311034,"length":175,"previous":"M16-GAP-01798","next":"M16-GAP-01800"},"M16-GAP-01800":{"line":1799,"offset":311209,"length":185,"previous":"M16-GAP-01799","next":"M16-GAP-01801"},"M16-GAP-01801":{"line":1800,"offset":311394,"length":172,"previous":"M16-GAP-01800","next":"M16-GAP-01802"},"M16-GAP-01802":{"line":1801,"offset":311566,"length":177,"previous":"M16-GAP-01801","next":"M16-GAP-01803"},"M16-GAP-01803":{"line":1802,"offset":311743,"length":175,"previous":"M16-GAP-01802","next":"M16-GAP-01804"},"M16-GAP-01804":{"line":1803,"offset":311918,"length":175,"previous":"M16-GAP-01803","next":"M16-GAP-01805"},"M16-GAP-01805":{"line":1804,"offset":312093,"length":174,"previous":"M16-GAP-01804","next":"M16-GAP-01806"},"M16-GAP-01806":{"line":1805,"offset":312267,"length":172,"previous":"M16-GAP-01805","next":"M16-GAP-01807"},"M16-GAP-01807":{"line":1806,"offset":312439,"length":184,"previous":"M16-GAP-01806","next":"M16-GAP-01808"},"M16-GAP-01808":{"line":1807,"offset":312623,"length":164,"previous":"M16-GAP-01807","next":"M16-GAP-01809"},"M16-GAP-01809":{"line":1808,"offset":312787,"length":166,"previous":"M16-GAP-01808","next":"M16-GAP-01810"},"M16-GAP-01810":{"line":1809,"offset":312953,"length":163,"previous":"M16-GAP-01809","next":"M16-GAP-01811"},"M16-GAP-01811":{"line":1810,"offset":313116,"length":170,"previous":"M16-GAP-01810","next":"M16-GAP-01812"},"M16-GAP-01812":{"line":1811,"offset":313286,"length":180,"previous":"M16-GAP-01811","next":"M16-GAP-01813"},"M16-GAP-01813":{"line":1812,"offset":313466,"length":186,"previous":"M16-GAP-01812","next":"M16-GAP-01814"},"M16-GAP-01814":{"line":1813,"offset":313652,"length":165,"previous":"M16-GAP-01813","next":"M16-GAP-01815"},"M16-GAP-01815":{"line":1814,"offset":313817,"length":174,"previous":"M16-GAP-01814","next":"M16-GAP-01816"},"M16-GAP-01816":{"line":1815,"offset":313991,"length":166,"previous":"M16-GAP-01815","next":"M16-GAP-01817"},"M16-GAP-01817":{"line":1816,"offset":314157,"length":170,"previous":"M16-GAP-01816","next":"M16-GAP-01818"},"M16-GAP-01818":{"line":1817,"offset":314327,"length":171,"previous":"M16-GAP-01817","next":"M16-GAP-01819"},"M16-GAP-01819":{"line":1818,"offset":314498,"length":173,"previous":"M16-GAP-01818","next":"M16-GAP-01820"},"M16-GAP-01820":{"line":1819,"offset":314671,"length":178,"previous":"M16-GAP-01819","next":"M16-GAP-01821"},"M16-GAP-01821":{"line":1820,"offset":314849,"length":171,"previous":"M16-GAP-01820","next":"M16-GAP-01822"},"M16-GAP-01822":{"line":1821,"offset":315020,"length":173,"previous":"M16-GAP-01821","next":"M16-GAP-01823"},"M16-GAP-01823":{"line":1822,"offset":315193,"length":172,"previous":"M16-GAP-01822","next":"M16-GAP-01824"},"M16-GAP-01824":{"line":1823,"offset":315365,"length":171,"previous":"M16-GAP-01823","next":"M16-GAP-01825"},"M16-GAP-01825":{"line":1824,"offset":315536,"length":169,"previous":"M16-GAP-01824","next":"M16-GAP-01826"},"M16-GAP-01826":{"line":1825,"offset":315705,"length":169,"previous":"M16-GAP-01825","next":"M16-GAP-01827"},"M16-GAP-01827":{"line":1826,"offset":315874,"length":176,"previous":"M16-GAP-01826","next":"M16-GAP-01828"},"M16-GAP-01828":{"line":1827,"offset":316050,"length":174,"previous":"M16-GAP-01827","next":"M16-GAP-01829"},"M16-GAP-01829":{"line":1828,"offset":316224,"length":173,"previous":"M16-GAP-01828","next":"M16-GAP-01830"},"M16-GAP-01830":{"line":1829,"offset":316397,"length":172,"previous":"M16-GAP-01829","next":"M16-GAP-01831"},"M16-GAP-01831":{"line":1830,"offset":316569,"length":170,"previous":"M16-GAP-01830","next":"M16-GAP-01832"},"M16-GAP-01832":{"line":1831,"offset":316739,"length":175,"previous":"M16-GAP-01831","next":"M16-GAP-01833"},"M16-GAP-01833":{"line":1832,"offset":316914,"length":168,"previous":"M16-GAP-01832","next":"M16-GAP-01834"},"M16-GAP-01834":{"line":1833,"offset":317082,"length":171,"previous":"M16-GAP-01833","next":"M16-GAP-01835"},"M16-GAP-01835":{"line":1834,"offset":317253,"length":176,"previous":"M16-GAP-01834","next":"M16-GAP-01836"},"M16-GAP-01836":{"line":1835,"offset":317429,"length":172,"previous":"M16-GAP-01835","next":"M16-GAP-01837"},"M16-GAP-01837":{"line":1836,"offset":317601,"length":175,"previous":"M16-GAP-01836","next":"M16-GAP-01838"},"M16-GAP-01838":{"line":1837,"offset":317776,"length":170,"previous":"M16-GAP-01837","next":"M16-GAP-01839"},"M16-GAP-01839":{"line":1838,"offset":317946,"length":170,"previous":"M16-GAP-01838","next":"M16-GAP-01840"},"M16-GAP-01840":{"line":1839,"offset":318116,"length":170,"previous":"M16-GAP-01839","next":"M16-GAP-01841"},"M16-GAP-01841":{"line":1840,"offset":318286,"length":173,"previous":"M16-GAP-01840","next":"M16-GAP-01842"},"M16-GAP-01842":{"line":1841,"offset":318459,"length":171,"previous":"M16-GAP-01841","next":"M16-GAP-01843"},"M16-GAP-01843":{"line":1842,"offset":318630,"length":165,"previous":"M16-GAP-01842","next":"M16-GAP-01844"},"M16-GAP-01844":{"line":1843,"offset":318795,"length":170,"previous":"M16-GAP-01843","next":"M16-GAP-01845"},"M16-GAP-01845":{"line":1844,"offset":318965,"length":183,"previous":"M16-GAP-01844","next":"M16-GAP-01846"},"M16-GAP-01846":{"line":1845,"offset":319148,"length":173,"previous":"M16-GAP-01845","next":"M16-GAP-01847"},"M16-GAP-01847":{"line":1846,"offset":319321,"length":172,"previous":"M16-GAP-01846","next":"M16-GAP-01848"},"M16-GAP-01848":{"line":1847,"offset":319493,"length":160,"previous":"M16-GAP-01847","next":"M16-GAP-01849"},"M16-GAP-01849":{"line":1848,"offset":319653,"length":166,"previous":"M16-GAP-01848","next":"M16-GAP-01850"},"M16-GAP-01850":{"line":1849,"offset":319819,"length":160,"previous":"M16-GAP-01849","next":"M16-GAP-01851"},"M16-GAP-01851":{"line":1850,"offset":319979,"length":162,"previous":"M16-GAP-01850","next":"M16-GAP-01852"},"M16-GAP-01852":{"line":1851,"offset":320141,"length":164,"previous":"M16-GAP-01851","next":"M16-GAP-01853"},"M16-GAP-01853":{"line":1852,"offset":320305,"length":165,"previous":"M16-GAP-01852","next":"M16-GAP-01854"},"M16-GAP-01854":{"line":1853,"offset":320470,"length":161,"previous":"M16-GAP-01853","next":"M16-GAP-01855"},"M16-GAP-01855":{"line":1854,"offset":320631,"length":171,"previous":"M16-GAP-01854","next":"M16-GAP-01856"},"M16-GAP-01856":{"line":1855,"offset":320802,"length":167,"previous":"M16-GAP-01855","next":"M16-GAP-01857"},"M16-GAP-01857":{"line":1856,"offset":320969,"length":174,"previous":"M16-GAP-01856","next":"M16-GAP-01858"},"M16-GAP-01858":{"line":1857,"offset":321143,"length":168,"previous":"M16-GAP-01857","next":"M16-GAP-01859"},"M16-GAP-01859":{"line":1858,"offset":321311,"length":165,"previous":"M16-GAP-01858","next":"M16-GAP-01860"},"M16-GAP-01860":{"line":1859,"offset":321476,"length":160,"previous":"M16-GAP-01859","next":"M16-GAP-01861"},"M16-GAP-01861":{"line":1860,"offset":321636,"length":172,"previous":"M16-GAP-01860","next":"M16-GAP-01862"},"M16-GAP-01862":{"line":1861,"offset":321808,"length":161,"previous":"M16-GAP-01861","next":"M16-GAP-01863"},"M16-GAP-01863":{"line":1862,"offset":321969,"length":162,"previous":"M16-GAP-01862","next":"M16-GAP-01864"},"M16-GAP-01864":{"line":1863,"offset":322131,"length":165,"previous":"M16-GAP-01863","next":"M16-GAP-01865"},"M16-GAP-01865":{"line":1864,"offset":322296,"length":173,"previous":"M16-GAP-01864","next":"M16-GAP-01866"},"M16-GAP-01866":{"line":1865,"offset":322469,"length":167,"previous":"M16-GAP-01865","next":"M16-GAP-01867"},"M16-GAP-01867":{"line":1866,"offset":322636,"length":166,"previous":"M16-GAP-01866","next":"M16-GAP-01868"},"M16-GAP-01868":{"line":1867,"offset":322802,"length":180,"previous":"M16-GAP-01867","next":"M16-GAP-01869"},"M16-GAP-01869":{"line":1868,"offset":322982,"length":170,"previous":"M16-GAP-01868","next":"M16-GAP-01870"},"M16-GAP-01870":{"line":1869,"offset":323152,"length":172,"previous":"M16-GAP-01869","next":"M16-GAP-01871"},"M16-GAP-01871":{"line":1870,"offset":323324,"length":169,"previous":"M16-GAP-01870","next":"M16-GAP-01872"},"M16-GAP-01872":{"line":1871,"offset":323493,"length":174,"previous":"M16-GAP-01871","next":"M16-GAP-01873"},"M16-GAP-01873":{"line":1872,"offset":323667,"length":169,"previous":"M16-GAP-01872","next":"M16-GAP-01874"},"M16-GAP-01874":{"line":1873,"offset":323836,"length":169,"previous":"M16-GAP-01873","next":"M16-GAP-01875"},"M16-GAP-01875":{"line":1874,"offset":324005,"length":173,"previous":"M16-GAP-01874","next":"M16-GAP-01876"},"M16-GAP-01876":{"line":1875,"offset":324178,"length":184,"previous":"M16-GAP-01875","next":"M16-GAP-01877"},"M16-GAP-01877":{"line":1876,"offset":324362,"length":176,"previous":"M16-GAP-01876","next":"M16-GAP-01878"},"M16-GAP-01878":{"line":1877,"offset":324538,"length":174,"previous":"M16-GAP-01877","next":"M16-GAP-01879"},"M16-GAP-01879":{"line":1878,"offset":324712,"length":180,"previous":"M16-GAP-01878","next":"M16-GAP-01880"},"M16-GAP-01880":{"line":1879,"offset":324892,"length":178,"previous":"M16-GAP-01879","next":"M16-GAP-01881"},"M16-GAP-01881":{"line":1880,"offset":325070,"length":174,"previous":"M16-GAP-01880","next":"M16-GAP-01882"},"M16-GAP-01882":{"line":1881,"offset":325244,"length":175,"previous":"M16-GAP-01881","next":"M16-GAP-01883"},"M16-GAP-01883":{"line":1882,"offset":325419,"length":176,"previous":"M16-GAP-01882","next":"M16-GAP-01884"},"M16-GAP-01884":{"line":1883,"offset":325595,"length":182,"previous":"M16-GAP-01883","next":"M16-GAP-01885"},"M16-GAP-01885":{"line":1884,"offset":325777,"length":176,"previous":"M16-GAP-01884","next":"M16-GAP-01886"},"M16-GAP-01886":{"line":1885,"offset":325953,"length":178,"previous":"M16-GAP-01885","next":"M16-GAP-01887"},"M16-GAP-01887":{"line":1886,"offset":326131,"length":172,"previous":"M16-GAP-01886","next":"M16-GAP-01888"},"M16-GAP-01888":{"line":1887,"offset":326303,"length":177,"previous":"M16-GAP-01887","next":"M16-GAP-01889"},"M16-GAP-01889":{"line":1888,"offset":326480,"length":178,"previous":"M16-GAP-01888","next":"M16-GAP-01890"},"M16-GAP-01890":{"line":1889,"offset":326658,"length":175,"previous":"M16-GAP-01889","next":"M16-GAP-01891"},"M16-GAP-01891":{"line":1890,"offset":326833,"length":171,"previous":"M16-GAP-01890","next":"M16-GAP-01892"},"M16-GAP-01892":{"line":1891,"offset":327004,"length":171,"previous":"M16-GAP-01891","next":"M16-GAP-01893"},"M16-GAP-01893":{"line":1892,"offset":327175,"length":175,"previous":"M16-GAP-01892","next":"M16-GAP-01894"},"M16-GAP-01894":{"line":1893,"offset":327350,"length":172,"previous":"M16-GAP-01893","next":"M16-GAP-01895"},"M16-GAP-01895":{"line":1894,"offset":327522,"length":176,"previous":"M16-GAP-01894","next":"M16-GAP-01896"},"M16-GAP-01896":{"line":1895,"offset":327698,"length":170,"previous":"M16-GAP-01895","next":"M16-GAP-01897"},"M16-GAP-01897":{"line":1896,"offset":327868,"length":182,"previous":"M16-GAP-01896","next":"M16-GAP-01898"},"M16-GAP-01898":{"line":1897,"offset":328050,"length":182,"previous":"M16-GAP-01897","next":"M16-GAP-01899"},"M16-GAP-01899":{"line":1898,"offset":328232,"length":176,"previous":"M16-GAP-01898","next":"M16-GAP-01900"},"M16-GAP-01900":{"line":1899,"offset":328408,"length":175,"previous":"M16-GAP-01899","next":"M16-GAP-01901"},"M16-GAP-01901":{"line":1900,"offset":328583,"length":175,"previous":"M16-GAP-01900","next":"M16-GAP-01902"},"M16-GAP-01902":{"line":1901,"offset":328758,"length":176,"previous":"M16-GAP-01901","next":"M16-GAP-01903"},"M16-GAP-01903":{"line":1902,"offset":328934,"length":176,"previous":"M16-GAP-01902","next":"M16-GAP-01904"},"M16-GAP-01904":{"line":1903,"offset":329110,"length":175,"previous":"M16-GAP-01903","next":"M16-GAP-01905"},"M16-GAP-01905":{"line":1904,"offset":329285,"length":173,"previous":"M16-GAP-01904","next":"M16-GAP-01906"},"M16-GAP-01906":{"line":1905,"offset":329458,"length":183,"previous":"M16-GAP-01905","next":"M16-GAP-01907"},"M16-GAP-01907":{"line":1906,"offset":329641,"length":180,"previous":"M16-GAP-01906","next":"M16-GAP-01908"},"M16-GAP-01908":{"line":1907,"offset":329821,"length":183,"previous":"M16-GAP-01907","next":"M16-GAP-01909"},"M16-GAP-01909":{"line":1908,"offset":330004,"length":178,"previous":"M16-GAP-01908","next":"M16-GAP-01910"},"M16-GAP-01910":{"line":1909,"offset":330182,"length":180,"previous":"M16-GAP-01909","next":"M16-GAP-01911"},"M16-GAP-01911":{"line":1910,"offset":330362,"length":183,"previous":"M16-GAP-01910","next":"M16-GAP-01912"},"M16-GAP-01912":{"line":1911,"offset":330545,"length":175,"previous":"M16-GAP-01911","next":"M16-GAP-01913"},"M16-GAP-01913":{"line":1912,"offset":330720,"length":172,"previous":"M16-GAP-01912","next":"M16-GAP-01914"},"M16-GAP-01914":{"line":1913,"offset":330892,"length":181,"previous":"M16-GAP-01913","next":"M16-GAP-01915"},"M16-GAP-01915":{"line":1914,"offset":331073,"length":184,"previous":"M16-GAP-01914","next":"M16-GAP-01916"},"M16-GAP-01916":{"line":1915,"offset":331257,"length":181,"previous":"M16-GAP-01915","next":"M16-GAP-01917"},"M16-GAP-01917":{"line":1916,"offset":331438,"length":181,"previous":"M16-GAP-01916","next":"M16-GAP-01918"},"M16-GAP-01918":{"line":1917,"offset":331619,"length":179,"previous":"M16-GAP-01917","next":"M16-GAP-01919"},"M16-GAP-01919":{"line":1918,"offset":331798,"length":179,"previous":"M16-GAP-01918","next":"M16-GAP-01920"},"M16-GAP-01920":{"line":1919,"offset":331977,"length":179,"previous":"M16-GAP-01919","next":"M16-GAP-01921"},"M16-GAP-01921":{"line":1920,"offset":332156,"length":177,"previous":"M16-GAP-01920","next":"M16-GAP-01922"},"M16-GAP-01922":{"line":1921,"offset":332333,"length":174,"previous":"M16-GAP-01921","next":"M16-GAP-01923"},"M16-GAP-01923":{"line":1922,"offset":332507,"length":177,"previous":"M16-GAP-01922","next":"M16-GAP-01924"},"M16-GAP-01924":{"line":1923,"offset":332684,"length":178,"previous":"M16-GAP-01923","next":"M16-GAP-01925"},"M16-GAP-01925":{"line":1924,"offset":332862,"length":177,"previous":"M16-GAP-01924","next":"M16-GAP-01926"},"M16-GAP-01926":{"line":1925,"offset":333039,"length":182,"previous":"M16-GAP-01925","next":"M16-GAP-01927"},"M16-GAP-01927":{"line":1926,"offset":333221,"length":183,"previous":"M16-GAP-01926","next":"M16-GAP-01928"},"M16-GAP-01928":{"line":1927,"offset":333404,"length":186,"previous":"M16-GAP-01927","next":"M16-GAP-01929"},"M16-GAP-01929":{"line":1928,"offset":333590,"length":175,"previous":"M16-GAP-01928","next":"M16-GAP-01930"},"M16-GAP-01930":{"line":1929,"offset":333765,"length":188,"previous":"M16-GAP-01929","next":"M16-GAP-01931"},"M16-GAP-01931":{"line":1930,"offset":333953,"length":182,"previous":"M16-GAP-01930","next":"M16-GAP-01932"},"M16-GAP-01932":{"line":1931,"offset":334135,"length":178,"previous":"M16-GAP-01931","next":"M16-GAP-01933"},"M16-GAP-01933":{"line":1932,"offset":334313,"length":184,"previous":"M16-GAP-01932","next":"M16-GAP-01934"},"M16-GAP-01934":{"line":1933,"offset":334497,"length":176,"previous":"M16-GAP-01933","next":"M16-GAP-01935"},"M16-GAP-01935":{"line":1934,"offset":334673,"length":180,"previous":"M16-GAP-01934","next":"M16-GAP-01936"},"M16-GAP-01936":{"line":1935,"offset":334853,"length":162,"previous":"M16-GAP-01935","next":"M16-GAP-01937"},"M16-GAP-01937":{"line":1936,"offset":335015,"length":163,"previous":"M16-GAP-01936","next":"M16-GAP-01938"},"M16-GAP-01938":{"line":1937,"offset":335178,"length":167,"previous":"M16-GAP-01937","next":"M16-GAP-01939"},"M16-GAP-01939":{"line":1938,"offset":335345,"length":174,"previous":"M16-GAP-01938","next":"M16-GAP-01940"},"M16-GAP-01940":{"line":1939,"offset":335519,"length":168,"previous":"M16-GAP-01939","next":"M16-GAP-01941"},"M16-GAP-01941":{"line":1940,"offset":335687,"length":172,"previous":"M16-GAP-01940","next":"M16-GAP-01942"},"M16-GAP-01942":{"line":1941,"offset":335859,"length":165,"previous":"M16-GAP-01941","next":"M16-GAP-01943"},"M16-GAP-01943":{"line":1942,"offset":336024,"length":177,"previous":"M16-GAP-01942","next":"M16-GAP-01944"},"M16-GAP-01944":{"line":1943,"offset":336201,"length":199,"previous":"M16-GAP-01943","next":"M16-GAP-01945"},"M16-GAP-01945":{"line":1944,"offset":336400,"length":186,"previous":"M16-GAP-01944","next":"M16-GAP-01946"},"M16-GAP-01946":{"line":1945,"offset":336586,"length":187,"previous":"M16-GAP-01945","next":"M16-GAP-01947"},"M16-GAP-01947":{"line":1946,"offset":336773,"length":184,"previous":"M16-GAP-01946","next":"M16-GAP-01948"},"M16-GAP-01948":{"line":1947,"offset":336957,"length":193,"previous":"M16-GAP-01947","next":"M16-GAP-01949"},"M16-GAP-01949":{"line":1948,"offset":337150,"length":185,"previous":"M16-GAP-01948","next":"M16-GAP-01950"},"M16-GAP-01950":{"line":1949,"offset":337335,"length":180,"previous":"M16-GAP-01949","next":"M16-GAP-01951"},"M16-GAP-01951":{"line":1950,"offset":337515,"length":164,"previous":"M16-GAP-01950","next":"M16-GAP-01952"},"M16-GAP-01952":{"line":1951,"offset":337679,"length":176,"previous":"M16-GAP-01951","next":"M16-GAP-01953"},"M16-GAP-01953":{"line":1952,"offset":337855,"length":168,"previous":"M16-GAP-01952","next":"M16-GAP-01954"},"M16-GAP-01954":{"line":1953,"offset":338023,"length":164,"previous":"M16-GAP-01953","next":"M16-GAP-01955"},"M16-GAP-01955":{"line":1954,"offset":338187,"length":178,"previous":"M16-GAP-01954","next":"M16-GAP-01956"},"M16-GAP-01956":{"line":1955,"offset":338365,"length":173,"previous":"M16-GAP-01955","next":"M16-GAP-01957"},"M16-GAP-01957":{"line":1956,"offset":338538,"length":169,"previous":"M16-GAP-01956","next":"M16-GAP-01958"},"M16-GAP-01958":{"line":1957,"offset":338707,"length":167,"previous":"M16-GAP-01957","next":"M16-GAP-01959"},"M16-GAP-01959":{"line":1958,"offset":338874,"length":178,"previous":"M16-GAP-01958","next":"M16-GAP-01960"},"M16-GAP-01960":{"line":1959,"offset":339052,"length":168,"previous":"M16-GAP-01959","next":"M16-GAP-01961"},"M16-GAP-01961":{"line":1960,"offset":339220,"length":175,"previous":"M16-GAP-01960","next":"M16-GAP-01962"},"M16-GAP-01962":{"line":1961,"offset":339395,"length":178,"previous":"M16-GAP-01961","next":"M16-GAP-01963"},"M16-GAP-01963":{"line":1962,"offset":339573,"length":175,"previous":"M16-GAP-01962","next":"M16-GAP-01964"},"M16-GAP-01964":{"line":1963,"offset":339748,"length":171,"previous":"M16-GAP-01963","next":"M16-GAP-01965"},"M16-GAP-01965":{"line":1964,"offset":339919,"length":174,"previous":"M16-GAP-01964","next":"M16-GAP-01966"},"M16-GAP-01966":{"line":1965,"offset":340093,"length":181,"previous":"M16-GAP-01965","next":"M16-GAP-01967"},"M16-GAP-01967":{"line":1966,"offset":340274,"length":172,"previous":"M16-GAP-01966","next":"M16-GAP-01968"},"M16-GAP-01968":{"line":1967,"offset":340446,"length":175,"previous":"M16-GAP-01967","next":"M16-GAP-01969"},"M16-GAP-01969":{"line":1968,"offset":340621,"length":173,"previous":"M16-GAP-01968","next":"M16-GAP-01970"},"M16-GAP-01970":{"line":1969,"offset":340794,"length":170,"previous":"M16-GAP-01969","next":"M16-GAP-01971"},"M16-GAP-01971":{"line":1970,"offset":340964,"length":173,"previous":"M16-GAP-01970","next":"M16-GAP-01972"},"M16-GAP-01972":{"line":1971,"offset":341137,"length":163,"previous":"M16-GAP-01971","next":"M16-GAP-01973"},"M16-GAP-01973":{"line":1972,"offset":341300,"length":173,"previous":"M16-GAP-01972","next":"M16-GAP-01974"},"M16-GAP-01974":{"line":1973,"offset":341473,"length":195,"previous":"M16-GAP-01973","next":"M16-GAP-01975"},"M16-GAP-01975":{"line":1974,"offset":341668,"length":195,"previous":"M16-GAP-01974","next":"M16-GAP-01976"},"M16-GAP-01976":{"line":1975,"offset":341863,"length":185,"previous":"M16-GAP-01975","next":"M16-GAP-01977"},"M16-GAP-01977":{"line":1976,"offset":342048,"length":185,"previous":"M16-GAP-01976","next":"M16-GAP-01978"},"M16-GAP-01978":{"line":1977,"offset":342233,"length":190,"previous":"M16-GAP-01977","next":"M16-GAP-01979"},"M16-GAP-01979":{"line":1978,"offset":342423,"length":188,"previous":"M16-GAP-01978","next":"M16-GAP-01980"},"M16-GAP-01980":{"line":1979,"offset":342611,"length":178,"previous":"M16-GAP-01979","next":"M16-GAP-01981"},"M16-GAP-01981":{"line":1980,"offset":342789,"length":179,"previous":"M16-GAP-01980","next":"M16-GAP-01982"},"M16-GAP-01982":{"line":1981,"offset":342968,"length":179,"previous":"M16-GAP-01981","next":"M16-GAP-01983"},"M16-GAP-01983":{"line":1982,"offset":343147,"length":180,"previous":"M16-GAP-01982","next":"M16-GAP-01984"},"M16-GAP-01984":{"line":1983,"offset":343327,"length":181,"previous":"M16-GAP-01983","next":"M16-GAP-01985"},"M16-GAP-01985":{"line":1984,"offset":343508,"length":180,"previous":"M16-GAP-01984","next":"M16-GAP-01986"},"M16-GAP-01986":{"line":1985,"offset":343688,"length":180,"previous":"M16-GAP-01985","next":"M16-GAP-01987"},"M16-GAP-01987":{"line":1986,"offset":343868,"length":180,"previous":"M16-GAP-01986","next":"M16-GAP-01988"},"M16-GAP-01988":{"line":1987,"offset":344048,"length":182,"previous":"M16-GAP-01987","next":"M16-GAP-01989"},"M16-GAP-01989":{"line":1988,"offset":344230,"length":177,"previous":"M16-GAP-01988","next":"M16-GAP-01990"},"M16-GAP-01990":{"line":1989,"offset":344407,"length":178,"previous":"M16-GAP-01989","next":"M16-GAP-01991"},"M16-GAP-01991":{"line":1990,"offset":344585,"length":178,"previous":"M16-GAP-01990","next":"M16-GAP-01992"},"M16-GAP-01992":{"line":1991,"offset":344763,"length":180,"previous":"M16-GAP-01991","next":"M16-GAP-01993"},"M16-GAP-01993":{"line":1992,"offset":344943,"length":189,"previous":"M16-GAP-01992","next":"M16-GAP-01994"},"M16-GAP-01994":{"line":1993,"offset":345132,"length":189,"previous":"M16-GAP-01993","next":"M16-GAP-01995"},"M16-GAP-01995":{"line":1994,"offset":345321,"length":184,"previous":"M16-GAP-01994","next":"M16-GAP-01996"},"M16-GAP-01996":{"line":1995,"offset":345505,"length":181,"previous":"M16-GAP-01995","next":"M16-GAP-01997"},"M16-GAP-01997":{"line":1996,"offset":345686,"length":184,"previous":"M16-GAP-01996","next":"M16-GAP-01998"},"M16-GAP-01998":{"line":1997,"offset":345870,"length":160,"previous":"M16-GAP-01997","next":"M16-GAP-01999"},"M16-GAP-01999":{"line":1998,"offset":346030,"length":170,"previous":"M16-GAP-01998","next":"M16-GAP-02000"},"M16-GAP-02000":{"line":1999,"offset":346200,"length":176,"previous":"M16-GAP-01999","next":"M16-GAP-02001"},"M16-GAP-02001":{"line":2000,"offset":346376,"length":172,"previous":"M16-GAP-02000","next":"M16-GAP-02002"},"M16-GAP-02002":{"line":2001,"offset":346548,"length":175,"previous":"M16-GAP-02001","next":"M16-GAP-02003"},"M16-GAP-02003":{"line":2002,"offset":346723,"length":171,"previous":"M16-GAP-02002","next":"M16-GAP-02004"},"M16-GAP-02004":{"line":2003,"offset":346894,"length":175,"previous":"M16-GAP-02003","next":"M16-GAP-02005"},"M16-GAP-02005":{"line":2004,"offset":347069,"length":182,"previous":"M16-GAP-02004","next":"M16-GAP-02006"},"M16-GAP-02006":{"line":2005,"offset":347251,"length":188,"previous":"M16-GAP-02005","next":"M16-GAP-02007"},"M16-GAP-02007":{"line":2006,"offset":347439,"length":174,"previous":"M16-GAP-02006","next":"M16-GAP-02008"},"M16-GAP-02008":{"line":2007,"offset":347613,"length":178,"previous":"M16-GAP-02007","next":"M16-GAP-02009"},"M16-GAP-02009":{"line":2008,"offset":347791,"length":185,"previous":"M16-GAP-02008","next":"M16-GAP-02010"},"M16-GAP-02010":{"line":2009,"offset":347976,"length":193,"previous":"M16-GAP-02009","next":"M16-GAP-02011"},"M16-GAP-02011":{"line":2010,"offset":348169,"length":168,"previous":"M16-GAP-02010","next":"M16-GAP-02012"},"M16-GAP-02012":{"line":2011,"offset":348337,"length":174,"previous":"M16-GAP-02011","next":"M16-GAP-02013"},"M16-GAP-02013":{"line":2012,"offset":348511,"length":173,"previous":"M16-GAP-02012","next":"M16-GAP-02014"},"M16-GAP-02014":{"line":2013,"offset":348684,"length":172,"previous":"M16-GAP-02013","next":"M16-GAP-02015"},"M16-GAP-02015":{"line":2014,"offset":348856,"length":172,"previous":"M16-GAP-02014","next":"M16-GAP-02016"},"M16-GAP-02016":{"line":2015,"offset":349028,"length":168,"previous":"M16-GAP-02015","next":"M16-GAP-02017"},"M16-GAP-02017":{"line":2016,"offset":349196,"length":168,"previous":"M16-GAP-02016","next":"M16-GAP-02018"},"M16-GAP-02018":{"line":2017,"offset":349364,"length":167,"previous":"M16-GAP-02017","next":"M16-GAP-02019"},"M16-GAP-02019":{"line":2018,"offset":349531,"length":167,"previous":"M16-GAP-02018","next":"M16-GAP-02020"},"M16-GAP-02020":{"line":2019,"offset":349698,"length":170,"previous":"M16-GAP-02019","next":"M16-GAP-02021"},"M16-GAP-02021":{"line":2020,"offset":349868,"length":168,"previous":"M16-GAP-02020","next":"M16-GAP-02022"},"M16-GAP-02022":{"line":2021,"offset":350036,"length":167,"previous":"M16-GAP-02021","next":"M16-GAP-02023"},"M16-GAP-02023":{"line":2022,"offset":350203,"length":174,"previous":"M16-GAP-02022","next":"M16-GAP-02024"},"M16-GAP-02024":{"line":2023,"offset":350377,"length":164,"previous":"M16-GAP-02023","next":"M16-GAP-02025"},"M16-GAP-02025":{"line":2024,"offset":350541,"length":177,"previous":"M16-GAP-02024","next":"M16-GAP-02026"},"M16-GAP-02026":{"line":2025,"offset":350718,"length":168,"previous":"M16-GAP-02025","next":"M16-GAP-02027"},"M16-GAP-02027":{"line":2026,"offset":350886,"length":168,"previous":"M16-GAP-02026","next":"M16-GAP-02028"},"M16-GAP-02028":{"line":2027,"offset":351054,"length":170,"previous":"M16-GAP-02027","next":"M16-GAP-02029"},"M16-GAP-02029":{"line":2028,"offset":351224,"length":177,"previous":"M16-GAP-02028","next":"M16-GAP-02030"},"M16-GAP-02030":{"line":2029,"offset":351401,"length":171,"previous":"M16-GAP-02029","next":"M16-GAP-02031"},"M16-GAP-02031":{"line":2030,"offset":351572,"length":171,"previous":"M16-GAP-02030","next":"M16-GAP-02032"},"M16-GAP-02032":{"line":2031,"offset":351743,"length":169,"previous":"M16-GAP-02031","next":"M16-GAP-02033"},"M16-GAP-02033":{"line":2032,"offset":351912,"length":161,"previous":"M16-GAP-02032","next":"M16-GAP-02034"},"M16-GAP-02034":{"line":2033,"offset":352073,"length":171,"previous":"M16-GAP-02033","next":"M16-GAP-02035"},"M16-GAP-02035":{"line":2034,"offset":352244,"length":167,"previous":"M16-GAP-02034","next":"M16-GAP-02036"},"M16-GAP-02036":{"line":2035,"offset":352411,"length":170,"previous":"M16-GAP-02035","next":"M16-GAP-02037"},"M16-GAP-02037":{"line":2036,"offset":352581,"length":177,"previous":"M16-GAP-02036","next":"M16-GAP-02038"},"M16-GAP-02038":{"line":2037,"offset":352758,"length":169,"previous":"M16-GAP-02037","next":"M16-GAP-02039"},"M16-GAP-02039":{"line":2038,"offset":352927,"length":173,"previous":"M16-GAP-02038","next":"M16-GAP-02040"},"M16-GAP-02040":{"line":2039,"offset":353100,"length":170,"previous":"M16-GAP-02039","next":"M16-GAP-02041"},"M16-GAP-02041":{"line":2040,"offset":353270,"length":171,"previous":"M16-GAP-02040","next":"M16-GAP-02042"},"M16-GAP-02042":{"line":2041,"offset":353441,"length":172,"previous":"M16-GAP-02041","next":"M16-GAP-02043"},"M16-GAP-02043":{"line":2042,"offset":353613,"length":169,"previous":"M16-GAP-02042","next":"M16-GAP-02044"},"M16-GAP-02044":{"line":2043,"offset":353782,"length":174,"previous":"M16-GAP-02043","next":"M16-GAP-02045"},"M16-GAP-02045":{"line":2044,"offset":353956,"length":168,"previous":"M16-GAP-02044","next":"M16-GAP-02046"},"M16-GAP-02046":{"line":2045,"offset":354124,"length":168,"previous":"M16-GAP-02045","next":"M16-GAP-02047"},"M16-GAP-02047":{"line":2046,"offset":354292,"length":173,"previous":"M16-GAP-02046","next":"M16-GAP-02048"},"M16-GAP-02048":{"line":2047,"offset":354465,"length":177,"previous":"M16-GAP-02047","next":"M16-GAP-02049"},"M16-GAP-02049":{"line":2048,"offset":354642,"length":181,"previous":"M16-GAP-02048","next":"M16-GAP-02050"},"M16-GAP-02050":{"line":2049,"offset":354823,"length":175,"previous":"M16-GAP-02049","next":"M16-GAP-02051"},"M16-GAP-02051":{"line":2050,"offset":354998,"length":167,"previous":"M16-GAP-02050","next":"M16-GAP-02052"},"M16-GAP-02052":{"line":2051,"offset":355165,"length":171,"previous":"M16-GAP-02051","next":"M16-GAP-02053"},"M16-GAP-02053":{"line":2052,"offset":355336,"length":173,"previous":"M16-GAP-02052","next":"M16-GAP-02054"},"M16-GAP-02054":{"line":2053,"offset":355509,"length":172,"previous":"M16-GAP-02053","next":"M16-GAP-02055"},"M16-GAP-02055":{"line":2054,"offset":355681,"length":173,"previous":"M16-GAP-02054","next":"M16-GAP-02056"},"M16-GAP-02056":{"line":2055,"offset":355854,"length":164,"previous":"M16-GAP-02055","next":"M16-GAP-02057"},"M16-GAP-02057":{"line":2056,"offset":356018,"length":170,"previous":"M16-GAP-02056","next":"M16-GAP-02058"},"M16-GAP-02058":{"line":2057,"offset":356188,"length":170,"previous":"M16-GAP-02057","next":"M16-GAP-02059"},"M16-GAP-02059":{"line":2058,"offset":356358,"length":170,"previous":"M16-GAP-02058","next":"M16-GAP-02060"},"M16-GAP-02060":{"line":2059,"offset":356528,"length":175,"previous":"M16-GAP-02059","next":"M16-GAP-02061"},"M16-GAP-02061":{"line":2060,"offset":356703,"length":181,"previous":"M16-GAP-02060","next":"M16-GAP-02062"},"M16-GAP-02062":{"line":2061,"offset":356884,"length":182,"previous":"M16-GAP-02061","next":"M16-GAP-02063"},"M16-GAP-02063":{"line":2062,"offset":357066,"length":164,"previous":"M16-GAP-02062","next":"M16-GAP-02064"},"M16-GAP-02064":{"line":2063,"offset":357230,"length":178,"previous":"M16-GAP-02063","next":"M16-GAP-02065"},"M16-GAP-02065":{"line":2064,"offset":357408,"length":184,"previous":"M16-GAP-02064","next":"M16-GAP-02066"},"M16-GAP-02066":{"line":2065,"offset":357592,"length":171,"previous":"M16-GAP-02065","next":"M16-GAP-02067"},"M16-GAP-02067":{"line":2066,"offset":357763,"length":174,"previous":"M16-GAP-02066","next":"M16-GAP-02068"},"M16-GAP-02068":{"line":2067,"offset":357937,"length":180,"previous":"M16-GAP-02067","next":"M16-GAP-02069"},"M16-GAP-02069":{"line":2068,"offset":358117,"length":179,"previous":"M16-GAP-02068","next":"M16-GAP-02070"},"M16-GAP-02070":{"line":2069,"offset":358296,"length":183,"previous":"M16-GAP-02069","next":"M16-GAP-02071"},"M16-GAP-02071":{"line":2070,"offset":358479,"length":174,"previous":"M16-GAP-02070","next":"M16-GAP-02072"},"M16-GAP-02072":{"line":2071,"offset":358653,"length":172,"previous":"M16-GAP-02071","next":"M16-GAP-02073"},"M16-GAP-02073":{"line":2072,"offset":358825,"length":184,"previous":"M16-GAP-02072","next":"M16-GAP-02074"},"M16-GAP-02074":{"line":2073,"offset":359009,"length":171,"previous":"M16-GAP-02073","next":"M16-GAP-02075"},"M16-GAP-02075":{"line":2074,"offset":359180,"length":169,"previous":"M16-GAP-02074","next":"M16-GAP-02076"},"M16-GAP-02076":{"line":2075,"offset":359349,"length":176,"previous":"M16-GAP-02075","next":"M16-GAP-02077"},"M16-GAP-02077":{"line":2076,"offset":359525,"length":174,"previous":"M16-GAP-02076","next":"M16-GAP-02078"},"M16-GAP-02078":{"line":2077,"offset":359699,"length":167,"previous":"M16-GAP-02077","next":"M16-GAP-02079"},"M16-GAP-02079":{"line":2078,"offset":359866,"length":169,"previous":"M16-GAP-02078","next":"M16-GAP-02080"},"M16-GAP-02080":{"line":2079,"offset":360035,"length":166,"previous":"M16-GAP-02079","next":"M16-GAP-02081"},"M16-GAP-02081":{"line":2080,"offset":360201,"length":176,"previous":"M16-GAP-02080","next":"M16-GAP-02082"},"M16-GAP-02082":{"line":2081,"offset":360377,"length":174,"previous":"M16-GAP-02081","next":"M16-GAP-02083"},"M16-GAP-02083":{"line":2082,"offset":360551,"length":178,"previous":"M16-GAP-02082","next":"M16-GAP-02084"},"M16-GAP-02084":{"line":2083,"offset":360729,"length":176,"previous":"M16-GAP-02083","next":"M16-GAP-02085"},"M16-GAP-02085":{"line":2084,"offset":360905,"length":175,"previous":"M16-GAP-02084","next":"M16-GAP-02086"},"M16-GAP-02086":{"line":2085,"offset":361080,"length":177,"previous":"M16-GAP-02085","next":"M16-GAP-02087"},"M16-GAP-02087":{"line":2086,"offset":361257,"length":176,"previous":"M16-GAP-02086","next":"M16-GAP-02088"},"M16-GAP-02088":{"line":2087,"offset":361433,"length":168,"previous":"M16-GAP-02087","next":"M16-GAP-02089"},"M16-GAP-02089":{"line":2088,"offset":361601,"length":174,"previous":"M16-GAP-02088","next":"M16-GAP-02090"},"M16-GAP-02090":{"line":2089,"offset":361775,"length":176,"previous":"M16-GAP-02089","next":"M16-GAP-02091"},"M16-GAP-02091":{"line":2090,"offset":361951,"length":175,"previous":"M16-GAP-02090","next":"M16-GAP-02092"},"M16-GAP-02092":{"line":2091,"offset":362126,"length":179,"previous":"M16-GAP-02091","next":"M16-GAP-02093"},"M16-GAP-02093":{"line":2092,"offset":362305,"length":172,"previous":"M16-GAP-02092","next":"M16-GAP-02094"},"M16-GAP-02094":{"line":2093,"offset":362477,"length":173,"previous":"M16-GAP-02093","next":"M16-GAP-02095"},"M16-GAP-02095":{"line":2094,"offset":362650,"length":173,"previous":"M16-GAP-02094","next":"M16-GAP-02096"},"M16-GAP-02096":{"line":2095,"offset":362823,"length":177,"previous":"M16-GAP-02095","next":"M16-GAP-02097"},"M16-GAP-02097":{"line":2096,"offset":363000,"length":182,"previous":"M16-GAP-02096","next":"M16-GAP-02098"},"M16-GAP-02098":{"line":2097,"offset":363182,"length":176,"previous":"M16-GAP-02097","next":"M16-GAP-02099"},"M16-GAP-02099":{"line":2098,"offset":363358,"length":178,"previous":"M16-GAP-02098","next":"M16-GAP-02100"},"M16-GAP-02100":{"line":2099,"offset":363536,"length":193,"previous":"M16-GAP-02099","next":"M16-GAP-02101"},"M16-GAP-02101":{"line":2100,"offset":363729,"length":170,"previous":"M16-GAP-02100","next":"M16-GAP-02102"},"M16-GAP-02102":{"line":2101,"offset":363899,"length":179,"previous":"M16-GAP-02101","next":"M16-GAP-02103"},"M16-GAP-02103":{"line":2102,"offset":364078,"length":172,"previous":"M16-GAP-02102","next":"M16-GAP-02104"},"M16-GAP-02104":{"line":2103,"offset":364250,"length":173,"previous":"M16-GAP-02103","next":"M16-GAP-02105"},"M16-GAP-02105":{"line":2104,"offset":364423,"length":168,"previous":"M16-GAP-02104","next":"M16-GAP-02106"},"M16-GAP-02106":{"line":2105,"offset":364591,"length":165,"previous":"M16-GAP-02105","next":"M16-GAP-02107"},"M16-GAP-02107":{"line":2106,"offset":364756,"length":177,"previous":"M16-GAP-02106","next":"M16-GAP-02108"},"M16-GAP-02108":{"line":2107,"offset":364933,"length":171,"previous":"M16-GAP-02107","next":"M16-GAP-02109"},"M16-GAP-02109":{"line":2108,"offset":365104,"length":188,"previous":"M16-GAP-02108","next":"M16-GAP-02110"},"M16-GAP-02110":{"line":2109,"offset":365292,"length":167,"previous":"M16-GAP-02109","next":"M16-GAP-02111"},"M16-GAP-02111":{"line":2110,"offset":365459,"length":171,"previous":"M16-GAP-02110","next":"M16-GAP-02112"},"M16-GAP-02112":{"line":2111,"offset":365630,"length":170,"previous":"M16-GAP-02111","next":"M16-GAP-02113"},"M16-GAP-02113":{"line":2112,"offset":365800,"length":175,"previous":"M16-GAP-02112","next":"M16-GAP-02114"},"M16-GAP-02114":{"line":2113,"offset":365975,"length":182,"previous":"M16-GAP-02113","next":"M16-GAP-02115"},"M16-GAP-02115":{"line":2114,"offset":366157,"length":177,"previous":"M16-GAP-02114","next":"M16-GAP-02116"},"M16-GAP-02116":{"line":2115,"offset":366334,"length":175,"previous":"M16-GAP-02115","next":"M16-GAP-02117"},"M16-GAP-02117":{"line":2116,"offset":366509,"length":177,"previous":"M16-GAP-02116","next":"M16-GAP-02118"},"M16-GAP-02118":{"line":2117,"offset":366686,"length":170,"previous":"M16-GAP-02117","next":"M16-GAP-02119"},"M16-GAP-02119":{"line":2118,"offset":366856,"length":172,"previous":"M16-GAP-02118","next":"M16-GAP-02120"},"M16-GAP-02120":{"line":2119,"offset":367028,"length":171,"previous":"M16-GAP-02119","next":"M16-GAP-02121"},"M16-GAP-02121":{"line":2120,"offset":367199,"length":171,"previous":"M16-GAP-02120","next":"M16-GAP-02122"},"M16-GAP-02122":{"line":2121,"offset":367370,"length":176,"previous":"M16-GAP-02121","next":"M16-GAP-02123"},"M16-GAP-02123":{"line":2122,"offset":367546,"length":176,"previous":"M16-GAP-02122","next":"M16-GAP-02124"},"M16-GAP-02124":{"line":2123,"offset":367722,"length":165,"previous":"M16-GAP-02123","next":"M16-GAP-02125"},"M16-GAP-02125":{"line":2124,"offset":367887,"length":175,"previous":"M16-GAP-02124","next":"M16-GAP-02126"},"M16-GAP-02126":{"line":2125,"offset":368062,"length":170,"previous":"M16-GAP-02125","next":"M16-GAP-02127"},"M16-GAP-02127":{"line":2126,"offset":368232,"length":174,"previous":"M16-GAP-02126","next":"M16-GAP-02128"},"M16-GAP-02128":{"line":2127,"offset":368406,"length":172,"previous":"M16-GAP-02127","next":"M16-GAP-02129"},"M16-GAP-02129":{"line":2128,"offset":368578,"length":176,"previous":"M16-GAP-02128","next":"M16-GAP-02130"},"M16-GAP-02130":{"line":2129,"offset":368754,"length":180,"previous":"M16-GAP-02129","next":"M16-GAP-02131"},"M16-GAP-02131":{"line":2130,"offset":368934,"length":165,"previous":"M16-GAP-02130","next":"M16-GAP-02132"},"M16-GAP-02132":{"line":2131,"offset":369099,"length":173,"previous":"M16-GAP-02131","next":"M16-GAP-02133"},"M16-GAP-02133":{"line":2132,"offset":369272,"length":166,"previous":"M16-GAP-02132","next":"M16-GAP-02134"},"M16-GAP-02134":{"line":2133,"offset":369438,"length":183,"previous":"M16-GAP-02133","next":"M16-GAP-02135"},"M16-GAP-02135":{"line":2134,"offset":369621,"length":190,"previous":"M16-GAP-02134","next":"M16-GAP-02136"},"M16-GAP-02136":{"line":2135,"offset":369811,"length":176,"previous":"M16-GAP-02135","next":"M16-GAP-02137"},"M16-GAP-02137":{"line":2136,"offset":369987,"length":174,"previous":"M16-GAP-02136","next":"M16-GAP-02138"},"M16-GAP-02138":{"line":2137,"offset":370161,"length":172,"previous":"M16-GAP-02137","next":"M16-GAP-02139"},"M16-GAP-02139":{"line":2138,"offset":370333,"length":167,"previous":"M16-GAP-02138","next":"M16-GAP-02140"},"M16-GAP-02140":{"line":2139,"offset":370500,"length":175,"previous":"M16-GAP-02139","next":"M16-GAP-02141"},"M16-GAP-02141":{"line":2140,"offset":370675,"length":171,"previous":"M16-GAP-02140","next":"M16-GAP-02142"},"M16-GAP-02142":{"line":2141,"offset":370846,"length":192,"previous":"M16-GAP-02141","next":"M16-GAP-02143"},"M16-GAP-02143":{"line":2142,"offset":371038,"length":190,"previous":"M16-GAP-02142","next":"M16-GAP-02144"},"M16-GAP-02144":{"line":2143,"offset":371228,"length":186,"previous":"M16-GAP-02143","next":"M16-GAP-02145"},"M16-GAP-02145":{"line":2144,"offset":371414,"length":177,"previous":"M16-GAP-02144","next":"M16-GAP-02146"},"M16-GAP-02146":{"line":2145,"offset":371591,"length":180,"previous":"M16-GAP-02145","next":"M16-GAP-02147"},"M16-GAP-02147":{"line":2146,"offset":371771,"length":175,"previous":"M16-GAP-02146","next":"M16-GAP-02148"},"M16-GAP-02148":{"line":2147,"offset":371946,"length":187,"previous":"M16-GAP-02147","next":"M16-GAP-02149"},"M16-GAP-02149":{"line":2148,"offset":372133,"length":174,"previous":"M16-GAP-02148","next":"M16-GAP-02150"},"M16-GAP-02150":{"line":2149,"offset":372307,"length":184,"previous":"M16-GAP-02149","next":"M16-GAP-02151"},"M16-GAP-02151":{"line":2150,"offset":372491,"length":167,"previous":"M16-GAP-02150","next":"M16-GAP-02152"},"M16-GAP-02152":{"line":2151,"offset":372658,"length":185,"previous":"M16-GAP-02151","next":"M16-GAP-02153"},"M16-GAP-02153":{"line":2152,"offset":372843,"length":176,"previous":"M16-GAP-02152","next":"M16-GAP-02154"},"M16-GAP-02154":{"line":2153,"offset":373019,"length":180,"previous":"M16-GAP-02153","next":"M16-GAP-02155"},"M16-GAP-02155":{"line":2154,"offset":373199,"length":167,"previous":"M16-GAP-02154","next":"M16-GAP-02156"},"M16-GAP-02156":{"line":2155,"offset":373366,"length":171,"previous":"M16-GAP-02155","next":"M16-GAP-02157"},"M16-GAP-02157":{"line":2156,"offset":373537,"length":171,"previous":"M16-GAP-02156","next":"M16-GAP-02158"},"M16-GAP-02158":{"line":2157,"offset":373708,"length":174,"previous":"M16-GAP-02157","next":"M16-GAP-02159"},"M16-GAP-02159":{"line":2158,"offset":373882,"length":175,"previous":"M16-GAP-02158","next":"M16-GAP-02160"},"M16-GAP-02160":{"line":2159,"offset":374057,"length":174,"previous":"M16-GAP-02159","next":"M16-GAP-02161"},"M16-GAP-02161":{"line":2160,"offset":374231,"length":175,"previous":"M16-GAP-02160","next":"M16-GAP-02162"},"M16-GAP-02162":{"line":2161,"offset":374406,"length":173,"previous":"M16-GAP-02161","next":"M16-GAP-02163"},"M16-GAP-02163":{"line":2162,"offset":374579,"length":172,"previous":"M16-GAP-02162","next":"M16-GAP-02164"},"M16-GAP-02164":{"line":2163,"offset":374751,"length":174,"previous":"M16-GAP-02163","next":"M16-GAP-02165"},"M16-GAP-02165":{"line":2164,"offset":374925,"length":179,"previous":"M16-GAP-02164","next":"M16-GAP-02166"},"M16-GAP-02166":{"line":2165,"offset":375104,"length":172,"previous":"M16-GAP-02165","next":"M16-GAP-02167"},"M16-GAP-02167":{"line":2166,"offset":375276,"length":172,"previous":"M16-GAP-02166","next":"M16-GAP-02168"},"M16-GAP-02168":{"line":2167,"offset":375448,"length":181,"previous":"M16-GAP-02167","next":"M16-GAP-02169"},"M16-GAP-02169":{"line":2168,"offset":375629,"length":180,"previous":"M16-GAP-02168","next":"M16-GAP-02170"},"M16-GAP-02170":{"line":2169,"offset":375809,"length":165,"previous":"M16-GAP-02169","next":"M16-GAP-02171"},"M16-GAP-02171":{"line":2170,"offset":375974,"length":165,"previous":"M16-GAP-02170","next":"M16-GAP-02172"},"M16-GAP-02172":{"line":2171,"offset":376139,"length":176,"previous":"M16-GAP-02171","next":"M16-GAP-02173"},"M16-GAP-02173":{"line":2172,"offset":376315,"length":166,"previous":"M16-GAP-02172","next":"M16-GAP-02174"},"M16-GAP-02174":{"line":2173,"offset":376481,"length":175,"previous":"M16-GAP-02173","next":"M16-GAP-02175"},"M16-GAP-02175":{"line":2174,"offset":376656,"length":180,"previous":"M16-GAP-02174","next":"M16-GAP-02176"},"M16-GAP-02176":{"line":2175,"offset":376836,"length":171,"previous":"M16-GAP-02175","next":"M16-GAP-02177"},"M16-GAP-02177":{"line":2176,"offset":377007,"length":179,"previous":"M16-GAP-02176","next":"M16-GAP-02178"},"M16-GAP-02178":{"line":2177,"offset":377186,"length":190,"previous":"M16-GAP-02177","next":"M16-GAP-02179"},"M16-GAP-02179":{"line":2178,"offset":377376,"length":180,"previous":"M16-GAP-02178","next":"M16-GAP-02180"},"M16-GAP-02180":{"line":2179,"offset":377556,"length":185,"previous":"M16-GAP-02179","next":"M16-GAP-02181"},"M16-GAP-02181":{"line":2180,"offset":377741,"length":194,"previous":"M16-GAP-02180","next":"M16-GAP-02182"},"M16-GAP-02182":{"line":2181,"offset":377935,"length":180,"previous":"M16-GAP-02181","next":"M16-GAP-02183"},"M16-GAP-02183":{"line":2182,"offset":378115,"length":189,"previous":"M16-GAP-02182","next":"M16-GAP-02184"},"M16-GAP-02184":{"line":2183,"offset":378304,"length":182,"previous":"M16-GAP-02183","next":"M16-GAP-02185"},"M16-GAP-02185":{"line":2184,"offset":378486,"length":186,"previous":"M16-GAP-02184","next":"M16-GAP-02186"},"M16-GAP-02186":{"line":2185,"offset":378672,"length":182,"previous":"M16-GAP-02185","next":"M16-GAP-02187"},"M16-GAP-02187":{"line":2186,"offset":378854,"length":180,"previous":"M16-GAP-02186","next":"M16-GAP-02188"},"M16-GAP-02188":{"line":2187,"offset":379034,"length":165,"previous":"M16-GAP-02187","next":"M16-GAP-02189"},"M16-GAP-02189":{"line":2188,"offset":379199,"length":170,"previous":"M16-GAP-02188","next":"M16-GAP-02190"},"M16-GAP-02190":{"line":2189,"offset":379369,"length":172,"previous":"M16-GAP-02189","next":"M16-GAP-02191"},"M16-GAP-02191":{"line":2190,"offset":379541,"length":177,"previous":"M16-GAP-02190","next":"M16-GAP-02192"},"M16-GAP-02192":{"line":2191,"offset":379718,"length":176,"previous":"M16-GAP-02191","next":"M16-GAP-02193"},"M16-GAP-02193":{"line":2192,"offset":379894,"length":172,"previous":"M16-GAP-02192","next":"M16-GAP-02194"},"M16-GAP-02194":{"line":2193,"offset":380066,"length":178,"previous":"M16-GAP-02193","next":"M16-GAP-02195"},"M16-GAP-02195":{"line":2194,"offset":380244,"length":175,"previous":"M16-GAP-02194","next":"M16-GAP-02196"},"M16-GAP-02196":{"line":2195,"offset":380419,"length":174,"previous":"M16-GAP-02195","next":"M16-GAP-02197"},"M16-GAP-02197":{"line":2196,"offset":380593,"length":182,"previous":"M16-GAP-02196","next":"M16-GAP-02198"},"M16-GAP-02198":{"line":2197,"offset":380775,"length":176,"previous":"M16-GAP-02197","next":"M16-GAP-02199"},"M16-GAP-02199":{"line":2198,"offset":380951,"length":172,"previous":"M16-GAP-02198","next":"M16-GAP-02200"},"M16-GAP-02200":{"line":2199,"offset":381123,"length":176,"previous":"M16-GAP-02199","next":"M16-GAP-02201"},"M16-GAP-02201":{"line":2200,"offset":381299,"length":176,"previous":"M16-GAP-02200","next":"M16-GAP-02202"},"M16-GAP-02202":{"line":2201,"offset":381475,"length":188,"previous":"M16-GAP-02201","next":"M16-GAP-02203"},"M16-GAP-02203":{"line":2202,"offset":381663,"length":167,"previous":"M16-GAP-02202","next":"M16-GAP-02204"},"M16-GAP-02204":{"line":2203,"offset":381830,"length":167,"previous":"M16-GAP-02203","next":"M16-GAP-02205"},"M16-GAP-02205":{"line":2204,"offset":381997,"length":169,"previous":"M16-GAP-02204","next":"M16-GAP-02206"},"M16-GAP-02206":{"line":2205,"offset":382166,"length":177,"previous":"M16-GAP-02205","next":"M16-GAP-02207"},"M16-GAP-02207":{"line":2206,"offset":382343,"length":171,"previous":"M16-GAP-02206","next":"M16-GAP-02208"},"M16-GAP-02208":{"line":2207,"offset":382514,"length":178,"previous":"M16-GAP-02207","next":"M16-GAP-02209"},"M16-GAP-02209":{"line":2208,"offset":382692,"length":174,"previous":"M16-GAP-02208","next":"M16-GAP-02210"},"M16-GAP-02210":{"line":2209,"offset":382866,"length":176,"previous":"M16-GAP-02209","next":"M16-GAP-02211"},"M16-GAP-02211":{"line":2210,"offset":383042,"length":171,"previous":"M16-GAP-02210","next":"M16-GAP-02212"},"M16-GAP-02212":{"line":2211,"offset":383213,"length":164,"previous":"M16-GAP-02211","next":"M16-GAP-02213"},"M16-GAP-02213":{"line":2212,"offset":383377,"length":161,"previous":"M16-GAP-02212","next":"M16-GAP-02214"},"M16-GAP-02214":{"line":2213,"offset":383538,"length":166,"previous":"M16-GAP-02213","next":"M16-GAP-02215"},"M16-GAP-02215":{"line":2214,"offset":383704,"length":161,"previous":"M16-GAP-02214","next":"M16-GAP-02216"},"M16-GAP-02216":{"line":2215,"offset":383865,"length":163,"previous":"M16-GAP-02215","next":"M16-GAP-02217"},"M16-GAP-02217":{"line":2216,"offset":384028,"length":179,"previous":"M16-GAP-02216","next":"M16-GAP-02218"},"M16-GAP-02218":{"line":2217,"offset":384207,"length":182,"previous":"M16-GAP-02217","next":"M16-GAP-02219"},"M16-GAP-02219":{"line":2218,"offset":384389,"length":193,"previous":"M16-GAP-02218","next":"M16-GAP-02220"},"M16-GAP-02220":{"line":2219,"offset":384582,"length":173,"previous":"M16-GAP-02219","next":"M16-GAP-02221"},"M16-GAP-02221":{"line":2220,"offset":384755,"length":185,"previous":"M16-GAP-02220","next":"M16-GAP-02222"},"M16-GAP-02222":{"line":2221,"offset":384940,"length":178,"previous":"M16-GAP-02221","next":"M16-GAP-02223"},"M16-GAP-02223":{"line":2222,"offset":385118,"length":176,"previous":"M16-GAP-02222","next":"M16-GAP-02224"},"M16-GAP-02224":{"line":2223,"offset":385294,"length":173,"previous":"M16-GAP-02223","next":"M16-GAP-02225"},"M16-GAP-02225":{"line":2224,"offset":385467,"length":193,"previous":"M16-GAP-02224","next":"M16-GAP-02226"},"M16-GAP-02226":{"line":2225,"offset":385660,"length":192,"previous":"M16-GAP-02225","next":"M16-GAP-02227"},"M16-GAP-02227":{"line":2226,"offset":385852,"length":195,"previous":"M16-GAP-02226","next":"M16-GAP-02228"},"M16-GAP-02228":{"line":2227,"offset":386047,"length":193,"previous":"M16-GAP-02227","next":"M16-GAP-02229"},"M16-GAP-02229":{"line":2228,"offset":386240,"length":194,"previous":"M16-GAP-02228","next":"M16-GAP-02230"},"M16-GAP-02230":{"line":2229,"offset":386434,"length":192,"previous":"M16-GAP-02229","next":"M16-GAP-02231"},"M16-GAP-02231":{"line":2230,"offset":386626,"length":168,"previous":"M16-GAP-02230","next":"M16-GAP-02232"},"M16-GAP-02232":{"line":2231,"offset":386794,"length":170,"previous":"M16-GAP-02231","next":"M16-GAP-02233"},"M16-GAP-02233":{"line":2232,"offset":386964,"length":174,"previous":"M16-GAP-02232","next":"M16-GAP-02234"},"M16-GAP-02234":{"line":2233,"offset":387138,"length":160,"previous":"M16-GAP-02233","next":"M16-GAP-02235"},"M16-GAP-02235":{"line":2234,"offset":387298,"length":166,"previous":"M16-GAP-02234","next":"M16-GAP-02236"},"M16-GAP-02236":{"line":2235,"offset":387464,"length":159,"previous":"M16-GAP-02235","next":"M16-GAP-02237"},"M16-GAP-02237":{"line":2236,"offset":387623,"length":162,"previous":"M16-GAP-02236","next":"M16-GAP-02238"},"M16-GAP-02238":{"line":2237,"offset":387785,"length":170,"previous":"M16-GAP-02237","next":"M16-GAP-02239"},"M16-GAP-02239":{"line":2238,"offset":387955,"length":160,"previous":"M16-GAP-02238","next":"M16-GAP-02240"},"M16-GAP-02240":{"line":2239,"offset":388115,"length":173,"previous":"M16-GAP-02239","next":"M16-GAP-02241"},"M16-GAP-02241":{"line":2240,"offset":388288,"length":162,"previous":"M16-GAP-02240","next":"M16-GAP-02242"},"M16-GAP-02242":{"line":2241,"offset":388450,"length":178,"previous":"M16-GAP-02241","next":"M16-GAP-02243"},"M16-GAP-02243":{"line":2242,"offset":388628,"length":162,"previous":"M16-GAP-02242","next":"M16-GAP-02244"},"M16-GAP-02244":{"line":2243,"offset":388790,"length":160,"previous":"M16-GAP-02243","next":"M16-GAP-02245"},"M16-GAP-02245":{"line":2244,"offset":388950,"length":177,"previous":"M16-GAP-02244","next":"M16-GAP-02246"},"M16-GAP-02246":{"line":2245,"offset":389127,"length":166,"previous":"M16-GAP-02245","next":"M16-GAP-02247"},"M16-GAP-02247":{"line":2246,"offset":389293,"length":167,"previous":"M16-GAP-02246","next":"M16-GAP-02248"},"M16-GAP-02248":{"line":2247,"offset":389460,"length":169,"previous":"M16-GAP-02247","next":"M16-GAP-02249"},"M16-GAP-02249":{"line":2248,"offset":389629,"length":160,"previous":"M16-GAP-02248","next":"M16-GAP-02250"},"M16-GAP-02250":{"line":2249,"offset":389789,"length":166,"previous":"M16-GAP-02249","next":"M16-GAP-02251"},"M16-GAP-02251":{"line":2250,"offset":389955,"length":167,"previous":"M16-GAP-02250","next":"M16-GAP-02252"},"M16-GAP-02252":{"line":2251,"offset":390122,"length":159,"previous":"M16-GAP-02251","next":"M16-GAP-02253"},"M16-GAP-02253":{"line":2252,"offset":390281,"length":160,"previous":"M16-GAP-02252","next":"M16-GAP-02254"},"M16-GAP-02254":{"line":2253,"offset":390441,"length":172,"previous":"M16-GAP-02253","next":"M16-GAP-02255"},"M16-GAP-02255":{"line":2254,"offset":390613,"length":161,"previous":"M16-GAP-02254","next":"M16-GAP-02256"},"M16-GAP-02256":{"line":2255,"offset":390774,"length":162,"previous":"M16-GAP-02255","next":"M16-GAP-02257"},"M16-GAP-02257":{"line":2256,"offset":390936,"length":163,"previous":"M16-GAP-02256","next":"M16-GAP-02258"},"M16-GAP-02258":{"line":2257,"offset":391099,"length":176,"previous":"M16-GAP-02257","next":"M16-GAP-02259"},"M16-GAP-02259":{"line":2258,"offset":391275,"length":172,"previous":"M16-GAP-02258","next":"M16-GAP-02260"},"M16-GAP-02260":{"line":2259,"offset":391447,"length":166,"previous":"M16-GAP-02259","next":"M16-GAP-02261"},"M16-GAP-02261":{"line":2260,"offset":391613,"length":160,"previous":"M16-GAP-02260","next":"M16-GAP-02262"},"M16-GAP-02262":{"line":2261,"offset":391773,"length":163,"previous":"M16-GAP-02261","next":"M16-GAP-02263"},"M16-GAP-02263":{"line":2262,"offset":391936,"length":162,"previous":"M16-GAP-02262","next":"M16-GAP-02264"},"M16-GAP-02264":{"line":2263,"offset":392098,"length":166,"previous":"M16-GAP-02263","next":"M16-GAP-02265"},"M16-GAP-02265":{"line":2264,"offset":392264,"length":166,"previous":"M16-GAP-02264","next":"M16-GAP-02266"},"M16-GAP-02266":{"line":2265,"offset":392430,"length":167,"previous":"M16-GAP-02265","next":"M16-GAP-02267"},"M16-GAP-02267":{"line":2266,"offset":392597,"length":167,"previous":"M16-GAP-02266","next":"M16-GAP-02268"},"M16-GAP-02268":{"line":2267,"offset":392764,"length":169,"previous":"M16-GAP-02267","next":"M16-GAP-02269"},"M16-GAP-02269":{"line":2268,"offset":392933,"length":166,"previous":"M16-GAP-02268","next":"M16-GAP-02270"},"M16-GAP-02270":{"line":2269,"offset":393099,"length":168,"previous":"M16-GAP-02269","next":"M16-GAP-02271"},"M16-GAP-02271":{"line":2270,"offset":393267,"length":164,"previous":"M16-GAP-02270","next":"M16-GAP-02272"},"M16-GAP-02272":{"line":2271,"offset":393431,"length":162,"previous":"M16-GAP-02271","next":"M16-GAP-02273"},"M16-GAP-02273":{"line":2272,"offset":393593,"length":169,"previous":"M16-GAP-02272","next":"M16-GAP-02274"},"M16-GAP-02274":{"line":2273,"offset":393762,"length":173,"previous":"M16-GAP-02273","next":"M16-GAP-02275"},"M16-GAP-02275":{"line":2274,"offset":393935,"length":162,"previous":"M16-GAP-02274","next":"M16-GAP-02276"},"M16-GAP-02276":{"line":2275,"offset":394097,"length":168,"previous":"M16-GAP-02275","next":"M16-GAP-02277"},"M16-GAP-02277":{"line":2276,"offset":394265,"length":168,"previous":"M16-GAP-02276","next":"M16-GAP-02278"},"M16-GAP-02278":{"line":2277,"offset":394433,"length":169,"previous":"M16-GAP-02277","next":"M16-GAP-02279"},"M16-GAP-02279":{"line":2278,"offset":394602,"length":173,"previous":"M16-GAP-02278","next":"M16-GAP-02280"},"M16-GAP-02280":{"line":2279,"offset":394775,"length":165,"previous":"M16-GAP-02279","next":"M16-GAP-02281"},"M16-GAP-02281":{"line":2280,"offset":394940,"length":179,"previous":"M16-GAP-02280","next":"M16-GAP-02282"},"M16-GAP-02282":{"line":2281,"offset":395119,"length":179,"previous":"M16-GAP-02281","next":"M16-GAP-02283"},"M16-GAP-02283":{"line":2282,"offset":395298,"length":177,"previous":"M16-GAP-02282","next":"M16-GAP-02284"},"M16-GAP-02284":{"line":2283,"offset":395475,"length":172,"previous":"M16-GAP-02283","next":"M16-GAP-02285"},"M16-GAP-02285":{"line":2284,"offset":395647,"length":171,"previous":"M16-GAP-02284","next":"M16-GAP-02286"},"M16-GAP-02286":{"line":2285,"offset":395818,"length":171,"previous":"M16-GAP-02285","next":"M16-GAP-02287"},"M16-GAP-02287":{"line":2286,"offset":395989,"length":167,"previous":"M16-GAP-02286","next":"M16-GAP-02288"},"M16-GAP-02288":{"line":2287,"offset":396156,"length":170,"previous":"M16-GAP-02287","next":"M16-GAP-02289"},"M16-GAP-02289":{"line":2288,"offset":396326,"length":167,"previous":"M16-GAP-02288","next":"M16-GAP-02290"},"M16-GAP-02290":{"line":2289,"offset":396493,"length":167,"previous":"M16-GAP-02289","next":"M16-GAP-02291"},"M16-GAP-02291":{"line":2290,"offset":396660,"length":174,"previous":"M16-GAP-02290","next":"M16-GAP-02292"},"M16-GAP-02292":{"line":2291,"offset":396834,"length":179,"previous":"M16-GAP-02291","next":"M16-GAP-02293"},"M16-GAP-02293":{"line":2292,"offset":397013,"length":170,"previous":"M16-GAP-02292","next":"M16-GAP-02294"},"M16-GAP-02294":{"line":2293,"offset":397183,"length":166,"previous":"M16-GAP-02293","next":"M16-GAP-02295"},"M16-GAP-02295":{"line":2294,"offset":397349,"length":174,"previous":"M16-GAP-02294","next":"M16-GAP-02296"},"M16-GAP-02296":{"line":2295,"offset":397523,"length":172,"previous":"M16-GAP-02295","next":"M16-GAP-02297"},"M16-GAP-02297":{"line":2296,"offset":397695,"length":165,"previous":"M16-GAP-02296","next":"M16-GAP-02298"},"M16-GAP-02298":{"line":2297,"offset":397860,"length":169,"previous":"M16-GAP-02297","next":"M16-GAP-02299"},"M16-GAP-02299":{"line":2298,"offset":398029,"length":170,"previous":"M16-GAP-02298","next":"M16-GAP-02300"},"M16-GAP-02300":{"line":2299,"offset":398199,"length":170,"previous":"M16-GAP-02299","next":"M16-GAP-02301"},"M16-GAP-02301":{"line":2300,"offset":398369,"length":170,"previous":"M16-GAP-02300","next":"M16-GAP-02302"},"M16-GAP-02302":{"line":2301,"offset":398539,"length":172,"previous":"M16-GAP-02301","next":"M16-GAP-02303"},"M16-GAP-02303":{"line":2302,"offset":398711,"length":171,"previous":"M16-GAP-02302","next":"M16-GAP-02304"},"M16-GAP-02304":{"line":2303,"offset":398882,"length":174,"previous":"M16-GAP-02303","next":"M16-GAP-02305"},"M16-GAP-02305":{"line":2304,"offset":399056,"length":172,"previous":"M16-GAP-02304","next":"M16-GAP-02306"},"M16-GAP-02306":{"line":2305,"offset":399228,"length":175,"previous":"M16-GAP-02305","next":"M16-GAP-02307"},"M16-GAP-02307":{"line":2306,"offset":399403,"length":168,"previous":"M16-GAP-02306","next":"M16-GAP-02308"},"M16-GAP-02308":{"line":2307,"offset":399571,"length":173,"previous":"M16-GAP-02307","next":"M16-GAP-02309"},"M16-GAP-02309":{"line":2308,"offset":399744,"length":175,"previous":"M16-GAP-02308","next":"M16-GAP-02310"},"M16-GAP-02310":{"line":2309,"offset":399919,"length":175,"previous":"M16-GAP-02309","next":"M16-GAP-02311"},"M16-GAP-02311":{"line":2310,"offset":400094,"length":184,"previous":"M16-GAP-02310","next":"M16-GAP-02312"},"M16-GAP-02312":{"line":2311,"offset":400278,"length":180,"previous":"M16-GAP-02311","next":"M16-GAP-02313"},"M16-GAP-02313":{"line":2312,"offset":400458,"length":177,"previous":"M16-GAP-02312","next":"M16-GAP-02314"},"M16-GAP-02314":{"line":2313,"offset":400635,"length":164,"previous":"M16-GAP-02313","next":"M16-GAP-02315"},"M16-GAP-02315":{"line":2314,"offset":400799,"length":167,"previous":"M16-GAP-02314","next":"M16-GAP-02316"},"M16-GAP-02316":{"line":2315,"offset":400966,"length":163,"previous":"M16-GAP-02315","next":"M16-GAP-02317"},"M16-GAP-02317":{"line":2316,"offset":401129,"length":164,"previous":"M16-GAP-02316","next":"M16-GAP-02318"},"M16-GAP-02318":{"line":2317,"offset":401293,"length":169,"previous":"M16-GAP-02317","next":"M16-GAP-02319"},"M16-GAP-02319":{"line":2318,"offset":401462,"length":170,"previous":"M16-GAP-02318","next":"M16-GAP-02320"},"M16-GAP-02320":{"line":2319,"offset":401632,"length":174,"previous":"M16-GAP-02319","next":"M16-GAP-02321"},"M16-GAP-02321":{"line":2320,"offset":401806,"length":180,"previous":"M16-GAP-02320","next":"M16-GAP-02322"},"M16-GAP-02322":{"line":2321,"offset":401986,"length":170,"previous":"M16-GAP-02321","next":"M16-GAP-02323"},"M16-GAP-02323":{"line":2322,"offset":402156,"length":171,"previous":"M16-GAP-02322","next":"M16-GAP-02324"},"M16-GAP-02324":{"line":2323,"offset":402327,"length":184,"previous":"M16-GAP-02323","next":"M16-GAP-02325"},"M16-GAP-02325":{"line":2324,"offset":402511,"length":167,"previous":"M16-GAP-02324","next":"M16-GAP-02326"},"M16-GAP-02326":{"line":2325,"offset":402678,"length":175,"previous":"M16-GAP-02325","next":"M16-GAP-02327"},"M16-GAP-02327":{"line":2326,"offset":402853,"length":171,"previous":"M16-GAP-02326","next":"M16-GAP-02328"},"M16-GAP-02328":{"line":2327,"offset":403024,"length":173,"previous":"M16-GAP-02327","next":"M16-GAP-02329"},"M16-GAP-02329":{"line":2328,"offset":403197,"length":179,"previous":"M16-GAP-02328","next":"M16-GAP-02330"},"M16-GAP-02330":{"line":2329,"offset":403376,"length":178,"previous":"M16-GAP-02329","next":"M16-GAP-02331"},"M16-GAP-02331":{"line":2330,"offset":403554,"length":179,"previous":"M16-GAP-02330","next":"M16-GAP-02332"},"M16-GAP-02332":{"line":2331,"offset":403733,"length":176,"previous":"M16-GAP-02331","next":"M16-GAP-02333"},"M16-GAP-02333":{"line":2332,"offset":403909,"length":171,"previous":"M16-GAP-02332","next":"M16-GAP-02334"},"M16-GAP-02334":{"line":2333,"offset":404080,"length":174,"previous":"M16-GAP-02333","next":"M16-GAP-02335"},"M16-GAP-02335":{"line":2334,"offset":404254,"length":175,"previous":"M16-GAP-02334","next":"M16-GAP-02336"},"M16-GAP-02336":{"line":2335,"offset":404429,"length":163,"previous":"M16-GAP-02335","next":"M16-GAP-02337"},"M16-GAP-02337":{"line":2336,"offset":404592,"length":170,"previous":"M16-GAP-02336","next":"M16-GAP-02338"},"M16-GAP-02338":{"line":2337,"offset":404762,"length":169,"previous":"M16-GAP-02337","next":"M16-GAP-02339"},"M16-GAP-02339":{"line":2338,"offset":404931,"length":172,"previous":"M16-GAP-02338","next":"M16-GAP-02340"},"M16-GAP-02340":{"line":2339,"offset":405103,"length":170,"previous":"M16-GAP-02339","next":"M16-GAP-02341"},"M16-GAP-02341":{"line":2340,"offset":405273,"length":170,"previous":"M16-GAP-02340","next":"M16-GAP-02342"},"M16-GAP-02342":{"line":2341,"offset":405443,"length":165,"previous":"M16-GAP-02341","next":"M16-GAP-02343"},"M16-GAP-02343":{"line":2342,"offset":405608,"length":171,"previous":"M16-GAP-02342","next":"M16-GAP-02344"},"M16-GAP-02344":{"line":2343,"offset":405779,"length":167,"previous":"M16-GAP-02343","next":"M16-GAP-02345"},"M16-GAP-02345":{"line":2344,"offset":405946,"length":168,"previous":"M16-GAP-02344","next":"M16-GAP-02346"},"M16-GAP-02346":{"line":2345,"offset":406114,"length":170,"previous":"M16-GAP-02345","next":"M16-GAP-02347"},"M16-GAP-02347":{"line":2346,"offset":406284,"length":159,"previous":"M16-GAP-02346","next":"M16-GAP-02348"},"M16-GAP-02348":{"line":2347,"offset":406443,"length":168,"previous":"M16-GAP-02347","next":"M16-GAP-02349"},"M16-GAP-02349":{"line":2348,"offset":406611,"length":169,"previous":"M16-GAP-02348","next":"M16-GAP-02350"},"M16-GAP-02350":{"line":2349,"offset":406780,"length":175,"previous":"M16-GAP-02349","next":"M16-GAP-02351"},"M16-GAP-02351":{"line":2350,"offset":406955,"length":158,"previous":"M16-GAP-02350","next":"M16-GAP-02352"},"M16-GAP-02352":{"line":2351,"offset":407113,"length":173,"previous":"M16-GAP-02351","next":"M16-GAP-02353"},"M16-GAP-02353":{"line":2352,"offset":407286,"length":166,"previous":"M16-GAP-02352","next":"M16-GAP-02354"},"M16-GAP-02354":{"line":2353,"offset":407452,"length":164,"previous":"M16-GAP-02353","next":"M16-GAP-02355"},"M16-GAP-02355":{"line":2354,"offset":407616,"length":171,"previous":"M16-GAP-02354","next":"M16-GAP-02356"},"M16-GAP-02356":{"line":2355,"offset":407787,"length":170,"previous":"M16-GAP-02355","next":"M16-GAP-02357"},"M16-GAP-02357":{"line":2356,"offset":407957,"length":167,"previous":"M16-GAP-02356","next":"M16-GAP-02358"},"M16-GAP-02358":{"line":2357,"offset":408124,"length":173,"previous":"M16-GAP-02357","next":"M16-GAP-02359"},"M16-GAP-02359":{"line":2358,"offset":408297,"length":158,"previous":"M16-GAP-02358","next":"M16-GAP-02360"},"M16-GAP-02360":{"line":2359,"offset":408455,"length":167,"previous":"M16-GAP-02359","next":"M16-GAP-02361"},"M16-GAP-02361":{"line":2360,"offset":408622,"length":163,"previous":"M16-GAP-02360","next":"M16-GAP-02362"},"M16-GAP-02362":{"line":2361,"offset":408785,"length":170,"previous":"M16-GAP-02361","next":"M16-GAP-02363"},"M16-GAP-02363":{"line":2362,"offset":408955,"length":166,"previous":"M16-GAP-02362","next":"M16-GAP-02364"},"M16-GAP-02364":{"line":2363,"offset":409121,"length":166,"previous":"M16-GAP-02363","next":"M16-GAP-02365"},"M16-GAP-02365":{"line":2364,"offset":409287,"length":159,"previous":"M16-GAP-02364","next":"M16-GAP-02366"},"M16-GAP-02366":{"line":2365,"offset":409446,"length":157,"previous":"M16-GAP-02365","next":"M16-GAP-02367"},"M16-GAP-02367":{"line":2366,"offset":409603,"length":171,"previous":"M16-GAP-02366","next":"M16-GAP-02368"},"M16-GAP-02368":{"line":2367,"offset":409774,"length":176,"previous":"M16-GAP-02367","next":"M16-GAP-02369"},"M16-GAP-02369":{"line":2368,"offset":409950,"length":168,"previous":"M16-GAP-02368","next":"M16-GAP-02370"},"M16-GAP-02370":{"line":2369,"offset":410118,"length":159,"previous":"M16-GAP-02369","next":"M16-GAP-02371"},"M16-GAP-02371":{"line":2370,"offset":410277,"length":160,"previous":"M16-GAP-02370","next":"M16-GAP-02372"},"M16-GAP-02372":{"line":2371,"offset":410437,"length":157,"previous":"M16-GAP-02371","next":"M16-GAP-02373"},"M16-GAP-02373":{"line":2372,"offset":410594,"length":162,"previous":"M16-GAP-02372","next":"M16-GAP-02374"},"M16-GAP-02374":{"line":2373,"offset":410756,"length":172,"previous":"M16-GAP-02373","next":"M16-GAP-02375"},"M16-GAP-02375":{"line":2374,"offset":410928,"length":160,"previous":"M16-GAP-02374","next":"M16-GAP-02376"},"M16-GAP-02376":{"line":2375,"offset":411088,"length":164,"previous":"M16-GAP-02375","next":"M16-GAP-02377"},"M16-GAP-02377":{"line":2376,"offset":411252,"length":164,"previous":"M16-GAP-02376","next":"M16-GAP-02378"},"M16-GAP-02378":{"line":2377,"offset":411416,"length":171,"previous":"M16-GAP-02377","next":"M16-GAP-02379"},"M16-GAP-02379":{"line":2378,"offset":411587,"length":167,"previous":"M16-GAP-02378","next":"M16-GAP-02380"},"M16-GAP-02380":{"line":2379,"offset":411754,"length":170,"previous":"M16-GAP-02379","next":"M16-GAP-02381"},"M16-GAP-02381":{"line":2380,"offset":411924,"length":166,"previous":"M16-GAP-02380","next":"M16-GAP-02382"},"M16-GAP-02382":{"line":2381,"offset":412090,"length":165,"previous":"M16-GAP-02381","next":"M16-GAP-02383"},"M16-GAP-02383":{"line":2382,"offset":412255,"length":167,"previous":"M16-GAP-02382","next":"M16-GAP-02384"},"M16-GAP-02384":{"line":2383,"offset":412422,"length":172,"previous":"M16-GAP-02383","next":"M16-GAP-02385"},"M16-GAP-02385":{"line":2384,"offset":412594,"length":165,"previous":"M16-GAP-02384","next":"M16-GAP-02386"},"M16-GAP-02386":{"line":2385,"offset":412759,"length":165,"previous":"M16-GAP-02385","next":"M16-GAP-02387"},"M16-GAP-02387":{"line":2386,"offset":412924,"length":165,"previous":"M16-GAP-02386","next":"M16-GAP-02388"},"M16-GAP-02388":{"line":2387,"offset":413089,"length":168,"previous":"M16-GAP-02387","next":"M16-GAP-02389"},"M16-GAP-02389":{"line":2388,"offset":413257,"length":167,"previous":"M16-GAP-02388","next":"M16-GAP-02390"},"M16-GAP-02390":{"line":2389,"offset":413424,"length":168,"previous":"M16-GAP-02389","next":"M16-GAP-02391"},"M16-GAP-02391":{"line":2390,"offset":413592,"length":166,"previous":"M16-GAP-02390","next":"M16-GAP-02392"},"M16-GAP-02392":{"line":2391,"offset":413758,"length":165,"previous":"M16-GAP-02391","next":"M16-GAP-02393"},"M16-GAP-02393":{"line":2392,"offset":413923,"length":172,"previous":"M16-GAP-02392","next":"M16-GAP-02394"},"M16-GAP-02394":{"line":2393,"offset":414095,"length":174,"previous":"M16-GAP-02393","next":"M16-GAP-02395"},"M16-GAP-02395":{"line":2394,"offset":414269,"length":167,"previous":"M16-GAP-02394","next":"M16-GAP-02396"},"M16-GAP-02396":{"line":2395,"offset":414436,"length":165,"previous":"M16-GAP-02395","next":"M16-GAP-02397"},"M16-GAP-02397":{"line":2396,"offset":414601,"length":167,"previous":"M16-GAP-02396","next":"M16-GAP-02398"},"M16-GAP-02398":{"line":2397,"offset":414768,"length":168,"previous":"M16-GAP-02397","next":"M16-GAP-02399"},"M16-GAP-02399":{"line":2398,"offset":414936,"length":160,"previous":"M16-GAP-02398","next":"M16-GAP-02400"},"M16-GAP-02400":{"line":2399,"offset":415096,"length":160,"previous":"M16-GAP-02399","next":"M16-GAP-02401"},"M16-GAP-02401":{"line":2400,"offset":415256,"length":158,"previous":"M16-GAP-02400","next":"M16-GAP-02402"},"M16-GAP-02402":{"line":2401,"offset":415414,"length":166,"previous":"M16-GAP-02401","next":"M16-GAP-02403"},"M16-GAP-02403":{"line":2402,"offset":415580,"length":162,"previous":"M16-GAP-02402","next":"M16-GAP-02404"},"M16-GAP-02404":{"line":2403,"offset":415742,"length":161,"previous":"M16-GAP-02403","next":"M16-GAP-02405"},"M16-GAP-02405":{"line":2404,"offset":415903,"length":163,"previous":"M16-GAP-02404","next":"M16-GAP-02406"},"M16-GAP-02406":{"line":2405,"offset":416066,"length":169,"previous":"M16-GAP-02405","next":"M16-GAP-02407"},"M16-GAP-02407":{"line":2406,"offset":416235,"length":169,"previous":"M16-GAP-02406","next":"M16-GAP-02408"},"M16-GAP-02408":{"line":2407,"offset":416404,"length":170,"previous":"M16-GAP-02407","next":"M16-GAP-02409"},"M16-GAP-02409":{"line":2408,"offset":416574,"length":167,"previous":"M16-GAP-02408","next":"M16-GAP-02410"},"M16-GAP-02410":{"line":2409,"offset":416741,"length":175,"previous":"M16-GAP-02409","next":"M16-GAP-02411"},"M16-GAP-02411":{"line":2410,"offset":416916,"length":168,"previous":"M16-GAP-02410","next":"M16-GAP-02412"},"M16-GAP-02412":{"line":2411,"offset":417084,"length":162,"previous":"M16-GAP-02411","next":"M16-GAP-02413"},"M16-GAP-02413":{"line":2412,"offset":417246,"length":169,"previous":"M16-GAP-02412","next":"M16-GAP-02414"},"M16-GAP-02414":{"line":2413,"offset":417415,"length":165,"previous":"M16-GAP-02413","next":"M16-GAP-02415"},"M16-GAP-02415":{"line":2414,"offset":417580,"length":166,"previous":"M16-GAP-02414","next":"M16-GAP-02416"},"M16-GAP-02416":{"line":2415,"offset":417746,"length":174,"previous":"M16-GAP-02415","next":"M16-GAP-02417"},"M16-GAP-02417":{"line":2416,"offset":417920,"length":185,"previous":"M16-GAP-02416","next":"M16-GAP-02418"},"M16-GAP-02418":{"line":2417,"offset":418105,"length":188,"previous":"M16-GAP-02417","next":"M16-GAP-02419"},"M16-GAP-02419":{"line":2418,"offset":418293,"length":172,"previous":"M16-GAP-02418","next":"M16-GAP-02420"},"M16-GAP-02420":{"line":2419,"offset":418465,"length":181,"previous":"M16-GAP-02419","next":"M16-GAP-02421"},"M16-GAP-02421":{"line":2420,"offset":418646,"length":177,"previous":"M16-GAP-02420","next":"M16-GAP-02422"},"M16-GAP-02422":{"line":2421,"offset":418823,"length":169,"previous":"M16-GAP-02421","next":"M16-GAP-02423"},"M16-GAP-02423":{"line":2422,"offset":418992,"length":168,"previous":"M16-GAP-02422","next":"M16-GAP-02424"},"M16-GAP-02424":{"line":2423,"offset":419160,"length":166,"previous":"M16-GAP-02423","next":"M16-GAP-02425"},"M16-GAP-02425":{"line":2424,"offset":419326,"length":163,"previous":"M16-GAP-02424","next":"M16-GAP-02426"},"M16-GAP-02426":{"line":2425,"offset":419489,"length":168,"previous":"M16-GAP-02425","next":"M16-GAP-02427"},"M16-GAP-02427":{"line":2426,"offset":419657,"length":191,"previous":"M16-GAP-02426","next":"M16-GAP-02428"},"M16-GAP-02428":{"line":2427,"offset":419848,"length":191,"previous":"M16-GAP-02427","next":"M16-GAP-02429"},"M16-GAP-02429":{"line":2428,"offset":420039,"length":187,"previous":"M16-GAP-02428","next":"M16-GAP-02430"},"M16-GAP-02430":{"line":2429,"offset":420226,"length":194,"previous":"M16-GAP-02429","next":"M16-GAP-02431"},"M16-GAP-02431":{"line":2430,"offset":420420,"length":161,"previous":"M16-GAP-02430","next":"M16-GAP-02432"},"M16-GAP-02432":{"line":2431,"offset":420581,"length":173,"previous":"M16-GAP-02431","next":"M16-GAP-02433"},"M16-GAP-02433":{"line":2432,"offset":420754,"length":167,"previous":"M16-GAP-02432","next":"M16-GAP-02434"},"M16-GAP-02434":{"line":2433,"offset":420921,"length":179,"previous":"M16-GAP-02433","next":"M16-GAP-02435"},"M16-GAP-02435":{"line":2434,"offset":421100,"length":162,"previous":"M16-GAP-02434","next":"M16-GAP-02436"},"M16-GAP-02436":{"line":2435,"offset":421262,"length":166,"previous":"M16-GAP-02435","next":"M16-GAP-02437"},"M16-GAP-02437":{"line":2436,"offset":421428,"length":166,"previous":"M16-GAP-02436","next":"M16-GAP-02438"},"M16-GAP-02438":{"line":2437,"offset":421594,"length":168,"previous":"M16-GAP-02437","next":"M16-GAP-02439"},"M16-GAP-02439":{"line":2438,"offset":421762,"length":173,"previous":"M16-GAP-02438","next":"M16-GAP-02440"},"M16-GAP-02440":{"line":2439,"offset":421935,"length":166,"previous":"M16-GAP-02439","next":"M16-GAP-02441"},"M16-GAP-02441":{"line":2440,"offset":422101,"length":174,"previous":"M16-GAP-02440","next":"M16-GAP-02442"},"M16-GAP-02442":{"line":2441,"offset":422275,"length":183,"previous":"M16-GAP-02441","next":"M16-GAP-02443"},"M16-GAP-02443":{"line":2442,"offset":422458,"length":169,"previous":"M16-GAP-02442","next":"M16-GAP-02444"},"M16-GAP-02444":{"line":2443,"offset":422627,"length":171,"previous":"M16-GAP-02443","next":"M16-GAP-02445"},"M16-GAP-02445":{"line":2444,"offset":422798,"length":164,"previous":"M16-GAP-02444","next":"M16-GAP-02446"},"M16-GAP-02446":{"line":2445,"offset":422962,"length":167,"previous":"M16-GAP-02445","next":"M16-GAP-02447"},"M16-GAP-02447":{"line":2446,"offset":423129,"length":170,"previous":"M16-GAP-02446","next":"M16-GAP-02448"},"M16-GAP-02448":{"line":2447,"offset":423299,"length":164,"previous":"M16-GAP-02447","next":"M16-GAP-02449"},"M16-GAP-02449":{"line":2448,"offset":423463,"length":168,"previous":"M16-GAP-02448","next":"M16-GAP-02450"},"M16-GAP-02450":{"line":2449,"offset":423631,"length":171,"previous":"M16-GAP-02449","next":"M16-GAP-02451"},"M16-GAP-02451":{"line":2450,"offset":423802,"length":170,"previous":"M16-GAP-02450","next":"M16-GAP-02452"},"M16-GAP-02452":{"line":2451,"offset":423972,"length":169,"previous":"M16-GAP-02451","next":"M16-GAP-02453"},"M16-GAP-02453":{"line":2452,"offset":424141,"length":168,"previous":"M16-GAP-02452","next":"M16-GAP-02454"},"M16-GAP-02454":{"line":2453,"offset":424309,"length":179,"previous":"M16-GAP-02453","next":"M16-GAP-02455"},"M16-GAP-02455":{"line":2454,"offset":424488,"length":179,"previous":"M16-GAP-02454","next":"M16-GAP-02456"},"M16-GAP-02456":{"line":2455,"offset":424667,"length":177,"previous":"M16-GAP-02455","next":"M16-GAP-02457"},"M16-GAP-02457":{"line":2456,"offset":424844,"length":181,"previous":"M16-GAP-02456","next":"M16-GAP-02458"},"M16-GAP-02458":{"line":2457,"offset":425025,"length":181,"previous":"M16-GAP-02457","next":"M16-GAP-02459"},"M16-GAP-02459":{"line":2458,"offset":425206,"length":181,"previous":"M16-GAP-02458","next":"M16-GAP-02460"},"M16-GAP-02460":{"line":2459,"offset":425387,"length":179,"previous":"M16-GAP-02459","next":"M16-GAP-02461"},"M16-GAP-02461":{"line":2460,"offset":425566,"length":176,"previous":"M16-GAP-02460","next":"M16-GAP-02462"},"M16-GAP-02462":{"line":2461,"offset":425742,"length":172,"previous":"M16-GAP-02461","next":"M16-GAP-02463"},"M16-GAP-02463":{"line":2462,"offset":425914,"length":169,"previous":"M16-GAP-02462","next":"M16-GAP-02464"},"M16-GAP-02464":{"line":2463,"offset":426083,"length":177,"previous":"M16-GAP-02463","next":"M16-GAP-02465"},"M16-GAP-02465":{"line":2464,"offset":426260,"length":166,"previous":"M16-GAP-02464","next":"M16-GAP-02466"},"M16-GAP-02466":{"line":2465,"offset":426426,"length":167,"previous":"M16-GAP-02465","next":"M16-GAP-02467"},"M16-GAP-02467":{"line":2466,"offset":426593,"length":169,"previous":"M16-GAP-02466","next":"M16-GAP-02468"},"M16-GAP-02468":{"line":2467,"offset":426762,"length":176,"previous":"M16-GAP-02467","next":"M16-GAP-02469"},"M16-GAP-02469":{"line":2468,"offset":426938,"length":176,"previous":"M16-GAP-02468","next":"M16-GAP-02470"},"M16-GAP-02470":{"line":2469,"offset":427114,"length":174,"previous":"M16-GAP-02469","next":"M16-GAP-02471"},"M16-GAP-02471":{"line":2470,"offset":427288,"length":174,"previous":"M16-GAP-02470","next":"M16-GAP-02472"},"M16-GAP-02472":{"line":2471,"offset":427462,"length":173,"previous":"M16-GAP-02471","next":"M16-GAP-02473"},"M16-GAP-02473":{"line":2472,"offset":427635,"length":177,"previous":"M16-GAP-02472","next":"M16-GAP-02474"},"M16-GAP-02474":{"line":2473,"offset":427812,"length":168,"previous":"M16-GAP-02473","next":"M16-GAP-02475"},"M16-GAP-02475":{"line":2474,"offset":427980,"length":166,"previous":"M16-GAP-02474","next":"M16-GAP-02476"},"M16-GAP-02476":{"line":2475,"offset":428146,"length":173,"previous":"M16-GAP-02475","next":"M16-GAP-02477"},"M16-GAP-02477":{"line":2476,"offset":428319,"length":167,"previous":"M16-GAP-02476","next":"M16-GAP-02478"},"M16-GAP-02478":{"line":2477,"offset":428486,"length":171,"previous":"M16-GAP-02477","next":"M16-GAP-02479"},"M16-GAP-02479":{"line":2478,"offset":428657,"length":162,"previous":"M16-GAP-02478","next":"M16-GAP-02480"},"M16-GAP-02480":{"line":2479,"offset":428819,"length":162,"previous":"M16-GAP-02479","next":"M16-GAP-02481"},"M16-GAP-02481":{"line":2480,"offset":428981,"length":169,"previous":"M16-GAP-02480","next":"M16-GAP-02482"},"M16-GAP-02482":{"line":2481,"offset":429150,"length":176,"previous":"M16-GAP-02481","next":"M16-GAP-02483"},"M16-GAP-02483":{"line":2482,"offset":429326,"length":160,"previous":"M16-GAP-02482","next":"M16-GAP-02484"},"M16-GAP-02484":{"line":2483,"offset":429486,"length":166,"previous":"M16-GAP-02483","next":"M16-GAP-02485"},"M16-GAP-02485":{"line":2484,"offset":429652,"length":181,"previous":"M16-GAP-02484","next":"M16-GAP-02486"},"M16-GAP-02486":{"line":2485,"offset":429833,"length":178,"previous":"M16-GAP-02485","next":"M16-GAP-02487"},"M16-GAP-02487":{"line":2486,"offset":430011,"length":163,"previous":"M16-GAP-02486","next":"M16-GAP-02488"},"M16-GAP-02488":{"line":2487,"offset":430174,"length":167,"previous":"M16-GAP-02487","next":"M16-GAP-02489"},"M16-GAP-02489":{"line":2488,"offset":430341,"length":164,"previous":"M16-GAP-02488","next":"M16-GAP-02490"},"M16-GAP-02490":{"line":2489,"offset":430505,"length":172,"previous":"M16-GAP-02489","next":"M16-GAP-02491"},"M16-GAP-02491":{"line":2490,"offset":430677,"length":175,"previous":"M16-GAP-02490","next":"M16-GAP-02492"},"M16-GAP-02492":{"line":2491,"offset":430852,"length":184,"previous":"M16-GAP-02491","next":"M16-GAP-02493"},"M16-GAP-02493":{"line":2492,"offset":431036,"length":173,"previous":"M16-GAP-02492","next":"M16-GAP-02494"},"M16-GAP-02494":{"line":2493,"offset":431209,"length":172,"previous":"M16-GAP-02493","next":"M16-GAP-02495"},"M16-GAP-02495":{"line":2494,"offset":431381,"length":171,"previous":"M16-GAP-02494","next":"M16-GAP-02496"},"M16-GAP-02496":{"line":2495,"offset":431552,"length":171,"previous":"M16-GAP-02495","next":"M16-GAP-02497"},"M16-GAP-02497":{"line":2496,"offset":431723,"length":173,"previous":"M16-GAP-02496","next":"M16-GAP-02498"},"M16-GAP-02498":{"line":2497,"offset":431896,"length":170,"previous":"M16-GAP-02497","next":"M16-GAP-02499"},"M16-GAP-02499":{"line":2498,"offset":432066,"length":173,"previous":"M16-GAP-02498","next":"M16-GAP-02500"},"M16-GAP-02500":{"line":2499,"offset":432239,"length":171,"previous":"M16-GAP-02499","next":"M16-GAP-02501"},"M16-GAP-02501":{"line":2500,"offset":432410,"length":173,"previous":"M16-GAP-02500","next":"M16-GAP-02502"},"M16-GAP-02502":{"line":2501,"offset":432583,"length":170,"previous":"M16-GAP-02501","next":"M16-GAP-02503"},"M16-GAP-02503":{"line":2502,"offset":432753,"length":171,"previous":"M16-GAP-02502","next":"M16-GAP-02504"},"M16-GAP-02504":{"line":2503,"offset":432924,"length":168,"previous":"M16-GAP-02503","next":"M16-GAP-02505"},"M16-GAP-02505":{"line":2504,"offset":433092,"length":169,"previous":"M16-GAP-02504","next":"M16-GAP-02506"},"M16-GAP-02506":{"line":2505,"offset":433261,"length":172,"previous":"M16-GAP-02505","next":"M16-GAP-02507"},"M16-GAP-02507":{"line":2506,"offset":433433,"length":171,"previous":"M16-GAP-02506","next":"M16-GAP-02508"},"M16-GAP-02508":{"line":2507,"offset":433604,"length":168,"previous":"M16-GAP-02507","next":"M16-GAP-02509"},"M16-GAP-02509":{"line":2508,"offset":433772,"length":173,"previous":"M16-GAP-02508","next":"M16-GAP-02510"},"M16-GAP-02510":{"line":2509,"offset":433945,"length":164,"previous":"M16-GAP-02509","next":"M16-GAP-02511"},"M16-GAP-02511":{"line":2510,"offset":434109,"length":162,"previous":"M16-GAP-02510","next":"M16-GAP-02512"},"M16-GAP-02512":{"line":2511,"offset":434271,"length":169,"previous":"M16-GAP-02511","next":"M16-GAP-02513"},"M16-GAP-02513":{"line":2512,"offset":434440,"length":180,"previous":"M16-GAP-02512","next":"M16-GAP-02514"},"M16-GAP-02514":{"line":2513,"offset":434620,"length":169,"previous":"M16-GAP-02513","next":"M16-GAP-02515"},"M16-GAP-02515":{"line":2514,"offset":434789,"length":170,"previous":"M16-GAP-02514","next":"M16-GAP-02516"},"M16-GAP-02516":{"line":2515,"offset":434959,"length":164,"previous":"M16-GAP-02515","next":"M16-GAP-02517"},"M16-GAP-02517":{"line":2516,"offset":435123,"length":178,"previous":"M16-GAP-02516","next":"M16-GAP-02518"},"M16-GAP-02518":{"line":2517,"offset":435301,"length":178,"previous":"M16-GAP-02517","next":"M16-GAP-02519"},"M16-GAP-02519":{"line":2518,"offset":435479,"length":172,"previous":"M16-GAP-02518","next":"M16-GAP-02520"},"M16-GAP-02520":{"line":2519,"offset":435651,"length":180,"previous":"M16-GAP-02519","next":"M16-GAP-02521"},"M16-GAP-02521":{"line":2520,"offset":435831,"length":183,"previous":"M16-GAP-02520","next":"M16-GAP-02522"},"M16-GAP-02522":{"line":2521,"offset":436014,"length":181,"previous":"M16-GAP-02521","next":"M16-GAP-02523"},"M16-GAP-02523":{"line":2522,"offset":436195,"length":174,"previous":"M16-GAP-02522","next":"M16-GAP-02524"},"M16-GAP-02524":{"line":2523,"offset":436369,"length":177,"previous":"M16-GAP-02523","next":"M16-GAP-02525"},"M16-GAP-02525":{"line":2524,"offset":436546,"length":164,"previous":"M16-GAP-02524","next":"M16-GAP-02526"},"M16-GAP-02526":{"line":2525,"offset":436710,"length":166,"previous":"M16-GAP-02525","next":"M16-GAP-02527"},"M16-GAP-02527":{"line":2526,"offset":436876,"length":158,"previous":"M16-GAP-02526","next":"M16-GAP-02528"},"M16-GAP-02528":{"line":2527,"offset":437034,"length":171,"previous":"M16-GAP-02527","next":"M16-GAP-02529"},"M16-GAP-02529":{"line":2528,"offset":437205,"length":164,"previous":"M16-GAP-02528","next":"M16-GAP-02530"},"M16-GAP-02530":{"line":2529,"offset":437369,"length":164,"previous":"M16-GAP-02529","next":"M16-GAP-02531"},"M16-GAP-02531":{"line":2530,"offset":437533,"length":167,"previous":"M16-GAP-02530","next":"M16-GAP-02532"},"M16-GAP-02532":{"line":2531,"offset":437700,"length":174,"previous":"M16-GAP-02531","next":"M16-GAP-02533"},"M16-GAP-02533":{"line":2532,"offset":437874,"length":171,"previous":"M16-GAP-02532","next":"M16-GAP-02534"},"M16-GAP-02534":{"line":2533,"offset":438045,"length":171,"previous":"M16-GAP-02533","next":"M16-GAP-02535"},"M16-GAP-02535":{"line":2534,"offset":438216,"length":173,"previous":"M16-GAP-02534","next":"M16-GAP-02536"},"M16-GAP-02536":{"line":2535,"offset":438389,"length":178,"previous":"M16-GAP-02535","next":"M16-GAP-02537"},"M16-GAP-02537":{"line":2536,"offset":438567,"length":167,"previous":"M16-GAP-02536","next":"M16-GAP-02538"},"M16-GAP-02538":{"line":2537,"offset":438734,"length":166,"previous":"M16-GAP-02537","next":"M16-GAP-02539"},"M16-GAP-02539":{"line":2538,"offset":438900,"length":163,"previous":"M16-GAP-02538","next":"M16-GAP-02540"},"M16-GAP-02540":{"line":2539,"offset":439063,"length":164,"previous":"M16-GAP-02539","next":"M16-GAP-02541"},"M16-GAP-02541":{"line":2540,"offset":439227,"length":164,"previous":"M16-GAP-02540","next":"M16-GAP-02542"},"M16-GAP-02542":{"line":2541,"offset":439391,"length":174,"previous":"M16-GAP-02541","next":"M16-GAP-02543"},"M16-GAP-02543":{"line":2542,"offset":439565,"length":177,"previous":"M16-GAP-02542","next":"M16-GAP-02544"},"M16-GAP-02544":{"line":2543,"offset":439742,"length":168,"previous":"M16-GAP-02543","next":"M16-GAP-02545"},"M16-GAP-02545":{"line":2544,"offset":439910,"length":169,"previous":"M16-GAP-02544","next":"M16-GAP-02546"},"M16-GAP-02546":{"line":2545,"offset":440079,"length":168,"previous":"M16-GAP-02545","next":"M16-GAP-02547"},"M16-GAP-02547":{"line":2546,"offset":440247,"length":179,"previous":"M16-GAP-02546","next":"M16-GAP-02548"},"M16-GAP-02548":{"line":2547,"offset":440426,"length":169,"previous":"M16-GAP-02547","next":"M16-GAP-02549"},"M16-GAP-02549":{"line":2548,"offset":440595,"length":175,"previous":"M16-GAP-02548","next":"M16-GAP-02550"},"M16-GAP-02550":{"line":2549,"offset":440770,"length":171,"previous":"M16-GAP-02549","next":"M16-GAP-02551"},"M16-GAP-02551":{"line":2550,"offset":440941,"length":166,"previous":"M16-GAP-02550","next":"M16-GAP-02552"},"M16-GAP-02552":{"line":2551,"offset":441107,"length":168,"previous":"M16-GAP-02551","next":"M16-GAP-02553"},"M16-GAP-02553":{"line":2552,"offset":441275,"length":175,"previous":"M16-GAP-02552","next":"M16-GAP-02554"},"M16-GAP-02554":{"line":2553,"offset":441450,"length":175,"previous":"M16-GAP-02553","next":"M16-GAP-02555"},"M16-GAP-02555":{"line":2554,"offset":441625,"length":166,"previous":"M16-GAP-02554","next":"M16-GAP-02556"},"M16-GAP-02556":{"line":2555,"offset":441791,"length":167,"previous":"M16-GAP-02555","next":"M16-GAP-02557"},"M16-GAP-02557":{"line":2556,"offset":441958,"length":167,"previous":"M16-GAP-02556","next":"M16-GAP-02558"},"M16-GAP-02558":{"line":2557,"offset":442125,"length":171,"previous":"M16-GAP-02557","next":"M16-GAP-02559"},"M16-GAP-02559":{"line":2558,"offset":442296,"length":174,"previous":"M16-GAP-02558","next":"M16-GAP-02560"},"M16-GAP-02560":{"line":2559,"offset":442470,"length":166,"previous":"M16-GAP-02559","next":"M16-GAP-02561"},"M16-GAP-02561":{"line":2560,"offset":442636,"length":169,"previous":"M16-GAP-02560","next":"M16-GAP-02562"},"M16-GAP-02562":{"line":2561,"offset":442805,"length":170,"previous":"M16-GAP-02561","next":"M16-GAP-02563"},"M16-GAP-02563":{"line":2562,"offset":442975,"length":168,"previous":"M16-GAP-02562","next":"M16-GAP-02564"},"M16-GAP-02564":{"line":2563,"offset":443143,"length":167,"previous":"M16-GAP-02563","next":"M16-GAP-02565"},"M16-GAP-02565":{"line":2564,"offset":443310,"length":167,"previous":"M16-GAP-02564","next":"M16-GAP-02566"},"M16-GAP-02566":{"line":2565,"offset":443477,"length":167,"previous":"M16-GAP-02565","next":"M16-GAP-02567"},"M16-GAP-02567":{"line":2566,"offset":443644,"length":165,"previous":"M16-GAP-02566","next":"M16-GAP-02568"},"M16-GAP-02568":{"line":2567,"offset":443809,"length":169,"previous":"M16-GAP-02567","next":"M16-GAP-02569"},"M16-GAP-02569":{"line":2568,"offset":443978,"length":172,"previous":"M16-GAP-02568","next":"M16-GAP-02570"},"M16-GAP-02570":{"line":2569,"offset":444150,"length":167,"previous":"M16-GAP-02569","next":"M16-GAP-02571"},"M16-GAP-02571":{"line":2570,"offset":444317,"length":177,"previous":"M16-GAP-02570","next":"M16-GAP-02572"},"M16-GAP-02572":{"line":2571,"offset":444494,"length":160,"previous":"M16-GAP-02571","next":"M16-GAP-02573"},"M16-GAP-02573":{"line":2572,"offset":444654,"length":166,"previous":"M16-GAP-02572","next":"M16-GAP-02574"},"M16-GAP-02574":{"line":2573,"offset":444820,"length":164,"previous":"M16-GAP-02573","next":"M16-GAP-02575"},"M16-GAP-02575":{"line":2574,"offset":444984,"length":164,"previous":"M16-GAP-02574","next":"M16-GAP-02576"},"M16-GAP-02576":{"line":2575,"offset":445148,"length":161,"previous":"M16-GAP-02575","next":"M16-GAP-02577"},"M16-GAP-02577":{"line":2576,"offset":445309,"length":176,"previous":"M16-GAP-02576","next":"M16-GAP-02578"},"M16-GAP-02578":{"line":2577,"offset":445485,"length":168,"previous":"M16-GAP-02577","next":"M16-GAP-02579"},"M16-GAP-02579":{"line":2578,"offset":445653,"length":171,"previous":"M16-GAP-02578","next":"M16-GAP-02580"},"M16-GAP-02580":{"line":2579,"offset":445824,"length":161,"previous":"M16-GAP-02579","next":"M16-GAP-02581"},"M16-GAP-02581":{"line":2580,"offset":445985,"length":174,"previous":"M16-GAP-02580","next":"M16-GAP-02582"},"M16-GAP-02582":{"line":2581,"offset":446159,"length":168,"previous":"M16-GAP-02581","next":"M16-GAP-02583"},"M16-GAP-02583":{"line":2582,"offset":446327,"length":162,"previous":"M16-GAP-02582","next":"M16-GAP-02584"},"M16-GAP-02584":{"line":2583,"offset":446489,"length":169,"previous":"M16-GAP-02583","next":"M16-GAP-02585"},"M16-GAP-02585":{"line":2584,"offset":446658,"length":166,"previous":"M16-GAP-02584","next":"M16-GAP-02586"},"M16-GAP-02586":{"line":2585,"offset":446824,"length":178,"previous":"M16-GAP-02585","next":"M16-GAP-02587"},"M16-GAP-02587":{"line":2586,"offset":447002,"length":164,"previous":"M16-GAP-02586","next":"M16-GAP-02588"},"M16-GAP-02588":{"line":2587,"offset":447166,"length":169,"previous":"M16-GAP-02587","next":"M16-GAP-02589"},"M16-GAP-02589":{"line":2588,"offset":447335,"length":164,"previous":"M16-GAP-02588","next":"M16-GAP-02590"},"M16-GAP-02590":{"line":2589,"offset":447499,"length":176,"previous":"M16-GAP-02589","next":"M16-GAP-02591"},"M16-GAP-02591":{"line":2590,"offset":447675,"length":167,"previous":"M16-GAP-02590","next":"M16-GAP-02592"},"M16-GAP-02592":{"line":2591,"offset":447842,"length":178,"previous":"M16-GAP-02591","next":"M16-GAP-02593"},"M16-GAP-02593":{"line":2592,"offset":448020,"length":170,"previous":"M16-GAP-02592","next":"M16-GAP-02594"},"M16-GAP-02594":{"line":2593,"offset":448190,"length":176,"previous":"M16-GAP-02593","next":"M16-GAP-02595"},"M16-GAP-02595":{"line":2594,"offset":448366,"length":177,"previous":"M16-GAP-02594","next":"M16-GAP-02596"},"M16-GAP-02596":{"line":2595,"offset":448543,"length":177,"previous":"M16-GAP-02595","next":"M16-GAP-02597"},"M16-GAP-02597":{"line":2596,"offset":448720,"length":179,"previous":"M16-GAP-02596","next":"M16-GAP-02598"},"M16-GAP-02598":{"line":2597,"offset":448899,"length":160,"previous":"M16-GAP-02597","next":"M16-GAP-02599"},"M16-GAP-02599":{"line":2598,"offset":449059,"length":156,"previous":"M16-GAP-02598","next":"M16-GAP-02600"},"M16-GAP-02600":{"line":2599,"offset":449215,"length":163,"previous":"M16-GAP-02599","next":"M16-GAP-02601"},"M16-GAP-02601":{"line":2600,"offset":449378,"length":167,"previous":"M16-GAP-02600","next":"M16-GAP-02602"},"M16-GAP-02602":{"line":2601,"offset":449545,"length":165,"previous":"M16-GAP-02601","next":"M16-GAP-02603"},"M16-GAP-02603":{"line":2602,"offset":449710,"length":163,"previous":"M16-GAP-02602","next":"M16-GAP-02604"},"M16-GAP-02604":{"line":2603,"offset":449873,"length":166,"previous":"M16-GAP-02603","next":"M16-GAP-02605"},"M16-GAP-02605":{"line":2604,"offset":450039,"length":163,"previous":"M16-GAP-02604","next":"M16-GAP-02606"},"M16-GAP-02606":{"line":2605,"offset":450202,"length":167,"previous":"M16-GAP-02605","next":"M16-GAP-02607"},"M16-GAP-02607":{"line":2606,"offset":450369,"length":162,"previous":"M16-GAP-02606","next":"M16-GAP-02608"},"M16-GAP-02608":{"line":2607,"offset":450531,"length":161,"previous":"M16-GAP-02607","next":"M16-GAP-02609"},"M16-GAP-02609":{"line":2608,"offset":450692,"length":171,"previous":"M16-GAP-02608","next":"M16-GAP-02610"},"M16-GAP-02610":{"line":2609,"offset":450863,"length":166,"previous":"M16-GAP-02609","next":"M16-GAP-02611"},"M16-GAP-02611":{"line":2610,"offset":451029,"length":162,"previous":"M16-GAP-02610","next":"M16-GAP-02612"},"M16-GAP-02612":{"line":2611,"offset":451191,"length":164,"previous":"M16-GAP-02611","next":"M16-GAP-02613"},"M16-GAP-02613":{"line":2612,"offset":451355,"length":165,"previous":"M16-GAP-02612","next":"M16-GAP-02614"},"M16-GAP-02614":{"line":2613,"offset":451520,"length":162,"previous":"M16-GAP-02613","next":"M16-GAP-02615"},"M16-GAP-02615":{"line":2614,"offset":451682,"length":166,"previous":"M16-GAP-02614","next":"M16-GAP-02616"},"M16-GAP-02616":{"line":2615,"offset":451848,"length":161,"previous":"M16-GAP-02615","next":"M16-GAP-02617"},"M16-GAP-02617":{"line":2616,"offset":452009,"length":165,"previous":"M16-GAP-02616","next":"M16-GAP-02618"},"M16-GAP-02618":{"line":2617,"offset":452174,"length":162,"previous":"M16-GAP-02617","next":"M16-GAP-02619"},"M16-GAP-02619":{"line":2618,"offset":452336,"length":165,"previous":"M16-GAP-02618","next":"M16-GAP-02620"},"M16-GAP-02620":{"line":2619,"offset":452501,"length":166,"previous":"M16-GAP-02619","next":"M16-GAP-02621"},"M16-GAP-02621":{"line":2620,"offset":452667,"length":165,"previous":"M16-GAP-02620","next":"M16-GAP-02622"},"M16-GAP-02622":{"line":2621,"offset":452832,"length":163,"previous":"M16-GAP-02621","next":"M16-GAP-02623"},"M16-GAP-02623":{"line":2622,"offset":452995,"length":167,"previous":"M16-GAP-02622","next":"M16-GAP-02624"},"M16-GAP-02624":{"line":2623,"offset":453162,"length":164,"previous":"M16-GAP-02623","next":"M16-GAP-02625"},"M16-GAP-02625":{"line":2624,"offset":453326,"length":165,"previous":"M16-GAP-02624","next":"M16-GAP-02626"},"M16-GAP-02626":{"line":2625,"offset":453491,"length":167,"previous":"M16-GAP-02625","next":"M16-GAP-02627"},"M16-GAP-02627":{"line":2626,"offset":453658,"length":162,"previous":"M16-GAP-02626","next":"M16-GAP-02628"},"M16-GAP-02628":{"line":2627,"offset":453820,"length":162,"previous":"M16-GAP-02627","next":"M16-GAP-02629"},"M16-GAP-02629":{"line":2628,"offset":453982,"length":163,"previous":"M16-GAP-02628","next":"M16-GAP-02630"},"M16-GAP-02630":{"line":2629,"offset":454145,"length":162,"previous":"M16-GAP-02629","next":"M16-GAP-02631"},"M16-GAP-02631":{"line":2630,"offset":454307,"length":164,"previous":"M16-GAP-02630","next":"M16-GAP-02632"},"M16-GAP-02632":{"line":2631,"offset":454471,"length":161,"previous":"M16-GAP-02631","next":"M16-GAP-02633"},"M16-GAP-02633":{"line":2632,"offset":454632,"length":164,"previous":"M16-GAP-02632","next":"M16-GAP-02634"},"M16-GAP-02634":{"line":2633,"offset":454796,"length":163,"previous":"M16-GAP-02633","next":"M16-GAP-02635"},"M16-GAP-02635":{"line":2634,"offset":454959,"length":170,"previous":"M16-GAP-02634","next":"M16-GAP-02636"},"M16-GAP-02636":{"line":2635,"offset":455129,"length":166,"previous":"M16-GAP-02635","next":"M16-GAP-02637"},"M16-GAP-02637":{"line":2636,"offset":455295,"length":162,"previous":"M16-GAP-02636","next":"M16-GAP-02638"},"M16-GAP-02638":{"line":2637,"offset":455457,"length":156,"previous":"M16-GAP-02637","next":"M16-GAP-02639"},"M16-GAP-02639":{"line":2638,"offset":455613,"length":165,"previous":"M16-GAP-02638","next":"M16-GAP-02640"},"M16-GAP-02640":{"line":2639,"offset":455778,"length":160,"previous":"M16-GAP-02639","next":"M16-GAP-02641"},"M16-GAP-02641":{"line":2640,"offset":455938,"length":165,"previous":"M16-GAP-02640","next":"M16-GAP-02642"},"M16-GAP-02642":{"line":2641,"offset":456103,"length":161,"previous":"M16-GAP-02641","next":"M16-GAP-02643"},"M16-GAP-02643":{"line":2642,"offset":456264,"length":159,"previous":"M16-GAP-02642","next":"M16-GAP-02644"},"M16-GAP-02644":{"line":2643,"offset":456423,"length":151,"previous":"M16-GAP-02643","next":"M16-GAP-02645"},"M16-GAP-02645":{"line":2644,"offset":456574,"length":170,"previous":"M16-GAP-02644","next":"M16-GAP-02646"},"M16-GAP-02646":{"line":2645,"offset":456744,"length":164,"previous":"M16-GAP-02645","next":"M16-GAP-02647"},"M16-GAP-02647":{"line":2646,"offset":456908,"length":165,"previous":"M16-GAP-02646","next":"M16-GAP-02648"},"M16-GAP-02648":{"line":2647,"offset":457073,"length":155,"previous":"M16-GAP-02647","next":"M16-GAP-02649"},"M16-GAP-02649":{"line":2648,"offset":457228,"length":156,"previous":"M16-GAP-02648","next":"M16-GAP-02650"},"M16-GAP-02650":{"line":2649,"offset":457384,"length":155,"previous":"M16-GAP-02649","next":"M16-GAP-02651"},"M16-GAP-02651":{"line":2650,"offset":457539,"length":160,"previous":"M16-GAP-02650","next":"M16-GAP-02652"},"M16-GAP-02652":{"line":2651,"offset":457699,"length":165,"previous":"M16-GAP-02651","next":"M16-GAP-02653"},"M16-GAP-02653":{"line":2652,"offset":457864,"length":163,"previous":"M16-GAP-02652","next":"M16-GAP-02654"},"M16-GAP-02654":{"line":2653,"offset":458027,"length":164,"previous":"M16-GAP-02653","next":"M16-GAP-02655"},"M16-GAP-02655":{"line":2654,"offset":458191,"length":156,"previous":"M16-GAP-02654","next":"M16-GAP-02656"},"M16-GAP-02656":{"line":2655,"offset":458347,"length":162,"previous":"M16-GAP-02655","next":"M16-GAP-02657"},"M16-GAP-02657":{"line":2656,"offset":458509,"length":158,"previous":"M16-GAP-02656","next":"M16-GAP-02658"},"M16-GAP-02658":{"line":2657,"offset":458667,"length":159,"previous":"M16-GAP-02657","next":"M16-GAP-02659"},"M16-GAP-02659":{"line":2658,"offset":458826,"length":172,"previous":"M16-GAP-02658","next":"M16-GAP-02660"},"M16-GAP-02660":{"line":2659,"offset":458998,"length":161,"previous":"M16-GAP-02659","next":"M16-GAP-02661"},"M16-GAP-02661":{"line":2660,"offset":459159,"length":166,"previous":"M16-GAP-02660","next":"M16-GAP-02662"},"M16-GAP-02662":{"line":2661,"offset":459325,"length":158,"previous":"M16-GAP-02661","next":"M16-GAP-02663"},"M16-GAP-02663":{"line":2662,"offset":459483,"length":167,"previous":"M16-GAP-02662","next":"M16-GAP-02664"},"M16-GAP-02664":{"line":2663,"offset":459650,"length":157,"previous":"M16-GAP-02663","next":"M16-GAP-02665"},"M16-GAP-02665":{"line":2664,"offset":459807,"length":162,"previous":"M16-GAP-02664","next":"M16-GAP-02666"},"M16-GAP-02666":{"line":2665,"offset":459969,"length":157,"previous":"M16-GAP-02665","next":"M16-GAP-02667"},"M16-GAP-02667":{"line":2666,"offset":460126,"length":159,"previous":"M16-GAP-02666","next":"M17-GAP-00001"},"M17-GAP-00001":{"line":2667,"offset":460285,"length":161,"previous":"M16-GAP-02667","next":"M17-GAP-00002"},"M17-GAP-00002":{"line":2668,"offset":460446,"length":163,"previous":"M17-GAP-00001","next":"M17-GAP-00003"},"M17-GAP-00003":{"line":2669,"offset":460609,"length":168,"previous":"M17-GAP-00002","next":"M17-GAP-00004"},"M17-GAP-00004":{"line":2670,"offset":460777,"length":163,"previous":"M17-GAP-00003","next":"M17-GAP-00005"},"M17-GAP-00005":{"line":2671,"offset":460940,"length":163,"previous":"M17-GAP-00004","next":"M17-GAP-00006"},"M17-GAP-00006":{"line":2672,"offset":461103,"length":168,"previous":"M17-GAP-00005","next":"M17-GAP-00007"},"M17-GAP-00007":{"line":2673,"offset":461271,"length":168,"previous":"M17-GAP-00006","next":"M17-GAP-00008"},"M17-GAP-00008":{"line":2674,"offset":461439,"length":165,"previous":"M17-GAP-00007","next":"M17-GAP-00009"},"M17-GAP-00009":{"line":2675,"offset":461604,"length":170,"previous":"M17-GAP-00008","next":"M17-GAP-00010"},"M17-GAP-00010":{"line":2676,"offset":461774,"length":167,"previous":"M17-GAP-00009","next":"M17-GAP-00011"},"M17-GAP-00011":{"line":2677,"offset":461941,"length":160,"previous":"M17-GAP-00010","next":"M17-GAP-00012"},"M17-GAP-00012":{"line":2678,"offset":462101,"length":166,"previous":"M17-GAP-00011","next":"M17-GAP-00013"},"M17-GAP-00013":{"line":2679,"offset":462267,"length":167,"previous":"M17-GAP-00012","next":"M17-GAP-00014"},"M17-GAP-00014":{"line":2680,"offset":462434,"length":173,"previous":"M17-GAP-00013","next":"M17-GAP-00015"},"M17-GAP-00015":{"line":2681,"offset":462607,"length":157,"previous":"M17-GAP-00014","next":"M17-GAP-00016"},"M17-GAP-00016":{"line":2682,"offset":462764,"length":169,"previous":"M17-GAP-00015","next":"M17-GAP-00017"},"M17-GAP-00017":{"line":2683,"offset":462933,"length":169,"previous":"M17-GAP-00016","next":"M17-GAP-00018"},"M17-GAP-00018":{"line":2684,"offset":463102,"length":169,"previous":"M17-GAP-00017","next":"M17-GAP-00019"},"M17-GAP-00019":{"line":2685,"offset":463271,"length":166,"previous":"M17-GAP-00018","next":"M17-GAP-00020"},"M17-GAP-00020":{"line":2686,"offset":463437,"length":167,"previous":"M17-GAP-00019","next":"M17-GAP-00021"},"M17-GAP-00021":{"line":2687,"offset":463604,"length":170,"previous":"M17-GAP-00020","next":"M17-GAP-00022"},"M17-GAP-00022":{"line":2688,"offset":463774,"length":168,"previous":"M17-GAP-00021","next":"M17-GAP-00023"},"M17-GAP-00023":{"line":2689,"offset":463942,"length":160,"previous":"M17-GAP-00022","next":"M17-GAP-00024"},"M17-GAP-00024":{"line":2690,"offset":464102,"length":165,"previous":"M17-GAP-00023","next":"M17-GAP-00025"},"M17-GAP-00025":{"line":2691,"offset":464267,"length":164,"previous":"M17-GAP-00024","next":"M17-GAP-00026"},"M17-GAP-00026":{"line":2692,"offset":464431,"length":165,"previous":"M17-GAP-00025","next":"M17-GAP-00027"},"M17-GAP-00027":{"line":2693,"offset":464596,"length":163,"previous":"M17-GAP-00026","next":"M17-GAP-00028"},"M17-GAP-00028":{"line":2694,"offset":464759,"length":164,"previous":"M17-GAP-00027","next":"M17-GAP-00029"},"M17-GAP-00029":{"line":2695,"offset":464923,"length":170,"previous":"M17-GAP-00028","next":"M18-GAP-00001"},"M18-GAP-00001":{"line":2696,"offset":465093,"length":188,"previous":"M17-GAP-00029","next":"M18-GAP-00002"},"M18-GAP-00002":{"line":2697,"offset":465281,"length":191,"previous":"M18-GAP-00001","next":"M18-GAP-00003"},"M18-GAP-00003":{"line":2698,"offset":465472,"length":192,"previous":"M18-GAP-00002","next":"M18-GAP-00004"},"M18-GAP-00004":{"line":2699,"offset":465664,"length":189,"previous":"M18-GAP-00003","next":"M18-GAP-00005"},"M18-GAP-00005":{"line":2700,"offset":465853,"length":183,"previous":"M18-GAP-00004","next":"M18-GAP-00006"},"M18-GAP-00006":{"line":2701,"offset":466036,"length":188,"previous":"M18-GAP-00005","next":"M18-GAP-00007"},"M18-GAP-00007":{"line":2702,"offset":466224,"length":189,"previous":"M18-GAP-00006","next":"M18-GAP-00008"},"M18-GAP-00008":{"line":2703,"offset":466413,"length":186,"previous":"M18-GAP-00007","next":"M18-GAP-00009"},"M18-GAP-00009":{"line":2704,"offset":466599,"length":193,"previous":"M18-GAP-00008","next":"M18-GAP-00010"},"M18-GAP-00010":{"line":2705,"offset":466792,"length":191,"previous":"M18-GAP-00009","next":"M18-GAP-00011"},"M18-GAP-00011":{"line":2706,"offset":466983,"length":190,"previous":"M18-GAP-00010","next":"M18-GAP-00012"},"M18-GAP-00012":{"line":2707,"offset":467173,"length":191,"previous":"M18-GAP-00011","next":"M18-GAP-00013"},"M18-GAP-00013":{"line":2708,"offset":467364,"length":194,"previous":"M18-GAP-00012","next":"M18-GAP-00014"},"M18-GAP-00014":{"line":2709,"offset":467558,"length":189,"previous":"M18-GAP-00013","next":"M18-GAP-00015"},"M18-GAP-00015":{"line":2710,"offset":467747,"length":189,"previous":"M18-GAP-00014","next":"M18-GAP-00016"},"M18-GAP-00016":{"line":2711,"offset":467936,"length":191,"previous":"M18-GAP-00015","next":"M18-GAP-00017"},"M18-GAP-00017":{"line":2712,"offset":468127,"length":196,"previous":"M18-GAP-00016","next":"M18-GAP-00018"},"M18-GAP-00018":{"line":2713,"offset":468323,"length":195,"previous":"M18-GAP-00017","next":"M18-GAP-00019"},"M18-GAP-00019":{"line":2714,"offset":468518,"length":187,"previous":"M18-GAP-00018","next":"M18-GAP-00020"},"M18-GAP-00020":{"line":2715,"offset":468705,"length":188,"previous":"M18-GAP-00019","next":"M18-GAP-00021"},"M18-GAP-00021":{"line":2716,"offset":468893,"length":183,"previous":"M18-GAP-00020","next":"M18-GAP-00022"},"M18-GAP-00022":{"line":2717,"offset":469076,"length":190,"previous":"M18-GAP-00021","next":"M18-GAP-00023"},"M18-GAP-00023":{"line":2718,"offset":469266,"length":192,"previous":"M18-GAP-00022","next":"M18-GAP-00024"},"M18-GAP-00024":{"line":2719,"offset":469458,"length":187,"previous":"M18-GAP-00023","next":"M18-GAP-00025"},"M18-GAP-00025":{"line":2720,"offset":469645,"length":184,"previous":"M18-GAP-00024","next":"M18-GAP-00026"},"M18-GAP-00026":{"line":2721,"offset":469829,"length":186,"previous":"M18-GAP-00025","next":"M18-GAP-00027"},"M18-GAP-00027":{"line":2722,"offset":470015,"length":186,"previous":"M18-GAP-00026","next":"M18-GAP-00028"},"M18-GAP-00028":{"line":2723,"offset":470201,"length":188,"previous":"M18-GAP-00027","next":"M18-GAP-00029"},"M18-GAP-00029":{"line":2724,"offset":470389,"length":188,"previous":"M18-GAP-00028","next":"M18-GAP-00030"},"M18-GAP-00030":{"line":2725,"offset":470577,"length":190,"previous":"M18-GAP-00029","next":"M18-GAP-00031"},"M18-GAP-00031":{"line":2726,"offset":470767,"length":187,"previous":"M18-GAP-00030","next":"M18-GAP-00032"},"M18-GAP-00032":{"line":2727,"offset":470954,"length":192,"previous":"M18-GAP-00031","next":"M18-GAP-00033"},"M18-GAP-00033":{"line":2728,"offset":471146,"length":193,"previous":"M18-GAP-00032","next":"M18-GAP-00034"},"M18-GAP-00034":{"line":2729,"offset":471339,"length":190,"previous":"M18-GAP-00033","next":"M18-GAP-00035"},"M18-GAP-00035":{"line":2730,"offset":471529,"length":187,"previous":"M18-GAP-00034","next":"M18-GAP-00036"},"M18-GAP-00036":{"line":2731,"offset":471716,"length":185,"previous":"M18-GAP-00035","next":"M18-GAP-00037"},"M18-GAP-00037":{"line":2732,"offset":471901,"length":183,"previous":"M18-GAP-00036","next":"M18-GAP-00038"},"M18-GAP-00038":{"line":2733,"offset":472084,"length":184,"previous":"M18-GAP-00037","next":"M18-GAP-00039"},"M18-GAP-00039":{"line":2734,"offset":472268,"length":184,"previous":"M18-GAP-00038","next":"M18-GAP-00040"},"M18-GAP-00040":{"line":2735,"offset":472452,"length":189,"previous":"M18-GAP-00039","next":"M18-GAP-00041"},"M18-GAP-00041":{"line":2736,"offset":472641,"length":185,"previous":"M18-GAP-00040","next":"M18-GAP-00042"},"M18-GAP-00042":{"line":2737,"offset":472826,"length":185,"previous":"M18-GAP-00041","next":"M18-GAP-00043"},"M18-GAP-00043":{"line":2738,"offset":473011,"length":184,"previous":"M18-GAP-00042","next":"M18-GAP-00044"},"M18-GAP-00044":{"line":2739,"offset":473195,"length":195,"previous":"M18-GAP-00043","next":"M18-GAP-00045"},"M18-GAP-00045":{"line":2740,"offset":473390,"length":188,"previous":"M18-GAP-00044","next":"M18-GAP-00046"},"M18-GAP-00046":{"line":2741,"offset":473578,"length":186,"previous":"M18-GAP-00045","next":"M18-GAP-00047"},"M18-GAP-00047":{"line":2742,"offset":473764,"length":185,"previous":"M18-GAP-00046","next":"M18-GAP-00048"},"M18-GAP-00048":{"line":2743,"offset":473949,"length":185,"previous":"M18-GAP-00047","next":"M18-GAP-00049"},"M18-GAP-00049":{"line":2744,"offset":474134,"length":191,"previous":"M18-GAP-00048","next":"M18-GAP-00050"},"M18-GAP-00050":{"line":2745,"offset":474325,"length":187,"previous":"M18-GAP-00049","next":"M18-GAP-00051"},"M18-GAP-00051":{"line":2746,"offset":474512,"length":187,"previous":"M18-GAP-00050","next":"M18-GAP-00052"},"M18-GAP-00052":{"line":2747,"offset":474699,"length":185,"previous":"M18-GAP-00051","next":"M18-GAP-00053"},"M18-GAP-00053":{"line":2748,"offset":474884,"length":188,"previous":"M18-GAP-00052","next":"M18-GAP-00054"},"M18-GAP-00054":{"line":2749,"offset":475072,"length":184,"previous":"M18-GAP-00053","next":"M18-GAP-00055"},"M18-GAP-00055":{"line":2750,"offset":475256,"length":183,"previous":"M18-GAP-00054","next":"M18-GAP-00056"},"M18-GAP-00056":{"line":2751,"offset":475439,"length":188,"previous":"M18-GAP-00055","next":"M18-GAP-00057"},"M18-GAP-00057":{"line":2752,"offset":475627,"length":188,"previous":"M18-GAP-00056","next":"M18-GAP-00058"},"M18-GAP-00058":{"line":2753,"offset":475815,"length":194,"previous":"M18-GAP-00057","next":"M18-GAP-00059"},"M18-GAP-00059":{"line":2754,"offset":476009,"length":185,"previous":"M18-GAP-00058","next":"M18-GAP-00060"},"M18-GAP-00060":{"line":2755,"offset":476194,"length":188,"previous":"M18-GAP-00059","next":"M18-GAP-00061"},"M18-GAP-00061":{"line":2756,"offset":476382,"length":189,"previous":"M18-GAP-00060","next":"M18-GAP-00062"},"M18-GAP-00062":{"line":2757,"offset":476571,"length":187,"previous":"M18-GAP-00061","next":"M18-GAP-00063"},"M18-GAP-00063":{"line":2758,"offset":476758,"length":195,"previous":"M18-GAP-00062","next":"M18-GAP-00064"},"M18-GAP-00064":{"line":2759,"offset":476953,"length":188,"previous":"M18-GAP-00063","next":"M18-GAP-00065"},"M18-GAP-00065":{"line":2760,"offset":477141,"length":188,"previous":"M18-GAP-00064","next":"M18-GAP-00066"},"M18-GAP-00066":{"line":2761,"offset":477329,"length":182,"previous":"M18-GAP-00065","next":"M18-GAP-00067"},"M18-GAP-00067":{"line":2762,"offset":477511,"length":186,"previous":"M18-GAP-00066","next":"M18-GAP-00068"},"M18-GAP-00068":{"line":2763,"offset":477697,"length":186,"previous":"M18-GAP-00067","next":"M18-GAP-00069"},"M18-GAP-00069":{"line":2764,"offset":477883,"length":194,"previous":"M18-GAP-00068","next":"M18-GAP-00070"},"M18-GAP-00070":{"line":2765,"offset":478077,"length":185,"previous":"M18-GAP-00069","next":"M18-GAP-00071"},"M18-GAP-00071":{"line":2766,"offset":478262,"length":184,"previous":"M18-GAP-00070","next":"M18-GAP-00072"},"M18-GAP-00072":{"line":2767,"offset":478446,"length":188,"previous":"M18-GAP-00071","next":"M18-GAP-00073"},"M18-GAP-00073":{"line":2768,"offset":478634,"length":192,"previous":"M18-GAP-00072","next":"M18-GAP-00074"},"M18-GAP-00074":{"line":2769,"offset":478826,"length":197,"previous":"M18-GAP-00073","next":"M18-GAP-00075"},"M18-GAP-00075":{"line":2770,"offset":479023,"length":187,"previous":"M18-GAP-00074","next":"M18-GAP-00076"},"M18-GAP-00076":{"line":2771,"offset":479210,"length":184,"previous":"M18-GAP-00075","next":"M18-GAP-00077"},"M18-GAP-00077":{"line":2772,"offset":479394,"length":188,"previous":"M18-GAP-00076","next":"M18-GAP-00078"},"M18-GAP-00078":{"line":2773,"offset":479582,"length":192,"previous":"M18-GAP-00077","next":"M18-GAP-00079"},"M18-GAP-00079":{"line":2774,"offset":479774,"length":185,"previous":"M18-GAP-00078","next":"M18-GAP-00080"},"M18-GAP-00080":{"line":2775,"offset":479959,"length":189,"previous":"M18-GAP-00079","next":"M18-GAP-00081"},"M18-GAP-00081":{"line":2776,"offset":480148,"length":183,"previous":"M18-GAP-00080","next":"M18-GAP-00082"},"M18-GAP-00082":{"line":2777,"offset":480331,"length":186,"previous":"M18-GAP-00081","next":"M18-GAP-00083"},"M18-GAP-00083":{"line":2778,"offset":480517,"length":187,"previous":"M18-GAP-00082","next":"M18-GAP-00084"},"M18-GAP-00084":{"line":2779,"offset":480704,"length":188,"previous":"M18-GAP-00083","next":"M18-GAP-00085"},"M18-GAP-00085":{"line":2780,"offset":480892,"length":188,"previous":"M18-GAP-00084","next":"M18-GAP-00086"},"M18-GAP-00086":{"line":2781,"offset":481080,"length":186,"previous":"M18-GAP-00085","next":"M18-GAP-00087"},"M18-GAP-00087":{"line":2782,"offset":481266,"length":185,"previous":"M18-GAP-00086","next":"M18-GAP-00088"},"M18-GAP-00088":{"line":2783,"offset":481451,"length":187,"previous":"M18-GAP-00087","next":"M18-GAP-00089"},"M18-GAP-00089":{"line":2784,"offset":481638,"length":188,"previous":"M18-GAP-00088","next":"M18-GAP-00090"},"M18-GAP-00090":{"line":2785,"offset":481826,"length":192,"previous":"M18-GAP-00089","next":"M18-GAP-00091"},"M18-GAP-00091":{"line":2786,"offset":482018,"length":191,"previous":"M18-GAP-00090","next":"M18-GAP-00092"},"M18-GAP-00092":{"line":2787,"offset":482209,"length":177,"previous":"M18-GAP-00091","next":"M18-GAP-00093"},"M18-GAP-00093":{"line":2788,"offset":482386,"length":186,"previous":"M18-GAP-00092","next":"M18-GAP-00094"},"M18-GAP-00094":{"line":2789,"offset":482572,"length":181,"previous":"M18-GAP-00093","next":"M18-GAP-00095"},"M18-GAP-00095":{"line":2790,"offset":482753,"length":181,"previous":"M18-GAP-00094","next":"M18-GAP-00096"},"M18-GAP-00096":{"line":2791,"offset":482934,"length":183,"previous":"M18-GAP-00095","next":"M18-GAP-00097"},"M18-GAP-00097":{"line":2792,"offset":483117,"length":189,"previous":"M18-GAP-00096","next":"M18-GAP-00098"},"M18-GAP-00098":{"line":2793,"offset":483306,"length":186,"previous":"M18-GAP-00097","next":"M18-GAP-00099"},"M18-GAP-00099":{"line":2794,"offset":483492,"length":191,"previous":"M18-GAP-00098","next":"M18-GAP-00100"},"M18-GAP-00100":{"line":2795,"offset":483683,"length":190,"previous":"M18-GAP-00099","next":"M18-GAP-00101"},"M18-GAP-00101":{"line":2796,"offset":483873,"length":191,"previous":"M18-GAP-00100","next":"M18-GAP-00102"},"M18-GAP-00102":{"line":2797,"offset":484064,"length":187,"previous":"M18-GAP-00101","next":"M18-GAP-00103"},"M18-GAP-00103":{"line":2798,"offset":484251,"length":183,"previous":"M18-GAP-00102","next":"M18-GAP-00104"},"M18-GAP-00104":{"line":2799,"offset":484434,"length":186,"previous":"M18-GAP-00103","next":"M18-GAP-00105"},"M18-GAP-00105":{"line":2800,"offset":484620,"length":186,"previous":"M18-GAP-00104","next":"M18-GAP-00106"},"M18-GAP-00106":{"line":2801,"offset":484806,"length":188,"previous":"M18-GAP-00105","next":"M18-GAP-00107"},"M18-GAP-00107":{"line":2802,"offset":484994,"length":189,"previous":"M18-GAP-00106","next":"M18-GAP-00108"},"M18-GAP-00108":{"line":2803,"offset":485183,"length":181,"previous":"M18-GAP-00107","next":"M18-GAP-00109"},"M18-GAP-00109":{"line":2804,"offset":485364,"length":195,"previous":"M18-GAP-00108","next":"M18-GAP-00110"},"M18-GAP-00110":{"line":2805,"offset":485559,"length":197,"previous":"M18-GAP-00109","next":"M18-GAP-00111"},"M18-GAP-00111":{"line":2806,"offset":485756,"length":184,"previous":"M18-GAP-00110","next":"M18-GAP-00112"},"M18-GAP-00112":{"line":2807,"offset":485940,"length":185,"previous":"M18-GAP-00111","next":"M18-GAP-00113"},"M18-GAP-00113":{"line":2808,"offset":486125,"length":200,"previous":"M18-GAP-00112","next":"M18-GAP-00114"},"M18-GAP-00114":{"line":2809,"offset":486325,"length":193,"previous":"M18-GAP-00113","next":"M18-GAP-00115"},"M18-GAP-00115":{"line":2810,"offset":486518,"length":191,"previous":"M18-GAP-00114","next":"M18-GAP-00116"},"M18-GAP-00116":{"line":2811,"offset":486709,"length":200,"previous":"M18-GAP-00115","next":"M18-GAP-00117"},"M18-GAP-00117":{"line":2812,"offset":486909,"length":193,"previous":"M18-GAP-00116","next":"M18-GAP-00118"},"M18-GAP-00118":{"line":2813,"offset":487102,"length":188,"previous":"M18-GAP-00117","next":"M18-GAP-00119"},"M18-GAP-00119":{"line":2814,"offset":487290,"length":184,"previous":"M18-GAP-00118","next":"M18-GAP-00120"},"M18-GAP-00120":{"line":2815,"offset":487474,"length":188,"previous":"M18-GAP-00119","next":"M18-GAP-00121"},"M18-GAP-00121":{"line":2816,"offset":487662,"length":182,"previous":"M18-GAP-00120","next":"M18-GAP-00122"},"M18-GAP-00122":{"line":2817,"offset":487844,"length":184,"previous":"M18-GAP-00121","next":"M18-GAP-00123"},"M18-GAP-00123":{"line":2818,"offset":488028,"length":186,"previous":"M18-GAP-00122","next":"M18-GAP-00124"},"M18-GAP-00124":{"line":2819,"offset":488214,"length":193,"previous":"M18-GAP-00123","next":"M18-GAP-00125"},"M18-GAP-00125":{"line":2820,"offset":488407,"length":194,"previous":"M18-GAP-00124","next":"M18-GAP-00126"},"M18-GAP-00126":{"line":2821,"offset":488601,"length":187,"previous":"M18-GAP-00125","next":"M18-GAP-00127"},"M18-GAP-00127":{"line":2822,"offset":488788,"length":195,"previous":"M18-GAP-00126","next":"M18-GAP-00128"},"M18-GAP-00128":{"line":2823,"offset":488983,"length":197,"previous":"M18-GAP-00127","next":"M18-GAP-00129"},"M18-GAP-00129":{"line":2824,"offset":489180,"length":196,"previous":"M18-GAP-00128","next":"M18-GAP-00130"},"M18-GAP-00130":{"line":2825,"offset":489376,"length":181,"previous":"M18-GAP-00129","next":"M18-GAP-00131"},"M18-GAP-00131":{"line":2826,"offset":489557,"length":190,"previous":"M18-GAP-00130","next":"M18-GAP-00132"},"M18-GAP-00132":{"line":2827,"offset":489747,"length":190,"previous":"M18-GAP-00131","next":"M18-GAP-00133"},"M18-GAP-00133":{"line":2828,"offset":489937,"length":193,"previous":"M18-GAP-00132","next":"M18-GAP-00134"},"M18-GAP-00134":{"line":2829,"offset":490130,"length":186,"previous":"M18-GAP-00133","next":"M18-GAP-00135"},"M18-GAP-00135":{"line":2830,"offset":490316,"length":186,"previous":"M18-GAP-00134","next":"M18-GAP-00136"},"M18-GAP-00136":{"line":2831,"offset":490502,"length":190,"previous":"M18-GAP-00135","next":"M18-GAP-00137"},"M18-GAP-00137":{"line":2832,"offset":490692,"length":184,"previous":"M18-GAP-00136","next":"M18-GAP-00138"},"M18-GAP-00138":{"line":2833,"offset":490876,"length":185,"previous":"M18-GAP-00137","next":"M18-GAP-00139"},"M18-GAP-00139":{"line":2834,"offset":491061,"length":185,"previous":"M18-GAP-00138","next":"M18-GAP-00140"},"M18-GAP-00140":{"line":2835,"offset":491246,"length":185,"previous":"M18-GAP-00139","next":"M18-GAP-00141"},"M18-GAP-00141":{"line":2836,"offset":491431,"length":187,"previous":"M18-GAP-00140","next":"M18-GAP-00142"},"M18-GAP-00142":{"line":2837,"offset":491618,"length":186,"previous":"M18-GAP-00141","next":"M18-GAP-00143"},"M18-GAP-00143":{"line":2838,"offset":491804,"length":184,"previous":"M18-GAP-00142","next":"M18-GAP-00144"},"M18-GAP-00144":{"line":2839,"offset":491988,"length":184,"previous":"M18-GAP-00143","next":"M18-GAP-00145"},"M18-GAP-00145":{"line":2840,"offset":492172,"length":186,"previous":"M18-GAP-00144","next":"M18-GAP-00146"},"M18-GAP-00146":{"line":2841,"offset":492358,"length":182,"previous":"M18-GAP-00145","next":"M18-GAP-00147"},"M18-GAP-00147":{"line":2842,"offset":492540,"length":184,"previous":"M18-GAP-00146","next":"M18-GAP-00148"},"M18-GAP-00148":{"line":2843,"offset":492724,"length":183,"previous":"M18-GAP-00147","next":"M18-GAP-00149"},"M18-GAP-00149":{"line":2844,"offset":492907,"length":182,"previous":"M18-GAP-00148","next":"M18-GAP-00150"},"M18-GAP-00150":{"line":2845,"offset":493089,"length":200,"previous":"M18-GAP-00149","next":"M18-GAP-00151"},"M18-GAP-00151":{"line":2846,"offset":493289,"length":201,"previous":"M18-GAP-00150","next":"M18-GAP-00152"},"M18-GAP-00152":{"line":2847,"offset":493490,"length":191,"previous":"M18-GAP-00151","next":"M18-GAP-00153"},"M18-GAP-00153":{"line":2848,"offset":493681,"length":190,"previous":"M18-GAP-00152","next":"M18-GAP-00154"},"M18-GAP-00154":{"line":2849,"offset":493871,"length":190,"previous":"M18-GAP-00153","next":"M18-GAP-00155"},"M18-GAP-00155":{"line":2850,"offset":494061,"length":193,"previous":"M18-GAP-00154","next":"M18-GAP-00156"},"M18-GAP-00156":{"line":2851,"offset":494254,"length":185,"previous":"M18-GAP-00155","next":"M18-GAP-00157"},"M18-GAP-00157":{"line":2852,"offset":494439,"length":182,"previous":"M18-GAP-00156","next":"M18-GAP-00158"},"M18-GAP-00158":{"line":2853,"offset":494621,"length":184,"previous":"M18-GAP-00157","next":"M18-GAP-00159"},"M18-GAP-00159":{"line":2854,"offset":494805,"length":187,"previous":"M18-GAP-00158","next":"M18-GAP-00160"},"M18-GAP-00160":{"line":2855,"offset":494992,"length":193,"previous":"M18-GAP-00159","next":"M18-GAP-00161"},"M18-GAP-00161":{"line":2856,"offset":495185,"length":183,"previous":"M18-GAP-00160","next":"M18-GAP-00162"},"M18-GAP-00162":{"line":2857,"offset":495368,"length":181,"previous":"M18-GAP-00161","next":"M18-GAP-00163"},"M18-GAP-00163":{"line":2858,"offset":495549,"length":181,"previous":"M18-GAP-00162","next":"M18-GAP-00164"},"M18-GAP-00164":{"line":2859,"offset":495730,"length":191,"previous":"M18-GAP-00163","next":"M18-GAP-00165"},"M18-GAP-00165":{"line":2860,"offset":495921,"length":187,"previous":"M18-GAP-00164","next":"M18-GAP-00166"},"M18-GAP-00166":{"line":2861,"offset":496108,"length":185,"previous":"M18-GAP-00165","next":"M18-GAP-00167"},"M18-GAP-00167":{"line":2862,"offset":496293,"length":181,"previous":"M18-GAP-00166","next":"M18-GAP-00168"},"M18-GAP-00168":{"line":2863,"offset":496474,"length":186,"previous":"M18-GAP-00167","next":"M18-GAP-00169"},"M18-GAP-00169":{"line":2864,"offset":496660,"length":181,"previous":"M18-GAP-00168","next":"M18-GAP-00170"},"M18-GAP-00170":{"line":2865,"offset":496841,"length":183,"previous":"M18-GAP-00169","next":"M18-GAP-00171"},"M18-GAP-00171":{"line":2866,"offset":497024,"length":182,"previous":"M18-GAP-00170","next":"M18-GAP-00172"},"M18-GAP-00172":{"line":2867,"offset":497206,"length":183,"previous":"M18-GAP-00171","next":"M18-GAP-00173"},"M18-GAP-00173":{"line":2868,"offset":497389,"length":185,"previous":"M18-GAP-00172","next":"M18-GAP-00174"},"M18-GAP-00174":{"line":2869,"offset":497574,"length":185,"previous":"M18-GAP-00173","next":"M18-GAP-00175"},"M18-GAP-00175":{"line":2870,"offset":497759,"length":178,"previous":"M18-GAP-00174","next":"M18-GAP-00176"},"M18-GAP-00176":{"line":2871,"offset":497937,"length":182,"previous":"M18-GAP-00175","next":"M18-GAP-00177"},"M18-GAP-00177":{"line":2872,"offset":498119,"length":185,"previous":"M18-GAP-00176","next":"M18-GAP-00178"},"M18-GAP-00178":{"line":2873,"offset":498304,"length":182,"previous":"M18-GAP-00177","next":"M18-GAP-00179"},"M18-GAP-00179":{"line":2874,"offset":498486,"length":182,"previous":"M18-GAP-00178","next":"M18-GAP-00180"},"M18-GAP-00180":{"line":2875,"offset":498668,"length":182,"previous":"M18-GAP-00179","next":"M18-GAP-00181"},"M18-GAP-00181":{"line":2876,"offset":498850,"length":182,"previous":"M18-GAP-00180","next":"M18-GAP-00182"},"M18-GAP-00182":{"line":2877,"offset":499032,"length":183,"previous":"M18-GAP-00181","next":"M18-GAP-00183"},"M18-GAP-00183":{"line":2878,"offset":499215,"length":182,"previous":"M18-GAP-00182","next":"M18-GAP-00184"},"M18-GAP-00184":{"line":2879,"offset":499397,"length":187,"previous":"M18-GAP-00183","next":"M18-GAP-00185"},"M18-GAP-00185":{"line":2880,"offset":499584,"length":184,"previous":"M18-GAP-00184","next":"M18-GAP-00186"},"M18-GAP-00186":{"line":2881,"offset":499768,"length":190,"previous":"M18-GAP-00185","next":"M18-GAP-00187"},"M18-GAP-00187":{"line":2882,"offset":499958,"length":188,"previous":"M18-GAP-00186","next":"M18-GAP-00188"},"M18-GAP-00188":{"line":2883,"offset":500146,"length":198,"previous":"M18-GAP-00187","next":"M18-GAP-00189"},"M18-GAP-00189":{"line":2884,"offset":500344,"length":187,"previous":"M18-GAP-00188","next":"M18-GAP-00190"},"M18-GAP-00190":{"line":2885,"offset":500531,"length":188,"previous":"M18-GAP-00189","next":"M18-GAP-00191"},"M18-GAP-00191":{"line":2886,"offset":500719,"length":182,"previous":"M18-GAP-00190","next":"M18-GAP-00192"},"M18-GAP-00192":{"line":2887,"offset":500901,"length":180,"previous":"M18-GAP-00191","next":"M18-GAP-00193"},"M18-GAP-00193":{"line":2888,"offset":501081,"length":183,"previous":"M18-GAP-00192","next":"M18-GAP-00194"},"M18-GAP-00194":{"line":2889,"offset":501264,"length":183,"previous":"M18-GAP-00193","next":"M18-GAP-00195"},"M18-GAP-00195":{"line":2890,"offset":501447,"length":192,"previous":"M18-GAP-00194","next":"M18-GAP-00196"},"M18-GAP-00196":{"line":2891,"offset":501639,"length":195,"previous":"M18-GAP-00195","next":"M18-GAP-00197"},"M18-GAP-00197":{"line":2892,"offset":501834,"length":194,"previous":"M18-GAP-00196","next":"M18-GAP-00198"},"M18-GAP-00198":{"line":2893,"offset":502028,"length":191,"previous":"M18-GAP-00197","next":"M18-GAP-00199"},"M18-GAP-00199":{"line":2894,"offset":502219,"length":186,"previous":"M18-GAP-00198","next":"M18-GAP-00200"},"M18-GAP-00200":{"line":2895,"offset":502405,"length":191,"previous":"M18-GAP-00199","next":"M18-GAP-00201"},"M18-GAP-00201":{"line":2896,"offset":502596,"length":191,"previous":"M18-GAP-00200","next":"M18-GAP-00202"},"M18-GAP-00202":{"line":2897,"offset":502787,"length":195,"previous":"M18-GAP-00201","next":"M18-GAP-00203"},"M18-GAP-00203":{"line":2898,"offset":502982,"length":194,"previous":"M18-GAP-00202","next":"M18-GAP-00204"},"M18-GAP-00204":{"line":2899,"offset":503176,"length":190,"previous":"M18-GAP-00203","next":"M18-GAP-00205"},"M18-GAP-00205":{"line":2900,"offset":503366,"length":194,"previous":"M18-GAP-00204","next":"M18-GAP-00206"},"M18-GAP-00206":{"line":2901,"offset":503560,"length":195,"previous":"M18-GAP-00205","next":"M18-GAP-00207"},"M18-GAP-00207":{"line":2902,"offset":503755,"length":188,"previous":"M18-GAP-00206","next":"M18-GAP-00208"},"M18-GAP-00208":{"line":2903,"offset":503943,"length":197,"previous":"M18-GAP-00207","next":"M18-GAP-00209"},"M18-GAP-00209":{"line":2904,"offset":504140,"length":192,"previous":"M18-GAP-00208","next":"M18-GAP-00210"},"M18-GAP-00210":{"line":2905,"offset":504332,"length":197,"previous":"M18-GAP-00209","next":"M18-GAP-00211"},"M18-GAP-00211":{"line":2906,"offset":504529,"length":184,"previous":"M18-GAP-00210","next":"M18-GAP-00212"},"M18-GAP-00212":{"line":2907,"offset":504713,"length":184,"previous":"M18-GAP-00211","next":"M18-GAP-00213"},"M18-GAP-00213":{"line":2908,"offset":504897,"length":186,"previous":"M18-GAP-00212","next":"M18-GAP-00214"},"M18-GAP-00214":{"line":2909,"offset":505083,"length":184,"previous":"M18-GAP-00213","next":"M18-GAP-00215"},"M18-GAP-00215":{"line":2910,"offset":505267,"length":187,"previous":"M18-GAP-00214","next":"M18-GAP-00216"},"M18-GAP-00216":{"line":2911,"offset":505454,"length":189,"previous":"M18-GAP-00215","next":"M18-GAP-00217"},"M18-GAP-00217":{"line":2912,"offset":505643,"length":195,"previous":"M18-GAP-00216","next":"M18-GAP-00218"},"M18-GAP-00218":{"line":2913,"offset":505838,"length":190,"previous":"M18-GAP-00217","next":"M18-GAP-00219"},"M18-GAP-00219":{"line":2914,"offset":506028,"length":194,"previous":"M18-GAP-00218","next":"M18-GAP-00220"},"M18-GAP-00220":{"line":2915,"offset":506222,"length":185,"previous":"M18-GAP-00219","next":"M18-GAP-00221"},"M18-GAP-00221":{"line":2916,"offset":506407,"length":188,"previous":"M18-GAP-00220","next":"M18-GAP-00222"},"M18-GAP-00222":{"line":2917,"offset":506595,"length":189,"previous":"M18-GAP-00221","next":"M18-GAP-00223"},"M18-GAP-00223":{"line":2918,"offset":506784,"length":190,"previous":"M18-GAP-00222","next":"M18-GAP-00224"},"M18-GAP-00224":{"line":2919,"offset":506974,"length":190,"previous":"M18-GAP-00223","next":"M18-GAP-00225"},"M18-GAP-00225":{"line":2920,"offset":507164,"length":190,"previous":"M18-GAP-00224","next":"M18-GAP-00226"},"M18-GAP-00226":{"line":2921,"offset":507354,"length":183,"previous":"M18-GAP-00225","next":"M18-GAP-00227"},"M18-GAP-00227":{"line":2922,"offset":507537,"length":185,"previous":"M18-GAP-00226","next":"M18-GAP-00228"},"M18-GAP-00228":{"line":2923,"offset":507722,"length":184,"previous":"M18-GAP-00227","next":"M18-GAP-00229"},"M18-GAP-00229":{"line":2924,"offset":507906,"length":183,"previous":"M18-GAP-00228","next":"M18-GAP-00230"},"M18-GAP-00230":{"line":2925,"offset":508089,"length":190,"previous":"M18-GAP-00229","next":"M18-GAP-00231"},"M18-GAP-00231":{"line":2926,"offset":508279,"length":183,"previous":"M18-GAP-00230","next":"M18-GAP-00232"},"M18-GAP-00232":{"line":2927,"offset":508462,"length":188,"previous":"M18-GAP-00231","next":"M18-GAP-00233"},"M18-GAP-00233":{"line":2928,"offset":508650,"length":184,"previous":"M18-GAP-00232","next":"M18-GAP-00234"},"M18-GAP-00234":{"line":2929,"offset":508834,"length":184,"previous":"M18-GAP-00233","next":"M18-GAP-00235"},"M18-GAP-00235":{"line":2930,"offset":509018,"length":182,"previous":"M18-GAP-00234","next":"M18-GAP-00236"},"M18-GAP-00236":{"line":2931,"offset":509200,"length":184,"previous":"M18-GAP-00235","next":"M18-GAP-00237"},"M18-GAP-00237":{"line":2932,"offset":509384,"length":183,"previous":"M18-GAP-00236","next":"M18-GAP-00238"},"M18-GAP-00238":{"line":2933,"offset":509567,"length":181,"previous":"M18-GAP-00237","next":"M18-GAP-00239"},"M18-GAP-00239":{"line":2934,"offset":509748,"length":181,"previous":"M18-GAP-00238","next":"M18-GAP-00240"},"M18-GAP-00240":{"line":2935,"offset":509929,"length":185,"previous":"M18-GAP-00239","next":"M18-GAP-00241"},"M18-GAP-00241":{"line":2936,"offset":510114,"length":194,"previous":"M18-GAP-00240","next":"M18-GAP-00242"},"M18-GAP-00242":{"line":2937,"offset":510308,"length":181,"previous":"M18-GAP-00241","next":"M18-GAP-00243"},"M18-GAP-00243":{"line":2938,"offset":510489,"length":186,"previous":"M18-GAP-00242","next":"M18-GAP-00244"},"M18-GAP-00244":{"line":2939,"offset":510675,"length":181,"previous":"M18-GAP-00243","next":"M18-GAP-00245"},"M18-GAP-00245":{"line":2940,"offset":510856,"length":184,"previous":"M18-GAP-00244","next":"M18-GAP-00246"},"M18-GAP-00246":{"line":2941,"offset":511040,"length":190,"previous":"M18-GAP-00245","next":"M18-GAP-00247"},"M18-GAP-00247":{"line":2942,"offset":511230,"length":185,"previous":"M18-GAP-00246","next":"M18-GAP-00248"},"M18-GAP-00248":{"line":2943,"offset":511415,"length":186,"previous":"M18-GAP-00247","next":"M18-GAP-00249"},"M18-GAP-00249":{"line":2944,"offset":511601,"length":185,"previous":"M18-GAP-00248","next":"M18-GAP-00250"},"M18-GAP-00250":{"line":2945,"offset":511786,"length":185,"previous":"M18-GAP-00249","next":"M18-GAP-00251"},"M18-GAP-00251":{"line":2946,"offset":511971,"length":183,"previous":"M18-GAP-00250","next":"M18-GAP-00252"},"M18-GAP-00252":{"line":2947,"offset":512154,"length":191,"previous":"M18-GAP-00251","next":"M18-GAP-00253"},"M18-GAP-00253":{"line":2948,"offset":512345,"length":191,"previous":"M18-GAP-00252","next":"M18-GAP-00254"},"M18-GAP-00254":{"line":2949,"offset":512536,"length":179,"previous":"M18-GAP-00253","next":"M18-GAP-00255"},"M18-GAP-00255":{"line":2950,"offset":512715,"length":186,"previous":"M18-GAP-00254","next":"M18-GAP-00256"},"M18-GAP-00256":{"line":2951,"offset":512901,"length":187,"previous":"M18-GAP-00255","next":"M18-GAP-00257"},"M18-GAP-00257":{"line":2952,"offset":513088,"length":188,"previous":"M18-GAP-00256","next":"M18-GAP-00258"},"M18-GAP-00258":{"line":2953,"offset":513276,"length":189,"previous":"M18-GAP-00257","next":"M18-GAP-00259"},"M18-GAP-00259":{"line":2954,"offset":513465,"length":187,"previous":"M18-GAP-00258","next":"M18-GAP-00260"},"M18-GAP-00260":{"line":2955,"offset":513652,"length":182,"previous":"M18-GAP-00259","next":"M18-GAP-00261"},"M18-GAP-00261":{"line":2956,"offset":513834,"length":180,"previous":"M18-GAP-00260","next":"M18-GAP-00262"},"M18-GAP-00262":{"line":2957,"offset":514014,"length":189,"previous":"M18-GAP-00261","next":"M18-GAP-00263"},"M18-GAP-00263":{"line":2958,"offset":514203,"length":188,"previous":"M18-GAP-00262","next":"M18-GAP-00264"},"M18-GAP-00264":{"line":2959,"offset":514391,"length":188,"previous":"M18-GAP-00263","next":"M18-GAP-00265"},"M18-GAP-00265":{"line":2960,"offset":514579,"length":184,"previous":"M18-GAP-00264","next":"M18-GAP-00266"},"M18-GAP-00266":{"line":2961,"offset":514763,"length":185,"previous":"M18-GAP-00265","next":"M18-GAP-00267"},"M18-GAP-00267":{"line":2962,"offset":514948,"length":188,"previous":"M18-GAP-00266","next":"M18-GAP-00268"},"M18-GAP-00268":{"line":2963,"offset":515136,"length":186,"previous":"M18-GAP-00267","next":"M18-GAP-00269"},"M18-GAP-00269":{"line":2964,"offset":515322,"length":185,"previous":"M18-GAP-00268","next":"M18-GAP-00270"},"M18-GAP-00270":{"line":2965,"offset":515507,"length":188,"previous":"M18-GAP-00269","next":"M18-GAP-00271"},"M18-GAP-00271":{"line":2966,"offset":515695,"length":187,"previous":"M18-GAP-00270","next":"M18-GAP-00272"},"M18-GAP-00272":{"line":2967,"offset":515882,"length":186,"previous":"M18-GAP-00271","next":"M18-GAP-00273"},"M18-GAP-00273":{"line":2968,"offset":516068,"length":189,"previous":"M18-GAP-00272","next":"M18-GAP-00274"},"M18-GAP-00274":{"line":2969,"offset":516257,"length":184,"previous":"M18-GAP-00273","next":"M18-GAP-00275"},"M18-GAP-00275":{"line":2970,"offset":516441,"length":193,"previous":"M18-GAP-00274","next":"M18-GAP-00276"},"M18-GAP-00276":{"line":2971,"offset":516634,"length":186,"previous":"M18-GAP-00275","next":"M18-GAP-00277"},"M18-GAP-00277":{"line":2972,"offset":516820,"length":186,"previous":"M18-GAP-00276","next":"M18-GAP-00278"},"M18-GAP-00278":{"line":2973,"offset":517006,"length":184,"previous":"M18-GAP-00277","next":"M18-GAP-00279"},"M18-GAP-00279":{"line":2974,"offset":517190,"length":183,"previous":"M18-GAP-00278","next":"M18-GAP-00280"},"M18-GAP-00280":{"line":2975,"offset":517373,"length":188,"previous":"M18-GAP-00279","next":"M18-GAP-00281"},"M18-GAP-00281":{"line":2976,"offset":517561,"length":184,"previous":"M18-GAP-00280","next":"M18-GAP-00282"},"M18-GAP-00282":{"line":2977,"offset":517745,"length":186,"previous":"M18-GAP-00281","next":"M18-GAP-00283"},"M18-GAP-00283":{"line":2978,"offset":517931,"length":193,"previous":"M18-GAP-00282","next":"M18-GAP-00284"},"M18-GAP-00284":{"line":2979,"offset":518124,"length":195,"previous":"M18-GAP-00283","next":"M18-GAP-00285"},"M18-GAP-00285":{"line":2980,"offset":518319,"length":188,"previous":"M18-GAP-00284","next":"M18-GAP-00286"},"M18-GAP-00286":{"line":2981,"offset":518507,"length":186,"previous":"M18-GAP-00285","next":"M18-GAP-00287"},"M18-GAP-00287":{"line":2982,"offset":518693,"length":187,"previous":"M18-GAP-00286","next":"M18-GAP-00288"},"M18-GAP-00288":{"line":2983,"offset":518880,"length":183,"previous":"M18-GAP-00287","next":"M18-GAP-00289"},"M18-GAP-00289":{"line":2984,"offset":519063,"length":191,"previous":"M18-GAP-00288","next":"M18-GAP-00290"},"M18-GAP-00290":{"line":2985,"offset":519254,"length":189,"previous":"M18-GAP-00289","next":"M18-GAP-00291"},"M18-GAP-00291":{"line":2986,"offset":519443,"length":196,"previous":"M18-GAP-00290","next":"M18-GAP-00292"},"M18-GAP-00292":{"line":2987,"offset":519639,"length":187,"previous":"M18-GAP-00291","next":"M18-GAP-00293"},"M18-GAP-00293":{"line":2988,"offset":519826,"length":187,"previous":"M18-GAP-00292","next":"M18-GAP-00294"},"M18-GAP-00294":{"line":2989,"offset":520013,"length":185,"previous":"M18-GAP-00293","next":"M18-GAP-00295"},"M18-GAP-00295":{"line":2990,"offset":520198,"length":190,"previous":"M18-GAP-00294","next":"M18-GAP-00296"},"M18-GAP-00296":{"line":2991,"offset":520388,"length":188,"previous":"M18-GAP-00295","next":"M18-GAP-00297"},"M18-GAP-00297":{"line":2992,"offset":520576,"length":193,"previous":"M18-GAP-00296","next":"M18-GAP-00298"},"M18-GAP-00298":{"line":2993,"offset":520769,"length":193,"previous":"M18-GAP-00297","next":"M18-GAP-00299"},"M18-GAP-00299":{"line":2994,"offset":520962,"length":196,"previous":"M18-GAP-00298","next":"M18-GAP-00300"},"M18-GAP-00300":{"line":2995,"offset":521158,"length":190,"previous":"M18-GAP-00299","next":"M18-GAP-00301"},"M18-GAP-00301":{"line":2996,"offset":521348,"length":189,"previous":"M18-GAP-00300","next":"M18-GAP-00302"},"M18-GAP-00302":{"line":2997,"offset":521537,"length":178,"previous":"M18-GAP-00301","next":"M18-GAP-00303"},"M18-GAP-00303":{"line":2998,"offset":521715,"length":193,"previous":"M18-GAP-00302","next":"M18-GAP-00304"},"M18-GAP-00304":{"line":2999,"offset":521908,"length":184,"previous":"M18-GAP-00303","next":"M18-GAP-00305"},"M18-GAP-00305":{"line":3000,"offset":522092,"length":189,"previous":"M18-GAP-00304","next":"M18-GAP-00306"},"M18-GAP-00306":{"line":3001,"offset":522281,"length":186,"previous":"M18-GAP-00305","next":"M18-GAP-00307"},"M18-GAP-00307":{"line":3002,"offset":522467,"length":186,"previous":"M18-GAP-00306","next":"M18-GAP-00308"},"M18-GAP-00308":{"line":3003,"offset":522653,"length":187,"previous":"M18-GAP-00307","next":"M18-GAP-00309"},"M18-GAP-00309":{"line":3004,"offset":522840,"length":187,"previous":"M18-GAP-00308","next":"M18-GAP-00310"},"M18-GAP-00310":{"line":3005,"offset":523027,"length":184,"previous":"M18-GAP-00309","next":"M18-GAP-00311"},"M18-GAP-00311":{"line":3006,"offset":523211,"length":187,"previous":"M18-GAP-00310","next":"M18-GAP-00312"},"M18-GAP-00312":{"line":3007,"offset":523398,"length":188,"previous":"M18-GAP-00311","next":"M18-GAP-00313"},"M18-GAP-00313":{"line":3008,"offset":523586,"length":192,"previous":"M18-GAP-00312","next":"M18-GAP-00314"},"M18-GAP-00314":{"line":3009,"offset":523778,"length":188,"previous":"M18-GAP-00313","next":"M18-GAP-00315"},"M18-GAP-00315":{"line":3010,"offset":523966,"length":189,"previous":"M18-GAP-00314","next":"M18-GAP-00316"},"M18-GAP-00316":{"line":3011,"offset":524155,"length":185,"previous":"M18-GAP-00315","next":"M18-GAP-00317"},"M18-GAP-00317":{"line":3012,"offset":524340,"length":181,"previous":"M18-GAP-00316","next":"M18-GAP-00318"},"M18-GAP-00318":{"line":3013,"offset":524521,"length":185,"previous":"M18-GAP-00317","next":"M18-GAP-00319"},"M18-GAP-00319":{"line":3014,"offset":524706,"length":188,"previous":"M18-GAP-00318","next":"M18-GAP-00320"},"M18-GAP-00320":{"line":3015,"offset":524894,"length":183,"previous":"M18-GAP-00319","next":"M18-GAP-00321"},"M18-GAP-00321":{"line":3016,"offset":525077,"length":189,"previous":"M18-GAP-00320","next":"M18-GAP-00322"},"M18-GAP-00322":{"line":3017,"offset":525266,"length":192,"previous":"M18-GAP-00321","next":"M18-GAP-00323"},"M18-GAP-00323":{"line":3018,"offset":525458,"length":187,"previous":"M18-GAP-00322","next":"M18-GAP-00324"},"M18-GAP-00324":{"line":3019,"offset":525645,"length":183,"previous":"M18-GAP-00323","next":"M18-GAP-00325"},"M18-GAP-00325":{"line":3020,"offset":525828,"length":187,"previous":"M18-GAP-00324","next":"M18-GAP-00326"},"M18-GAP-00326":{"line":3021,"offset":526015,"length":187,"previous":"M18-GAP-00325","next":"M18-GAP-00327"},"M18-GAP-00327":{"line":3022,"offset":526202,"length":186,"previous":"M18-GAP-00326","next":"M18-GAP-00328"},"M18-GAP-00328":{"line":3023,"offset":526388,"length":191,"previous":"M18-GAP-00327","next":"M18-GAP-00329"},"M18-GAP-00329":{"line":3024,"offset":526579,"length":179,"previous":"M18-GAP-00328","next":"M18-GAP-00330"},"M18-GAP-00330":{"line":3025,"offset":526758,"length":182,"previous":"M18-GAP-00329","next":"M18-GAP-00331"},"M18-GAP-00331":{"line":3026,"offset":526940,"length":185,"previous":"M18-GAP-00330","next":"M18-GAP-00332"},"M18-GAP-00332":{"line":3027,"offset":527125,"length":190,"previous":"M18-GAP-00331","next":"M18-GAP-00333"},"M18-GAP-00333":{"line":3028,"offset":527315,"length":184,"previous":"M18-GAP-00332","next":"M18-GAP-00334"},"M18-GAP-00334":{"line":3029,"offset":527499,"length":190,"previous":"M18-GAP-00333","next":"M18-GAP-00335"},"M18-GAP-00335":{"line":3030,"offset":527689,"length":186,"previous":"M18-GAP-00334","next":"M18-GAP-00336"},"M18-GAP-00336":{"line":3031,"offset":527875,"length":187,"previous":"M18-GAP-00335","next":"M18-GAP-00337"},"M18-GAP-00337":{"line":3032,"offset":528062,"length":189,"previous":"M18-GAP-00336","next":"M18-GAP-00338"},"M18-GAP-00338":{"line":3033,"offset":528251,"length":191,"previous":"M18-GAP-00337","next":"M18-GAP-00339"},"M18-GAP-00339":{"line":3034,"offset":528442,"length":182,"previous":"M18-GAP-00338","next":"M18-GAP-00340"},"M18-GAP-00340":{"line":3035,"offset":528624,"length":191,"previous":"M18-GAP-00339","next":"M18-GAP-00341"},"M18-GAP-00341":{"line":3036,"offset":528815,"length":184,"previous":"M18-GAP-00340","next":"M18-GAP-00342"},"M18-GAP-00342":{"line":3037,"offset":528999,"length":182,"previous":"M18-GAP-00341","next":"M18-GAP-00343"},"M18-GAP-00343":{"line":3038,"offset":529181,"length":186,"previous":"M18-GAP-00342","next":"M18-GAP-00344"},"M18-GAP-00344":{"line":3039,"offset":529367,"length":182,"previous":"M18-GAP-00343","next":"M18-GAP-00345"},"M18-GAP-00345":{"line":3040,"offset":529549,"length":181,"previous":"M18-GAP-00344","next":"M18-GAP-00346"},"M18-GAP-00346":{"line":3041,"offset":529730,"length":187,"previous":"M18-GAP-00345","next":"M18-GAP-00347"},"M18-GAP-00347":{"line":3042,"offset":529917,"length":179,"previous":"M18-GAP-00346","next":"M18-GAP-00348"},"M18-GAP-00348":{"line":3043,"offset":530096,"length":190,"previous":"M18-GAP-00347","next":"M18-GAP-00349"},"M18-GAP-00349":{"line":3044,"offset":530286,"length":183,"previous":"M18-GAP-00348","next":"M18-GAP-00350"},"M18-GAP-00350":{"line":3045,"offset":530469,"length":185,"previous":"M18-GAP-00349","next":"M18-GAP-00351"},"M18-GAP-00351":{"line":3046,"offset":530654,"length":180,"previous":"M18-GAP-00350","next":"M18-GAP-00352"},"M18-GAP-00352":{"line":3047,"offset":530834,"length":183,"previous":"M18-GAP-00351","next":"M18-GAP-00353"},"M18-GAP-00353":{"line":3048,"offset":531017,"length":176,"previous":"M18-GAP-00352","next":"M18-GAP-00354"},"M18-GAP-00354":{"line":3049,"offset":531193,"length":183,"previous":"M18-GAP-00353","next":"M18-GAP-00355"},"M18-GAP-00355":{"line":3050,"offset":531376,"length":176,"previous":"M18-GAP-00354","next":"M18-GAP-00356"},"M18-GAP-00356":{"line":3051,"offset":531552,"length":177,"previous":"M18-GAP-00355","next":"M18-GAP-00357"},"M18-GAP-00357":{"line":3052,"offset":531729,"length":172,"previous":"M18-GAP-00356","next":"M18-GAP-00358"},"M18-GAP-00358":{"line":3053,"offset":531901,"length":176,"previous":"M18-GAP-00357","next":"M18-GAP-00359"},"M18-GAP-00359":{"line":3054,"offset":532077,"length":181,"previous":"M18-GAP-00358","next":"M18-GAP-00360"},"M18-GAP-00360":{"line":3055,"offset":532258,"length":182,"previous":"M18-GAP-00359","next":"M18-GAP-00361"},"M18-GAP-00361":{"line":3056,"offset":532440,"length":178,"previous":"M18-GAP-00360","next":"M18-GAP-00362"},"M18-GAP-00362":{"line":3057,"offset":532618,"length":176,"previous":"M18-GAP-00361","next":"M18-GAP-00363"},"M18-GAP-00363":{"line":3058,"offset":532794,"length":175,"previous":"M18-GAP-00362","next":"M18-GAP-00364"},"M18-GAP-00364":{"line":3059,"offset":532969,"length":185,"previous":"M18-GAP-00363","next":"M18-GAP-00365"},"M18-GAP-00365":{"line":3060,"offset":533154,"length":179,"previous":"M18-GAP-00364","next":"M18-GAP-00366"},"M18-GAP-00366":{"line":3061,"offset":533333,"length":181,"previous":"M18-GAP-00365","next":"M18-GAP-00367"},"M18-GAP-00367":{"line":3062,"offset":533514,"length":180,"previous":"M18-GAP-00366","next":"M18-GAP-00368"},"M18-GAP-00368":{"line":3063,"offset":533694,"length":181,"previous":"M18-GAP-00367","next":"M18-GAP-00369"},"M18-GAP-00369":{"line":3064,"offset":533875,"length":176,"previous":"M18-GAP-00368","next":"M18-GAP-00370"},"M18-GAP-00370":{"line":3065,"offset":534051,"length":175,"previous":"M18-GAP-00369","next":"M18-GAP-00371"},"M18-GAP-00371":{"line":3066,"offset":534226,"length":182,"previous":"M18-GAP-00370","next":"M18-GAP-00372"},"M18-GAP-00372":{"line":3067,"offset":534408,"length":182,"previous":"M18-GAP-00371","next":"M18-GAP-00373"},"M18-GAP-00373":{"line":3068,"offset":534590,"length":171,"previous":"M18-GAP-00372","next":"M18-GAP-00374"},"M18-GAP-00374":{"line":3069,"offset":534761,"length":177,"previous":"M18-GAP-00373","next":"M18-GAP-00375"},"M18-GAP-00375":{"line":3070,"offset":534938,"length":172,"previous":"M18-GAP-00374","next":"M18-GAP-00376"},"M18-GAP-00376":{"line":3071,"offset":535110,"length":179,"previous":"M18-GAP-00375","next":"M18-GAP-00377"},"M18-GAP-00377":{"line":3072,"offset":535289,"length":177,"previous":"M18-GAP-00376","next":"M18-GAP-00378"},"M18-GAP-00378":{"line":3073,"offset":535466,"length":179,"previous":"M18-GAP-00377","next":"M18-GAP-00379"},"M18-GAP-00379":{"line":3074,"offset":535645,"length":180,"previous":"M18-GAP-00378","next":"M18-GAP-00380"},"M18-GAP-00380":{"line":3075,"offset":535825,"length":175,"previous":"M18-GAP-00379","next":"M18-GAP-00381"},"M18-GAP-00381":{"line":3076,"offset":536000,"length":177,"previous":"M18-GAP-00380","next":"M18-GAP-00382"},"M18-GAP-00382":{"line":3077,"offset":536177,"length":174,"previous":"M18-GAP-00381","next":"M18-GAP-00383"},"M18-GAP-00383":{"line":3078,"offset":536351,"length":172,"previous":"M18-GAP-00382","next":"M18-GAP-00384"},"M18-GAP-00384":{"line":3079,"offset":536523,"length":172,"previous":"M18-GAP-00383","next":"M18-GAP-00385"},"M18-GAP-00385":{"line":3080,"offset":536695,"length":175,"previous":"M18-GAP-00384","next":"M18-GAP-00386"},"M18-GAP-00386":{"line":3081,"offset":536870,"length":174,"previous":"M18-GAP-00385","next":"M18-GAP-00387"},"M18-GAP-00387":{"line":3082,"offset":537044,"length":180,"previous":"M18-GAP-00386","next":"M18-GAP-00388"},"M18-GAP-00388":{"line":3083,"offset":537224,"length":173,"previous":"M18-GAP-00387","next":"M18-GAP-00389"},"M18-GAP-00389":{"line":3084,"offset":537397,"length":178,"previous":"M18-GAP-00388","next":"M18-GAP-00390"},"M18-GAP-00390":{"line":3085,"offset":537575,"length":179,"previous":"M18-GAP-00389","next":"M18-GAP-00391"},"M18-GAP-00391":{"line":3086,"offset":537754,"length":176,"previous":"M18-GAP-00390","next":"M18-GAP-00392"},"M18-GAP-00392":{"line":3087,"offset":537930,"length":175,"previous":"M18-GAP-00391","next":"M18-GAP-00393"},"M18-GAP-00393":{"line":3088,"offset":538105,"length":174,"previous":"M18-GAP-00392","next":"M18-GAP-00394"},"M18-GAP-00394":{"line":3089,"offset":538279,"length":171,"previous":"M18-GAP-00393","next":"M18-GAP-00395"},"M18-GAP-00395":{"line":3090,"offset":538450,"length":170,"previous":"M18-GAP-00394","next":"M18-GAP-00396"},"M18-GAP-00396":{"line":3091,"offset":538620,"length":173,"previous":"M18-GAP-00395","next":"M18-GAP-00397"},"M18-GAP-00397":{"line":3092,"offset":538793,"length":176,"previous":"M18-GAP-00396","next":"M18-GAP-00398"},"M18-GAP-00398":{"line":3093,"offset":538969,"length":178,"previous":"M18-GAP-00397","next":"M18-GAP-00399"},"M18-GAP-00399":{"line":3094,"offset":539147,"length":173,"previous":"M18-GAP-00398","next":"M18-GAP-00400"},"M18-GAP-00400":{"line":3095,"offset":539320,"length":176,"previous":"M18-GAP-00399","next":"M18-GAP-00401"},"M18-GAP-00401":{"line":3096,"offset":539496,"length":177,"previous":"M18-GAP-00400","next":"M18-GAP-00402"},"M18-GAP-00402":{"line":3097,"offset":539673,"length":176,"previous":"M18-GAP-00401","next":"M18-GAP-00403"},"M18-GAP-00403":{"line":3098,"offset":539849,"length":178,"previous":"M18-GAP-00402","next":"M18-GAP-00404"},"M18-GAP-00404":{"line":3099,"offset":540027,"length":182,"previous":"M18-GAP-00403","next":"M18-GAP-00405"},"M18-GAP-00405":{"line":3100,"offset":540209,"length":181,"previous":"M18-GAP-00404","next":"M18-GAP-00406"},"M18-GAP-00406":{"line":3101,"offset":540390,"length":178,"previous":"M18-GAP-00405","next":"M18-GAP-00407"},"M18-GAP-00407":{"line":3102,"offset":540568,"length":179,"previous":"M18-GAP-00406","next":"M18-GAP-00408"},"M18-GAP-00408":{"line":3103,"offset":540747,"length":176,"previous":"M18-GAP-00407","next":"M18-GAP-00409"},"M18-GAP-00409":{"line":3104,"offset":540923,"length":170,"previous":"M18-GAP-00408","next":"M18-GAP-00410"},"M18-GAP-00410":{"line":3105,"offset":541093,"length":175,"previous":"M18-GAP-00409","next":"M18-GAP-00411"},"M18-GAP-00411":{"line":3106,"offset":541268,"length":174,"previous":"M18-GAP-00410","next":"M18-GAP-00412"},"M18-GAP-00412":{"line":3107,"offset":541442,"length":179,"previous":"M18-GAP-00411","next":"M18-GAP-00413"},"M18-GAP-00413":{"line":3108,"offset":541621,"length":174,"previous":"M18-GAP-00412","next":"M18-GAP-00414"},"M18-GAP-00414":{"line":3109,"offset":541795,"length":173,"previous":"M18-GAP-00413","next":"M18-GAP-00415"},"M18-GAP-00415":{"line":3110,"offset":541968,"length":180,"previous":"M18-GAP-00414","next":"M18-GAP-00416"},"M18-GAP-00416":{"line":3111,"offset":542148,"length":178,"previous":"M18-GAP-00415","next":"M18-GAP-00417"},"M18-GAP-00417":{"line":3112,"offset":542326,"length":178,"previous":"M18-GAP-00416","next":"M18-GAP-00418"},"M18-GAP-00418":{"line":3113,"offset":542504,"length":174,"previous":"M18-GAP-00417","next":"M18-GAP-00419"},"M18-GAP-00419":{"line":3114,"offset":542678,"length":187,"previous":"M18-GAP-00418","next":"M18-GAP-00420"},"M18-GAP-00420":{"line":3115,"offset":542865,"length":174,"previous":"M18-GAP-00419","next":"M18-GAP-00421"},"M18-GAP-00421":{"line":3116,"offset":543039,"length":175,"previous":"M18-GAP-00420","next":"M18-GAP-00422"},"M18-GAP-00422":{"line":3117,"offset":543214,"length":177,"previous":"M18-GAP-00421","next":"M18-GAP-00423"},"M18-GAP-00423":{"line":3118,"offset":543391,"length":175,"previous":"M18-GAP-00422","next":"M18-GAP-00424"},"M18-GAP-00424":{"line":3119,"offset":543566,"length":181,"previous":"M18-GAP-00423","next":"M18-GAP-00425"},"M18-GAP-00425":{"line":3120,"offset":543747,"length":175,"previous":"M18-GAP-00424","next":"M18-GAP-00426"},"M18-GAP-00426":{"line":3121,"offset":543922,"length":178,"previous":"M18-GAP-00425","next":"M18-GAP-00427"},"M18-GAP-00427":{"line":3122,"offset":544100,"length":173,"previous":"M18-GAP-00426","next":"M18-GAP-00428"},"M18-GAP-00428":{"line":3123,"offset":544273,"length":175,"previous":"M18-GAP-00427","next":"M18-GAP-00429"},"M18-GAP-00429":{"line":3124,"offset":544448,"length":175,"previous":"M18-GAP-00428","next":"M18-GAP-00430"},"M18-GAP-00430":{"line":3125,"offset":544623,"length":175,"previous":"M18-GAP-00429","next":"M18-GAP-00431"},"M18-GAP-00431":{"line":3126,"offset":544798,"length":173,"previous":"M18-GAP-00430","next":"M18-GAP-00432"},"M18-GAP-00432":{"line":3127,"offset":544971,"length":177,"previous":"M18-GAP-00431","next":"M18-GAP-00433"},"M18-GAP-00433":{"line":3128,"offset":545148,"length":174,"previous":"M18-GAP-00432","next":"M18-GAP-00434"},"M18-GAP-00434":{"line":3129,"offset":545322,"length":180,"previous":"M18-GAP-00433","next":"M18-GAP-00435"},"M18-GAP-00435":{"line":3130,"offset":545502,"length":180,"previous":"M18-GAP-00434","next":"M18-GAP-00436"},"M18-GAP-00436":{"line":3131,"offset":545682,"length":172,"previous":"M18-GAP-00435","next":"M18-GAP-00437"},"M18-GAP-00437":{"line":3132,"offset":545854,"length":175,"previous":"M18-GAP-00436","next":"M18-GAP-00438"},"M18-GAP-00438":{"line":3133,"offset":546029,"length":172,"previous":"M18-GAP-00437","next":"M18-GAP-00439"},"M18-GAP-00439":{"line":3134,"offset":546201,"length":178,"previous":"M18-GAP-00438","next":"M18-GAP-00440"},"M18-GAP-00440":{"line":3135,"offset":546379,"length":185,"previous":"M18-GAP-00439","next":"M18-GAP-00441"},"M18-GAP-00441":{"line":3136,"offset":546564,"length":177,"previous":"M18-GAP-00440","next":"M18-GAP-00442"},"M18-GAP-00442":{"line":3137,"offset":546741,"length":179,"previous":"M18-GAP-00441","next":"M18-GAP-00443"},"M18-GAP-00443":{"line":3138,"offset":546920,"length":182,"previous":"M18-GAP-00442","next":"M18-GAP-00444"},"M18-GAP-00444":{"line":3139,"offset":547102,"length":178,"previous":"M18-GAP-00443","next":"M18-GAP-00445"},"M18-GAP-00445":{"line":3140,"offset":547280,"length":183,"previous":"M18-GAP-00444","next":"M18-GAP-00446"},"M18-GAP-00446":{"line":3141,"offset":547463,"length":185,"previous":"M18-GAP-00445","next":"M18-GAP-00447"},"M18-GAP-00447":{"line":3142,"offset":547648,"length":177,"previous":"M18-GAP-00446","next":"M18-GAP-00448"},"M18-GAP-00448":{"line":3143,"offset":547825,"length":183,"previous":"M18-GAP-00447","next":"M18-GAP-00449"},"M18-GAP-00449":{"line":3144,"offset":548008,"length":180,"previous":"M18-GAP-00448","next":"M18-GAP-00450"},"M18-GAP-00450":{"line":3145,"offset":548188,"length":177,"previous":"M18-GAP-00449","next":"M18-GAP-00451"},"M18-GAP-00451":{"line":3146,"offset":548365,"length":176,"previous":"M18-GAP-00450","next":"M19-GAP-00001"},"M19-GAP-00001":{"line":3147,"offset":548541,"length":153,"previous":"M18-GAP-00451","next":"M19-GAP-00002"},"M19-GAP-00002":{"line":3148,"offset":548694,"length":155,"previous":"M19-GAP-00001","next":"M19-GAP-00003"},"M19-GAP-00003":{"line":3149,"offset":548849,"length":152,"previous":"M19-GAP-00002","next":"M19-GAP-00004"},"M19-GAP-00004":{"line":3150,"offset":549001,"length":152,"previous":"M19-GAP-00003","next":"M19-GAP-00005"},"M19-GAP-00005":{"line":3151,"offset":549153,"length":153,"previous":"M19-GAP-00004","next":"M19-GAP-00006"},"M19-GAP-00006":{"line":3152,"offset":549306,"length":159,"previous":"M19-GAP-00005","next":"M19-GAP-00007"},"M19-GAP-00007":{"line":3153,"offset":549465,"length":149,"previous":"M19-GAP-00006","next":"M19-GAP-00008"},"M19-GAP-00008":{"line":3154,"offset":549614,"length":152,"previous":"M19-GAP-00007","next":"M19-GAP-00009"},"M19-GAP-00009":{"line":3155,"offset":549766,"length":150,"previous":"M19-GAP-00008","next":"M19-GAP-00010"},"M19-GAP-00010":{"line":3156,"offset":549916,"length":154,"previous":"M19-GAP-00009","next":"M19-GAP-00011"},"M19-GAP-00011":{"line":3157,"offset":550070,"length":151,"previous":"M19-GAP-00010","next":"M19-GAP-00012"},"M19-GAP-00012":{"line":3158,"offset":550221,"length":155,"previous":"M19-GAP-00011","next":"M19-GAP-00013"},"M19-GAP-00013":{"line":3159,"offset":550376,"length":156,"previous":"M19-GAP-00012","next":"M19-GAP-00014"},"M19-GAP-00014":{"line":3160,"offset":550532,"length":154,"previous":"M19-GAP-00013","next":"M19-GAP-00015"},"M19-GAP-00015":{"line":3161,"offset":550686,"length":163,"previous":"M19-GAP-00014","next":"M19-GAP-00016"},"M19-GAP-00016":{"line":3162,"offset":550849,"length":157,"previous":"M19-GAP-00015","next":"M19-GAP-00017"},"M19-GAP-00017":{"line":3163,"offset":551006,"length":152,"previous":"M19-GAP-00016","next":"M19-GAP-00018"},"M19-GAP-00018":{"line":3164,"offset":551158,"length":154,"previous":"M19-GAP-00017","next":"M19-GAP-00019"},"M19-GAP-00019":{"line":3165,"offset":551312,"length":151,"previous":"M19-GAP-00018","next":"M19-GAP-00020"},"M19-GAP-00020":{"line":3166,"offset":551463,"length":153,"previous":"M19-GAP-00019","next":"M20-GAP-00001"},"M20-GAP-00001":{"line":3167,"offset":551616,"length":161,"previous":"M19-GAP-00020","next":"M20-GAP-00002"},"M20-GAP-00002":{"line":3168,"offset":551777,"length":167,"previous":"M20-GAP-00001","next":"M20-GAP-00003"},"M20-GAP-00003":{"line":3169,"offset":551944,"length":157,"previous":"M20-GAP-00002","next":"M20-GAP-00004"},"M20-GAP-00004":{"line":3170,"offset":552101,"length":169,"previous":"M20-GAP-00003","next":"M20-GAP-00005"},"M20-GAP-00005":{"line":3171,"offset":552270,"length":162,"previous":"M20-GAP-00004","next":"M20-GAP-00006"},"M20-GAP-00006":{"line":3172,"offset":552432,"length":171,"previous":"M20-GAP-00005","next":"M20-GAP-00007"},"M20-GAP-00007":{"line":3173,"offset":552603,"length":162,"previous":"M20-GAP-00006","next":"M20-GAP-00008"},"M20-GAP-00008":{"line":3174,"offset":552765,"length":169,"previous":"M20-GAP-00007","next":"M20-GAP-00009"},"M20-GAP-00009":{"line":3175,"offset":552934,"length":161,"previous":"M20-GAP-00008","next":"M20-GAP-00010"},"M20-GAP-00010":{"line":3176,"offset":553095,"length":161,"previous":"M20-GAP-00009","next":"M20-GAP-00011"},"M20-GAP-00011":{"line":3177,"offset":553256,"length":158,"previous":"M20-GAP-00010","next":"M20-GAP-00012"},"M20-GAP-00012":{"line":3178,"offset":553414,"length":162,"previous":"M20-GAP-00011","next":"M20-GAP-00013"},"M20-GAP-00013":{"line":3179,"offset":553576,"length":171,"previous":"M20-GAP-00012","next":"M20-GAP-00014"},"M20-GAP-00014":{"line":3180,"offset":553747,"length":162,"previous":"M20-GAP-00013","next":"M20-GAP-00015"},"M20-GAP-00015":{"line":3181,"offset":553909,"length":162,"previous":"M20-GAP-00014","next":"M20-GAP-00016"},"M20-GAP-00016":{"line":3182,"offset":554071,"length":166,"previous":"M20-GAP-00015","next":"M20-GAP-00017"},"M20-GAP-00017":{"line":3183,"offset":554237,"length":166,"previous":"M20-GAP-00016","next":"M20-GAP-00018"},"M20-GAP-00018":{"line":3184,"offset":554403,"length":166,"previous":"M20-GAP-00017","next":"M20-GAP-00019"},"M20-GAP-00019":{"line":3185,"offset":554569,"length":174,"previous":"M20-GAP-00018","next":"M20-GAP-00020"},"M20-GAP-00020":{"line":3186,"offset":554743,"length":175,"previous":"M20-GAP-00019","next":"M20-GAP-00021"},"M20-GAP-00021":{"line":3187,"offset":554918,"length":169,"previous":"M20-GAP-00020","next":"M20-GAP-00022"},"M20-GAP-00022":{"line":3188,"offset":555087,"length":168,"previous":"M20-GAP-00021","next":"M20-GAP-00023"},"M20-GAP-00023":{"line":3189,"offset":555255,"length":169,"previous":"M20-GAP-00022","next":"M20-GAP-00024"},"M20-GAP-00024":{"line":3190,"offset":555424,"length":164,"previous":"M20-GAP-00023","next":"M20-GAP-00025"},"M20-GAP-00025":{"line":3191,"offset":555588,"length":162,"previous":"M20-GAP-00024","next":"M20-GAP-00026"},"M20-GAP-00026":{"line":3192,"offset":555750,"length":168,"previous":"M20-GAP-00025","next":"M20-GAP-00027"},"M20-GAP-00027":{"line":3193,"offset":555918,"length":170,"previous":"M20-GAP-00026","next":"M20-GAP-00028"},"M20-GAP-00028":{"line":3194,"offset":556088,"length":166,"previous":"M20-GAP-00027","next":"M20-GAP-00029"},"M20-GAP-00029":{"line":3195,"offset":556254,"length":162,"previous":"M20-GAP-00028","next":"M20-GAP-00030"},"M20-GAP-00030":{"line":3196,"offset":556416,"length":176,"previous":"M20-GAP-00029","next":"M20-GAP-00031"},"M20-GAP-00031":{"line":3197,"offset":556592,"length":173,"previous":"M20-GAP-00030","next":"M20-GAP-00032"},"M20-GAP-00032":{"line":3198,"offset":556765,"length":173,"previous":"M20-GAP-00031","next":"M20-GAP-00033"},"M20-GAP-00033":{"line":3199,"offset":556938,"length":175,"previous":"M20-GAP-00032","next":"M20-GAP-00034"},"M20-GAP-00034":{"line":3200,"offset":557113,"length":174,"previous":"M20-GAP-00033","next":"M20-GAP-00035"},"M20-GAP-00035":{"line":3201,"offset":557287,"length":172,"previous":"M20-GAP-00034","next":"M20-GAP-00036"},"M20-GAP-00036":{"line":3202,"offset":557459,"length":176,"previous":"M20-GAP-00035","next":"M20-GAP-00037"},"M20-GAP-00037":{"line":3203,"offset":557635,"length":177,"previous":"M20-GAP-00036","next":"M20-GAP-00038"},"M20-GAP-00038":{"line":3204,"offset":557812,"length":172,"previous":"M20-GAP-00037","next":"M20-GAP-00039"},"M20-GAP-00039":{"line":3205,"offset":557984,"length":176,"previous":"M20-GAP-00038","next":"M20-GAP-00040"},"M20-GAP-00040":{"line":3206,"offset":558160,"length":177,"previous":"M20-GAP-00039","next":"M20-GAP-00041"},"M20-GAP-00041":{"line":3207,"offset":558337,"length":174,"previous":"M20-GAP-00040","next":"M20-GAP-00042"},"M20-GAP-00042":{"line":3208,"offset":558511,"length":157,"previous":"M20-GAP-00041","next":"M20-GAP-00043"},"M20-GAP-00043":{"line":3209,"offset":558668,"length":162,"previous":"M20-GAP-00042","next":"M20-GAP-00044"},"M20-GAP-00044":{"line":3210,"offset":558830,"length":168,"previous":"M20-GAP-00043","next":"M20-GAP-00045"},"M20-GAP-00045":{"line":3211,"offset":558998,"length":161,"previous":"M20-GAP-00044","next":"M20-GAP-00046"},"M20-GAP-00046":{"line":3212,"offset":559159,"length":164,"previous":"M20-GAP-00045","next":"M20-GAP-00047"},"M20-GAP-00047":{"line":3213,"offset":559323,"length":173,"previous":"M20-GAP-00046","next":"M20-GAP-00048"},"M20-GAP-00048":{"line":3214,"offset":559496,"length":160,"previous":"M20-GAP-00047","next":"M20-GAP-00049"},"M20-GAP-00049":{"line":3215,"offset":559656,"length":165,"previous":"M20-GAP-00048","next":"M20-GAP-00050"},"M20-GAP-00050":{"line":3216,"offset":559821,"length":176,"previous":"M20-GAP-00049","next":"M20-GAP-00051"},"M20-GAP-00051":{"line":3217,"offset":559997,"length":177,"previous":"M20-GAP-00050","next":"M20-GAP-00052"},"M20-GAP-00052":{"line":3218,"offset":560174,"length":163,"previous":"M20-GAP-00051","next":"M20-GAP-00053"},"M20-GAP-00053":{"line":3219,"offset":560337,"length":171,"previous":"M20-GAP-00052","next":"M20-GAP-00054"},"M20-GAP-00054":{"line":3220,"offset":560508,"length":164,"previous":"M20-GAP-00053","next":"M20-GAP-00055"},"M20-GAP-00055":{"line":3221,"offset":560672,"length":163,"previous":"M20-GAP-00054","next":"M20-GAP-00056"},"M20-GAP-00056":{"line":3222,"offset":560835,"length":159,"previous":"M20-GAP-00055","next":"M20-GAP-00057"},"M20-GAP-00057":{"line":3223,"offset":560994,"length":163,"previous":"M20-GAP-00056","next":"M20-GAP-00058"},"M20-GAP-00058":{"line":3224,"offset":561157,"length":160,"previous":"M20-GAP-00057","next":"M20-GAP-00059"},"M20-GAP-00059":{"line":3225,"offset":561317,"length":168,"previous":"M20-GAP-00058","next":"M20-GAP-00060"},"M20-GAP-00060":{"line":3226,"offset":561485,"length":164,"previous":"M20-GAP-00059","next":"M20-GAP-00061"},"M20-GAP-00061":{"line":3227,"offset":561649,"length":163,"previous":"M20-GAP-00060","next":"M20-GAP-00062"},"M20-GAP-00062":{"line":3228,"offset":561812,"length":165,"previous":"M20-GAP-00061","next":"M20-GAP-00063"},"M20-GAP-00063":{"line":3229,"offset":561977,"length":171,"previous":"M20-GAP-00062","next":"M20-GAP-00064"},"M20-GAP-00064":{"line":3230,"offset":562148,"length":165,"previous":"M20-GAP-00063","next":"M20-GAP-00065"},"M20-GAP-00065":{"line":3231,"offset":562313,"length":165,"previous":"M20-GAP-00064","next":"M20-GAP-00066"},"M20-GAP-00066":{"line":3232,"offset":562478,"length":152,"previous":"M20-GAP-00065","next":"M20-GAP-00067"},"M20-GAP-00067":{"line":3233,"offset":562630,"length":159,"previous":"M20-GAP-00066","next":"M20-GAP-00068"},"M20-GAP-00068":{"line":3234,"offset":562789,"length":159,"previous":"M20-GAP-00067","next":"M20-GAP-00069"},"M20-GAP-00069":{"line":3235,"offset":562948,"length":160,"previous":"M20-GAP-00068","next":"M20-GAP-00070"},"M20-GAP-00070":{"line":3236,"offset":563108,"length":154,"previous":"M20-GAP-00069","next":"M20-GAP-00071"},"M20-GAP-00071":{"line":3237,"offset":563262,"length":157,"previous":"M20-GAP-00070","next":"M20-GAP-00072"},"M20-GAP-00072":{"line":3238,"offset":563419,"length":159,"previous":"M20-GAP-00071","next":"M20-GAP-00073"},"M20-GAP-00073":{"line":3239,"offset":563578,"length":154,"previous":"M20-GAP-00072","next":"M20-GAP-00074"},"M20-GAP-00074":{"line":3240,"offset":563732,"length":160,"previous":"M20-GAP-00073","next":"M20-GAP-00075"},"M20-GAP-00075":{"line":3241,"offset":563892,"length":162,"previous":"M20-GAP-00074","next":"M20-GAP-00076"},"M20-GAP-00076":{"line":3242,"offset":564054,"length":153,"previous":"M20-GAP-00075","next":"M20-GAP-00077"},"M20-GAP-00077":{"line":3243,"offset":564207,"length":154,"previous":"M20-GAP-00076","next":"M20-GAP-00078"},"M20-GAP-00078":{"line":3244,"offset":564361,"length":153,"previous":"M20-GAP-00077","next":"M20-GAP-00079"},"M20-GAP-00079":{"line":3245,"offset":564514,"length":153,"previous":"M20-GAP-00078","next":"M20-GAP-00080"},"M20-GAP-00080":{"line":3246,"offset":564667,"length":154,"previous":"M20-GAP-00079","next":"M20-GAP-00081"},"M20-GAP-00081":{"line":3247,"offset":564821,"length":158,"previous":"M20-GAP-00080","next":"M20-GAP-00082"},"M20-GAP-00082":{"line":3248,"offset":564979,"length":157,"previous":"M20-GAP-00081","next":"M20-GAP-00083"},"M20-GAP-00083":{"line":3249,"offset":565136,"length":157,"previous":"M20-GAP-00082","next":"M20-GAP-00084"},"M20-GAP-00084":{"line":3250,"offset":565293,"length":154,"previous":"M20-GAP-00083","next":"M20-GAP-00085"},"M20-GAP-00085":{"line":3251,"offset":565447,"length":154,"previous":"M20-GAP-00084","next":"M20-GAP-00086"},"M20-GAP-00086":{"line":3252,"offset":565601,"length":154,"previous":"M20-GAP-00085","next":"M20-GAP-00087"},"M20-GAP-00087":{"line":3253,"offset":565755,"length":157,"previous":"M20-GAP-00086","next":"M20-GAP-00088"},"M20-GAP-00088":{"line":3254,"offset":565912,"length":153,"previous":"M20-GAP-00087","next":"M20-GAP-00089"},"M20-GAP-00089":{"line":3255,"offset":566065,"length":153,"previous":"M20-GAP-00088","next":"M21-GAP-00001"},"M21-GAP-00001":{"line":3256,"offset":566218,"length":156,"previous":"M20-GAP-00089","next":"M21-GAP-00002"},"M21-GAP-00002":{"line":3257,"offset":566374,"length":152,"previous":"M21-GAP-00001","next":"M21-GAP-00003"},"M21-GAP-00003":{"line":3258,"offset":566526,"length":161,"previous":"M21-GAP-00002","next":"M21-GAP-00004"},"M21-GAP-00004":{"line":3259,"offset":566687,"length":150,"previous":"M21-GAP-00003","next":"M21-GAP-00005"},"M21-GAP-00005":{"line":3260,"offset":566837,"length":157,"previous":"M21-GAP-00004","next":"M21-GAP-00006"},"M21-GAP-00006":{"line":3261,"offset":566994,"length":157,"previous":"M21-GAP-00005","next":"M21-GAP-00007"},"M21-GAP-00007":{"line":3262,"offset":567151,"length":157,"previous":"M21-GAP-00006","next":"M21-GAP-00008"},"M21-GAP-00008":{"line":3263,"offset":567308,"length":149,"previous":"M21-GAP-00007","next":"M21-GAP-00009"},"M21-GAP-00009":{"line":3264,"offset":567457,"length":155,"previous":"M21-GAP-00008","next":"M21-GAP-00010"},"M21-GAP-00010":{"line":3265,"offset":567612,"length":156,"previous":"M21-GAP-00009","next":"M21-GAP-00011"},"M21-GAP-00011":{"line":3266,"offset":567768,"length":153,"previous":"M21-GAP-00010","next":"M21-GAP-00012"},"M21-GAP-00012":{"line":3267,"offset":567921,"length":156,"previous":"M21-GAP-00011","next":"M21-GAP-00013"},"M21-GAP-00013":{"line":3268,"offset":568077,"length":155,"previous":"M21-GAP-00012","next":"M21-GAP-00014"},"M21-GAP-00014":{"line":3269,"offset":568232,"length":160,"previous":"M21-GAP-00013","next":"M21-GAP-00015"},"M21-GAP-00015":{"line":3270,"offset":568392,"length":156,"previous":"M21-GAP-00014","next":"M21-GAP-00016"},"M21-GAP-00016":{"line":3271,"offset":568548,"length":154,"previous":"M21-GAP-00015","next":"M21-GAP-00017"},"M21-GAP-00017":{"line":3272,"offset":568702,"length":156,"previous":"M21-GAP-00016","next":"M21-GAP-00018"},"M21-GAP-00018":{"line":3273,"offset":568858,"length":151,"previous":"M21-GAP-00017","next":"M21-GAP-00019"},"M21-GAP-00019":{"line":3274,"offset":569009,"length":152,"previous":"M21-GAP-00018","next":"M21-GAP-00020"},"M21-GAP-00020":{"line":3275,"offset":569161,"length":172,"previous":"M21-GAP-00019","next":"M21-GAP-00021"},"M21-GAP-00021":{"line":3276,"offset":569333,"length":171,"previous":"M21-GAP-00020","next":"M21-GAP-00022"},"M21-GAP-00022":{"line":3277,"offset":569504,"length":173,"previous":"M21-GAP-00021","next":"M21-GAP-00023"},"M21-GAP-00023":{"line":3278,"offset":569677,"length":176,"previous":"M21-GAP-00022","next":"M21-GAP-00024"},"M21-GAP-00024":{"line":3279,"offset":569853,"length":174,"previous":"M21-GAP-00023","next":"M21-GAP-00025"},"M21-GAP-00025":{"line":3280,"offset":570027,"length":176,"previous":"M21-GAP-00024","next":"M21-GAP-00026"},"M21-GAP-00026":{"line":3281,"offset":570203,"length":173,"previous":"M21-GAP-00025","next":"M21-GAP-00027"},"M21-GAP-00027":{"line":3282,"offset":570376,"length":176,"previous":"M21-GAP-00026","next":"M21-GAP-00028"},"M21-GAP-00028":{"line":3283,"offset":570552,"length":165,"previous":"M21-GAP-00027","next":"M21-GAP-00029"},"M21-GAP-00029":{"line":3284,"offset":570717,"length":166,"previous":"M21-GAP-00028","next":"M21-GAP-00030"},"M21-GAP-00030":{"line":3285,"offset":570883,"length":167,"previous":"M21-GAP-00029","next":"M21-GAP-00031"},"M21-GAP-00031":{"line":3286,"offset":571050,"length":177,"previous":"M21-GAP-00030","next":"M21-GAP-00032"},"M21-GAP-00032":{"line":3287,"offset":571227,"length":165,"previous":"M21-GAP-00031","next":"M21-GAP-00033"},"M21-GAP-00033":{"line":3288,"offset":571392,"length":166,"previous":"M21-GAP-00032","next":"M21-GAP-00034"},"M21-GAP-00034":{"line":3289,"offset":571558,"length":166,"previous":"M21-GAP-00033","next":"M21-GAP-00035"},"M21-GAP-00035":{"line":3290,"offset":571724,"length":167,"previous":"M21-GAP-00034","next":"M21-GAP-00036"},"M21-GAP-00036":{"line":3291,"offset":571891,"length":170,"previous":"M21-GAP-00035","next":"M21-GAP-00037"},"M21-GAP-00037":{"line":3292,"offset":572061,"length":170,"previous":"M21-GAP-00036","next":"M21-GAP-00038"},"M21-GAP-00038":{"line":3293,"offset":572231,"length":178,"previous":"M21-GAP-00037","next":"M21-GAP-00039"},"M21-GAP-00039":{"line":3294,"offset":572409,"length":178,"previous":"M21-GAP-00038","next":"M21-GAP-00040"},"M21-GAP-00040":{"line":3295,"offset":572587,"length":176,"previous":"M21-GAP-00039","next":"M21-GAP-00041"},"M21-GAP-00041":{"line":3296,"offset":572763,"length":166,"previous":"M21-GAP-00040","next":"M21-GAP-00042"},"M21-GAP-00042":{"line":3297,"offset":572929,"length":174,"previous":"M21-GAP-00041","next":"M21-GAP-00043"},"M21-GAP-00043":{"line":3298,"offset":573103,"length":169,"previous":"M21-GAP-00042","next":"M21-GAP-00044"},"M21-GAP-00044":{"line":3299,"offset":573272,"length":163,"previous":"M21-GAP-00043","next":"M21-GAP-00045"},"M21-GAP-00045":{"line":3300,"offset":573435,"length":177,"previous":"M21-GAP-00044","next":"M21-GAP-00046"},"M21-GAP-00046":{"line":3301,"offset":573612,"length":177,"previous":"M21-GAP-00045","next":"M21-GAP-00047"},"M21-GAP-00047":{"line":3302,"offset":573789,"length":163,"previous":"M21-GAP-00046","next":"M21-GAP-00048"},"M21-GAP-00048":{"line":3303,"offset":573952,"length":163,"previous":"M21-GAP-00047","next":"M21-GAP-00049"},"M21-GAP-00049":{"line":3304,"offset":574115,"length":163,"previous":"M21-GAP-00048","next":"M21-GAP-00050"},"M21-GAP-00050":{"line":3305,"offset":574278,"length":163,"previous":"M21-GAP-00049","next":"M21-GAP-00051"},"M21-GAP-00051":{"line":3306,"offset":574441,"length":163,"previous":"M21-GAP-00050","next":"M21-GAP-00052"},"M21-GAP-00052":{"line":3307,"offset":574604,"length":163,"previous":"M21-GAP-00051","next":"M21-GAP-00053"},"M21-GAP-00053":{"line":3308,"offset":574767,"length":184,"previous":"M21-GAP-00052","next":"M21-GAP-00054"},"M21-GAP-00054":{"line":3309,"offset":574951,"length":184,"previous":"M21-GAP-00053","next":"M21-GAP-00055"},"M21-GAP-00055":{"line":3310,"offset":575135,"length":187,"previous":"M21-GAP-00054","next":"M21-GAP-00056"},"M21-GAP-00056":{"line":3311,"offset":575322,"length":194,"previous":"M21-GAP-00055","next":"M21-GAP-00057"},"M21-GAP-00057":{"line":3312,"offset":575516,"length":189,"previous":"M21-GAP-00056","next":"M21-GAP-00058"},"M21-GAP-00058":{"line":3313,"offset":575705,"length":189,"previous":"M21-GAP-00057","next":"M21-GAP-00059"},"M21-GAP-00059":{"line":3314,"offset":575894,"length":209,"previous":"M21-GAP-00058","next":"M21-GAP-00060"},"M21-GAP-00060":{"line":3315,"offset":576103,"length":211,"previous":"M21-GAP-00059","next":"M21-GAP-00061"},"M21-GAP-00061":{"line":3316,"offset":576314,"length":215,"previous":"M21-GAP-00060","next":"M21-GAP-00062"},"M21-GAP-00062":{"line":3317,"offset":576529,"length":205,"previous":"M21-GAP-00061","next":"M21-GAP-00063"},"M21-GAP-00063":{"line":3318,"offset":576734,"length":202,"previous":"M21-GAP-00062","next":"M21-GAP-00064"},"M21-GAP-00064":{"line":3319,"offset":576936,"length":204,"previous":"M21-GAP-00063","next":"M21-GAP-00065"},"M21-GAP-00065":{"line":3320,"offset":577140,"length":204,"previous":"M21-GAP-00064","next":"M21-GAP-00066"},"M21-GAP-00066":{"line":3321,"offset":577344,"length":204,"previous":"M21-GAP-00065","next":"M21-GAP-00067"},"M21-GAP-00067":{"line":3322,"offset":577548,"length":199,"previous":"M21-GAP-00066","next":"M21-GAP-00068"},"M21-GAP-00068":{"line":3323,"offset":577747,"length":212,"previous":"M21-GAP-00067","next":"M21-GAP-00069"},"M21-GAP-00069":{"line":3324,"offset":577959,"length":202,"previous":"M21-GAP-00068","next":"M21-GAP-00070"},"M21-GAP-00070":{"line":3325,"offset":578161,"length":201,"previous":"M21-GAP-00069","next":"M21-GAP-00071"},"M21-GAP-00071":{"line":3326,"offset":578362,"length":204,"previous":"M21-GAP-00070","next":"M21-GAP-00072"},"M21-GAP-00072":{"line":3327,"offset":578566,"length":199,"previous":"M21-GAP-00071","next":"M21-GAP-00073"},"M21-GAP-00073":{"line":3328,"offset":578765,"length":200,"previous":"M21-GAP-00072","next":"M21-GAP-00074"},"M21-GAP-00074":{"line":3329,"offset":578965,"length":199,"previous":"M21-GAP-00073","next":"M21-GAP-00075"},"M21-GAP-00075":{"line":3330,"offset":579164,"length":199,"previous":"M21-GAP-00074","next":"M21-GAP-00076"},"M21-GAP-00076":{"line":3331,"offset":579363,"length":199,"previous":"M21-GAP-00075","next":"M21-GAP-00077"},"M21-GAP-00077":{"line":3332,"offset":579562,"length":199,"previous":"M21-GAP-00076","next":"M21-GAP-00078"},"M21-GAP-00078":{"line":3333,"offset":579761,"length":211,"previous":"M21-GAP-00077","next":"M21-GAP-00079"},"M21-GAP-00079":{"line":3334,"offset":579972,"length":214,"previous":"M21-GAP-00078","next":"M21-GAP-00080"},"M21-GAP-00080":{"line":3335,"offset":580186,"length":206,"previous":"M21-GAP-00079","next":"M21-GAP-00081"},"M21-GAP-00081":{"line":3336,"offset":580392,"length":206,"previous":"M21-GAP-00080","next":"M21-GAP-00082"},"M21-GAP-00082":{"line":3337,"offset":580598,"length":206,"previous":"M21-GAP-00081","next":"M21-GAP-00083"},"M21-GAP-00083":{"line":3338,"offset":580804,"length":206,"previous":"M21-GAP-00082","next":"M21-GAP-00084"},"M21-GAP-00084":{"line":3339,"offset":581010,"length":199,"previous":"M21-GAP-00083","next":"M21-GAP-00085"},"M21-GAP-00085":{"line":3340,"offset":581209,"length":200,"previous":"M21-GAP-00084","next":"M21-GAP-00086"},"M21-GAP-00086":{"line":3341,"offset":581409,"length":204,"previous":"M21-GAP-00085","next":"M21-GAP-00087"},"M21-GAP-00087":{"line":3342,"offset":581613,"length":215,"previous":"M21-GAP-00086","next":"M21-GAP-00088"},"M21-GAP-00088":{"line":3343,"offset":581828,"length":212,"previous":"M21-GAP-00087","next":"M21-GAP-00089"},"M21-GAP-00089":{"line":3344,"offset":582040,"length":210,"previous":"M21-GAP-00088","next":"M21-GAP-00090"},"M21-GAP-00090":{"line":3345,"offset":582250,"length":208,"previous":"M21-GAP-00089","next":"M21-GAP-00091"},"M21-GAP-00091":{"line":3346,"offset":582458,"length":211,"previous":"M21-GAP-00090","next":"M21-GAP-00092"},"M21-GAP-00092":{"line":3347,"offset":582669,"length":205,"previous":"M21-GAP-00091","next":"M21-GAP-00093"},"M21-GAP-00093":{"line":3348,"offset":582874,"length":199,"previous":"M21-GAP-00092","next":"M21-GAP-00094"},"M21-GAP-00094":{"line":3349,"offset":583073,"length":202,"previous":"M21-GAP-00093","next":"M21-GAP-00095"},"M21-GAP-00095":{"line":3350,"offset":583275,"length":214,"previous":"M21-GAP-00094","next":"M21-GAP-00096"},"M21-GAP-00096":{"line":3351,"offset":583489,"length":204,"previous":"M21-GAP-00095","next":"M21-GAP-00097"},"M21-GAP-00097":{"line":3352,"offset":583693,"length":204,"previous":"M21-GAP-00096","next":"M21-GAP-00098"},"M21-GAP-00098":{"line":3353,"offset":583897,"length":204,"previous":"M21-GAP-00097","next":"M21-GAP-00099"},"M21-GAP-00099":{"line":3354,"offset":584101,"length":203,"previous":"M21-GAP-00098","next":"M21-GAP-00100"},"M21-GAP-00100":{"line":3355,"offset":584304,"length":203,"previous":"M21-GAP-00099","next":"M21-GAP-00101"},"M21-GAP-00101":{"line":3356,"offset":584507,"length":202,"previous":"M21-GAP-00100","next":"M21-GAP-00102"},"M21-GAP-00102":{"line":3357,"offset":584709,"length":204,"previous":"M21-GAP-00101","next":"M21-GAP-00103"},"M21-GAP-00103":{"line":3358,"offset":584913,"length":207,"previous":"M21-GAP-00102","next":"M21-GAP-00104"},"M21-GAP-00104":{"line":3359,"offset":585120,"length":200,"previous":"M21-GAP-00103","next":"M21-GAP-00105"},"M21-GAP-00105":{"line":3360,"offset":585320,"length":209,"previous":"M21-GAP-00104","next":"M21-GAP-00106"},"M21-GAP-00106":{"line":3361,"offset":585529,"length":198,"previous":"M21-GAP-00105","next":"M21-GAP-00107"},"M21-GAP-00107":{"line":3362,"offset":585727,"length":203,"previous":"M21-GAP-00106","next":"M21-GAP-00108"},"M21-GAP-00108":{"line":3363,"offset":585930,"length":206,"previous":"M21-GAP-00107","next":"M21-GAP-00109"},"M21-GAP-00109":{"line":3364,"offset":586136,"length":205,"previous":"M21-GAP-00108","next":"M21-GAP-00110"},"M21-GAP-00110":{"line":3365,"offset":586341,"length":205,"previous":"M21-GAP-00109","next":"M21-GAP-00111"},"M21-GAP-00111":{"line":3366,"offset":586546,"length":190,"previous":"M21-GAP-00110","next":"M21-GAP-00112"},"M21-GAP-00112":{"line":3367,"offset":586736,"length":190,"previous":"M21-GAP-00111","next":"M21-GAP-00113"},"M21-GAP-00113":{"line":3368,"offset":586926,"length":190,"previous":"M21-GAP-00112","next":"M21-GAP-00114"},"M21-GAP-00114":{"line":3369,"offset":587116,"length":187,"previous":"M21-GAP-00113","next":"M21-GAP-00115"},"M21-GAP-00115":{"line":3370,"offset":587303,"length":204,"previous":"M21-GAP-00114","next":"M21-GAP-00116"},"M21-GAP-00116":{"line":3371,"offset":587507,"length":207,"previous":"M21-GAP-00115","next":"M21-GAP-00117"},"M21-GAP-00117":{"line":3372,"offset":587714,"length":207,"previous":"M21-GAP-00116","next":"M21-GAP-00118"},"M21-GAP-00118":{"line":3373,"offset":587921,"length":207,"previous":"M21-GAP-00117","next":"M21-GAP-00119"},"M21-GAP-00119":{"line":3374,"offset":588128,"length":207,"previous":"M21-GAP-00118","next":"M21-GAP-00120"},"M21-GAP-00120":{"line":3375,"offset":588335,"length":207,"previous":"M21-GAP-00119","next":"M21-GAP-00121"},"M21-GAP-00121":{"line":3376,"offset":588542,"length":207,"previous":"M21-GAP-00120","next":"M21-GAP-00122"},"M21-GAP-00122":{"line":3377,"offset":588749,"length":210,"previous":"M21-GAP-00121","next":"M21-GAP-00123"},"M21-GAP-00123":{"line":3378,"offset":588959,"length":210,"previous":"M21-GAP-00122","next":"M21-GAP-00124"},"M21-GAP-00124":{"line":3379,"offset":589169,"length":210,"previous":"M21-GAP-00123","next":"M21-GAP-00125"},"M21-GAP-00125":{"line":3380,"offset":589379,"length":209,"previous":"M21-GAP-00124","next":"M21-GAP-00126"},"M21-GAP-00126":{"line":3381,"offset":589588,"length":214,"previous":"M21-GAP-00125","next":"M21-GAP-00127"},"M21-GAP-00127":{"line":3382,"offset":589802,"length":214,"previous":"M21-GAP-00126","next":"M21-GAP-00128"},"M21-GAP-00128":{"line":3383,"offset":590016,"length":214,"previous":"M21-GAP-00127","next":"M21-GAP-00129"},"M21-GAP-00129":{"line":3384,"offset":590230,"length":214,"previous":"M21-GAP-00128","next":"M21-GAP-00130"},"M21-GAP-00130":{"line":3385,"offset":590444,"length":215,"previous":"M21-GAP-00129","next":"M21-GAP-00131"},"M21-GAP-00131":{"line":3386,"offset":590659,"length":208,"previous":"M21-GAP-00130","next":"M21-GAP-00132"},"M21-GAP-00132":{"line":3387,"offset":590867,"length":208,"previous":"M21-GAP-00131","next":"M21-GAP-00133"},"M21-GAP-00133":{"line":3388,"offset":591075,"length":208,"previous":"M21-GAP-00132","next":"M21-GAP-00134"},"M21-GAP-00134":{"line":3389,"offset":591283,"length":212,"previous":"M21-GAP-00133","next":"M21-GAP-00135"},"M21-GAP-00135":{"line":3390,"offset":591495,"length":212,"previous":"M21-GAP-00134","next":"M21-GAP-00136"},"M21-GAP-00136":{"line":3391,"offset":591707,"length":208,"previous":"M21-GAP-00135","next":"M21-GAP-00137"},"M21-GAP-00137":{"line":3392,"offset":591915,"length":205,"previous":"M21-GAP-00136","next":"M21-GAP-00138"},"M21-GAP-00138":{"line":3393,"offset":592120,"length":216,"previous":"M21-GAP-00137","next":"M21-GAP-00139"},"M21-GAP-00139":{"line":3394,"offset":592336,"length":210,"previous":"M21-GAP-00138","next":"M21-GAP-00140"},"M21-GAP-00140":{"line":3395,"offset":592546,"length":210,"previous":"M21-GAP-00139","next":"M21-GAP-00141"},"M21-GAP-00141":{"line":3396,"offset":592756,"length":187,"previous":"M21-GAP-00140","next":"M21-GAP-00142"},"M21-GAP-00142":{"line":3397,"offset":592943,"length":188,"previous":"M21-GAP-00141","next":"M21-GAP-00143"},"M21-GAP-00143":{"line":3398,"offset":593131,"length":189,"previous":"M21-GAP-00142","next":"M21-GAP-00144"},"M21-GAP-00144":{"line":3399,"offset":593320,"length":188,"previous":"M21-GAP-00143","next":"M21-GAP-00145"},"M21-GAP-00145":{"line":3400,"offset":593508,"length":203,"previous":"M21-GAP-00144","next":"M21-GAP-00146"},"M21-GAP-00146":{"line":3401,"offset":593711,"length":199,"previous":"M21-GAP-00145","next":"M21-GAP-00147"},"M21-GAP-00147":{"line":3402,"offset":593910,"length":199,"previous":"M21-GAP-00146","next":"M21-GAP-00148"},"M21-GAP-00148":{"line":3403,"offset":594109,"length":199,"previous":"M21-GAP-00147","next":"M21-GAP-00149"},"M21-GAP-00149":{"line":3404,"offset":594308,"length":199,"previous":"M21-GAP-00148","next":"M21-GAP-00150"},"M21-GAP-00150":{"line":3405,"offset":594507,"length":199,"previous":"M21-GAP-00149","next":"M21-GAP-00151"},"M21-GAP-00151":{"line":3406,"offset":594706,"length":199,"previous":"M21-GAP-00150","next":"M21-GAP-00152"},"M21-GAP-00152":{"line":3407,"offset":594905,"length":203,"previous":"M21-GAP-00151","next":"M21-GAP-00153"},"M21-GAP-00153":{"line":3408,"offset":595108,"length":203,"previous":"M21-GAP-00152","next":"M21-GAP-00154"},"M21-GAP-00154":{"line":3409,"offset":595311,"length":203,"previous":"M21-GAP-00153","next":"M21-GAP-00155"},"M21-GAP-00155":{"line":3410,"offset":595514,"length":204,"previous":"M21-GAP-00154","next":"M21-GAP-00156"},"M21-GAP-00156":{"line":3411,"offset":595718,"length":205,"previous":"M21-GAP-00155","next":"M21-GAP-00157"},"M21-GAP-00157":{"line":3412,"offset":595923,"length":201,"previous":"M21-GAP-00156","next":"M21-GAP-00158"},"M21-GAP-00158":{"line":3413,"offset":596124,"length":201,"previous":"M21-GAP-00157","next":"M21-GAP-00159"},"M21-GAP-00159":{"line":3414,"offset":596325,"length":201,"previous":"M21-GAP-00158","next":"M21-GAP-00160"},"M21-GAP-00160":{"line":3415,"offset":596526,"length":201,"previous":"M21-GAP-00159","next":"M21-GAP-00161"},"M21-GAP-00161":{"line":3416,"offset":596727,"length":201,"previous":"M21-GAP-00160","next":"M21-GAP-00162"},"M21-GAP-00162":{"line":3417,"offset":596928,"length":201,"previous":"M21-GAP-00161","next":"M21-GAP-00163"},"M21-GAP-00163":{"line":3418,"offset":597129,"length":204,"previous":"M21-GAP-00162","next":"M21-GAP-00164"},"M21-GAP-00164":{"line":3419,"offset":597333,"length":200,"previous":"M21-GAP-00163","next":"M21-GAP-00165"},"M21-GAP-00165":{"line":3420,"offset":597533,"length":200,"previous":"M21-GAP-00164","next":"M21-GAP-00166"},"M21-GAP-00166":{"line":3421,"offset":597733,"length":200,"previous":"M21-GAP-00165","next":"M21-GAP-00167"},"M21-GAP-00167":{"line":3422,"offset":597933,"length":200,"previous":"M21-GAP-00166","next":"M21-GAP-00168"},"M21-GAP-00168":{"line":3423,"offset":598133,"length":200,"previous":"M21-GAP-00167","next":"M21-GAP-00169"},"M21-GAP-00169":{"line":3424,"offset":598333,"length":203,"previous":"M21-GAP-00168","next":"M21-GAP-00170"},"M21-GAP-00170":{"line":3425,"offset":598536,"length":200,"previous":"M21-GAP-00169","next":"M21-GAP-00171"},"M21-GAP-00171":{"line":3426,"offset":598736,"length":204,"previous":"M21-GAP-00170","next":"M21-GAP-00172"},"M21-GAP-00172":{"line":3427,"offset":598940,"length":202,"previous":"M21-GAP-00171","next":"M21-GAP-00173"},"M21-GAP-00173":{"line":3428,"offset":599142,"length":208,"previous":"M21-GAP-00172","next":"M21-GAP-00174"},"M21-GAP-00174":{"line":3429,"offset":599350,"length":204,"previous":"M21-GAP-00173","next":"M21-GAP-00175"},"M21-GAP-00175":{"line":3430,"offset":599554,"length":204,"previous":"M21-GAP-00174","next":"M21-GAP-00176"},"M21-GAP-00176":{"line":3431,"offset":599758,"length":204,"previous":"M21-GAP-00175","next":"M21-GAP-00177"},"M21-GAP-00177":{"line":3432,"offset":599962,"length":204,"previous":"M21-GAP-00176","next":"M21-GAP-00178"},"M21-GAP-00178":{"line":3433,"offset":600166,"length":204,"previous":"M21-GAP-00177","next":"M21-GAP-00179"},"M21-GAP-00179":{"line":3434,"offset":600370,"length":204,"previous":"M21-GAP-00178","next":"M21-GAP-00180"},"M21-GAP-00180":{"line":3435,"offset":600574,"length":204,"previous":"M21-GAP-00179","next":"M21-GAP-00181"},"M21-GAP-00181":{"line":3436,"offset":600778,"length":204,"previous":"M21-GAP-00180","next":"M21-GAP-00182"},"M21-GAP-00182":{"line":3437,"offset":600982,"length":204,"previous":"M21-GAP-00181","next":"M21-GAP-00183"},"M21-GAP-00183":{"line":3438,"offset":601186,"length":204,"previous":"M21-GAP-00182","next":"M21-GAP-00184"},"M21-GAP-00184":{"line":3439,"offset":601390,"length":204,"previous":"M21-GAP-00183","next":"M21-GAP-00185"},"M21-GAP-00185":{"line":3440,"offset":601594,"length":204,"previous":"M21-GAP-00184","next":"M21-GAP-00186"},"M21-GAP-00186":{"line":3441,"offset":601798,"length":204,"previous":"M21-GAP-00185","next":"M21-GAP-00187"},"M21-GAP-00187":{"line":3442,"offset":602002,"length":204,"previous":"M21-GAP-00186","next":"M21-GAP-00188"},"M21-GAP-00188":{"line":3443,"offset":602206,"length":204,"previous":"M21-GAP-00187","next":"M21-GAP-00189"},"M21-GAP-00189":{"line":3444,"offset":602410,"length":193,"previous":"M21-GAP-00188","next":"M21-GAP-00190"},"M21-GAP-00190":{"line":3445,"offset":602603,"length":193,"previous":"M21-GAP-00189","next":"M21-GAP-00191"},"M21-GAP-00191":{"line":3446,"offset":602796,"length":193,"previous":"M21-GAP-00190","next":"M21-GAP-00192"},"M21-GAP-00192":{"line":3447,"offset":602989,"length":193,"previous":"M21-GAP-00191","next":"M21-GAP-00193"},"M21-GAP-00193":{"line":3448,"offset":603182,"length":193,"previous":"M21-GAP-00192","next":"M21-GAP-00194"},"M21-GAP-00194":{"line":3449,"offset":603375,"length":193,"previous":"M21-GAP-00193","next":"M21-GAP-00195"},"M21-GAP-00195":{"line":3450,"offset":603568,"length":193,"previous":"M21-GAP-00194","next":"M21-GAP-00196"},"M21-GAP-00196":{"line":3451,"offset":603761,"length":193,"previous":"M21-GAP-00195","next":"M21-GAP-00197"},"M21-GAP-00197":{"line":3452,"offset":603954,"length":193,"previous":"M21-GAP-00196","next":"M21-GAP-00198"},"M21-GAP-00198":{"line":3453,"offset":604147,"length":193,"previous":"M21-GAP-00197","next":"M21-GAP-00199"},"M21-GAP-00199":{"line":3454,"offset":604340,"length":207,"previous":"M21-GAP-00198","next":"M21-GAP-00200"},"M21-GAP-00200":{"line":3455,"offset":604547,"length":207,"previous":"M21-GAP-00199","next":"M21-GAP-00201"},"M21-GAP-00201":{"line":3456,"offset":604754,"length":207,"previous":"M21-GAP-00200","next":"M21-GAP-00202"},"M21-GAP-00202":{"line":3457,"offset":604961,"length":207,"previous":"M21-GAP-00201","next":"M21-GAP-00203"},"M21-GAP-00203":{"line":3458,"offset":605168,"length":207,"previous":"M21-GAP-00202","next":"M21-GAP-00204"},"M21-GAP-00204":{"line":3459,"offset":605375,"length":207,"previous":"M21-GAP-00203","next":"M21-GAP-00205"},"M21-GAP-00205":{"line":3460,"offset":605582,"length":207,"previous":"M21-GAP-00204","next":"M21-GAP-00206"},"M21-GAP-00206":{"line":3461,"offset":605789,"length":207,"previous":"M21-GAP-00205","next":"M21-GAP-00207"},"M21-GAP-00207":{"line":3462,"offset":605996,"length":207,"previous":"M21-GAP-00206","next":"M21-GAP-00208"},"M21-GAP-00208":{"line":3463,"offset":606203,"length":196,"previous":"M21-GAP-00207","next":"M21-GAP-00209"},"M21-GAP-00209":{"line":3464,"offset":606399,"length":196,"previous":"M21-GAP-00208","next":"M21-GAP-00210"},"M21-GAP-00210":{"line":3465,"offset":606595,"length":196,"previous":"M21-GAP-00209","next":"M21-GAP-00211"},"M21-GAP-00211":{"line":3466,"offset":606791,"length":196,"previous":"M21-GAP-00210","next":"M21-GAP-00212"},"M21-GAP-00212":{"line":3467,"offset":606987,"length":196,"previous":"M21-GAP-00211","next":"M21-GAP-00213"},"M21-GAP-00213":{"line":3468,"offset":607183,"length":196,"previous":"M21-GAP-00212","next":"M21-GAP-00214"},"M21-GAP-00214":{"line":3469,"offset":607379,"length":196,"previous":"M21-GAP-00213","next":"M21-GAP-00215"},"M21-GAP-00215":{"line":3470,"offset":607575,"length":196,"previous":"M21-GAP-00214","next":"M21-GAP-00216"},"M21-GAP-00216":{"line":3471,"offset":607771,"length":196,"previous":"M21-GAP-00215","next":"M21-GAP-00217"},"M21-GAP-00217":{"line":3472,"offset":607967,"length":206,"previous":"M21-GAP-00216","next":"M21-GAP-00218"},"M21-GAP-00218":{"line":3473,"offset":608173,"length":206,"previous":"M21-GAP-00217","next":"M21-GAP-00219"},"M21-GAP-00219":{"line":3474,"offset":608379,"length":206,"previous":"M21-GAP-00218","next":"M21-GAP-00220"},"M21-GAP-00220":{"line":3475,"offset":608585,"length":206,"previous":"M21-GAP-00219","next":"M21-GAP-00221"},"M21-GAP-00221":{"line":3476,"offset":608791,"length":206,"previous":"M21-GAP-00220","next":"M21-GAP-00222"},"M21-GAP-00222":{"line":3477,"offset":608997,"length":206,"previous":"M21-GAP-00221","next":"M21-GAP-00223"},"M21-GAP-00223":{"line":3478,"offset":609203,"length":206,"previous":"M21-GAP-00222","next":"M21-GAP-00224"},"M21-GAP-00224":{"line":3479,"offset":609409,"length":206,"previous":"M21-GAP-00223","next":"M21-GAP-00225"},"M21-GAP-00225":{"line":3480,"offset":609615,"length":206,"previous":"M21-GAP-00224","next":"M21-GAP-00226"},"M21-GAP-00226":{"line":3481,"offset":609821,"length":206,"previous":"M21-GAP-00225","next":"M21-GAP-00227"},"M21-GAP-00227":{"line":3482,"offset":610027,"length":195,"previous":"M21-GAP-00226","next":"M21-GAP-00228"},"M21-GAP-00228":{"line":3483,"offset":610222,"length":195,"previous":"M21-GAP-00227","next":"M21-GAP-00229"},"M21-GAP-00229":{"line":3484,"offset":610417,"length":195,"previous":"M21-GAP-00228","next":"M21-GAP-00230"},"M21-GAP-00230":{"line":3485,"offset":610612,"length":195,"previous":"M21-GAP-00229","next":"M21-GAP-00231"},"M21-GAP-00231":{"line":3486,"offset":610807,"length":195,"previous":"M21-GAP-00230","next":"M21-GAP-00232"},"M21-GAP-00232":{"line":3487,"offset":611002,"length":195,"previous":"M21-GAP-00231","next":"M21-GAP-00233"},"M21-GAP-00233":{"line":3488,"offset":611197,"length":195,"previous":"M21-GAP-00232","next":"M21-GAP-00234"},"M21-GAP-00234":{"line":3489,"offset":611392,"length":195,"previous":"M21-GAP-00233","next":"M21-GAP-00235"},"M21-GAP-00235":{"line":3490,"offset":611587,"length":195,"previous":"M21-GAP-00234","next":"M21-GAP-00236"},"M21-GAP-00236":{"line":3491,"offset":611782,"length":195,"previous":"M21-GAP-00235","next":"M21-GAP-00237"},"M21-GAP-00237":{"line":3492,"offset":611977,"length":188,"previous":"M21-GAP-00236","next":"M21-GAP-00238"},"M21-GAP-00238":{"line":3493,"offset":612165,"length":188,"previous":"M21-GAP-00237","next":"M21-GAP-00239"},"M21-GAP-00239":{"line":3494,"offset":612353,"length":188,"previous":"M21-GAP-00238","next":"M21-GAP-00240"},"M21-GAP-00240":{"line":3495,"offset":612541,"length":192,"previous":"M21-GAP-00239","next":"M21-GAP-00241"},"M21-GAP-00241":{"line":3496,"offset":612733,"length":199,"previous":"M21-GAP-00240","next":"M21-GAP-00242"},"M21-GAP-00242":{"line":3497,"offset":612932,"length":199,"previous":"M21-GAP-00241","next":"M21-GAP-00243"},"M21-GAP-00243":{"line":3498,"offset":613131,"length":199,"previous":"M21-GAP-00242","next":"M21-GAP-00244"},"M21-GAP-00244":{"line":3499,"offset":613330,"length":199,"previous":"M21-GAP-00243","next":"M21-GAP-00245"},"M21-GAP-00245":{"line":3500,"offset":613529,"length":199,"previous":"M21-GAP-00244","next":"M21-GAP-00246"},"M21-GAP-00246":{"line":3501,"offset":613728,"length":199,"previous":"M21-GAP-00245","next":"M21-GAP-00247"},"M21-GAP-00247":{"line":3502,"offset":613927,"length":199,"previous":"M21-GAP-00246","next":"M21-GAP-00248"},"M21-GAP-00248":{"line":3503,"offset":614126,"length":199,"previous":"M21-GAP-00247","next":"M21-GAP-00249"},"M21-GAP-00249":{"line":3504,"offset":614325,"length":199,"previous":"M21-GAP-00248","next":"M21-GAP-00250"},"M21-GAP-00250":{"line":3505,"offset":614524,"length":188,"previous":"M21-GAP-00249","next":"M21-GAP-00251"},"M21-GAP-00251":{"line":3506,"offset":614712,"length":188,"previous":"M21-GAP-00250","next":"M21-GAP-00252"},"M21-GAP-00252":{"line":3507,"offset":614900,"length":188,"previous":"M21-GAP-00251","next":"M21-GAP-00253"},"M21-GAP-00253":{"line":3508,"offset":615088,"length":188,"previous":"M21-GAP-00252","next":"M21-GAP-00254"},"M21-GAP-00254":{"line":3509,"offset":615276,"length":188,"previous":"M21-GAP-00253","next":"M21-GAP-00255"},"M21-GAP-00255":{"line":3510,"offset":615464,"length":188,"previous":"M21-GAP-00254","next":"M21-GAP-00256"},"M21-GAP-00256":{"line":3511,"offset":615652,"length":188,"previous":"M21-GAP-00255","next":"M21-GAP-00257"},"M21-GAP-00257":{"line":3512,"offset":615840,"length":188,"previous":"M21-GAP-00256","next":"M21-GAP-00258"},"M21-GAP-00258":{"line":3513,"offset":616028,"length":188,"previous":"M21-GAP-00257","next":"M21-GAP-00259"},"M21-GAP-00259":{"line":3514,"offset":616216,"length":176,"previous":"M21-GAP-00258","next":"M21-GAP-00260"},"M21-GAP-00260":{"line":3515,"offset":616392,"length":176,"previous":"M21-GAP-00259","next":"M21-GAP-00261"},"M21-GAP-00261":{"line":3516,"offset":616568,"length":177,"previous":"M21-GAP-00260","next":"M21-GAP-00262"},"M21-GAP-00262":{"line":3517,"offset":616745,"length":178,"previous":"M21-GAP-00261","next":"M21-GAP-00263"},"M21-GAP-00263":{"line":3518,"offset":616923,"length":178,"previous":"M21-GAP-00262","next":"M21-GAP-00264"},"M21-GAP-00264":{"line":3519,"offset":617101,"length":178,"previous":"M21-GAP-00263","next":"M21-GAP-00265"},"M21-GAP-00265":{"line":3520,"offset":617279,"length":178,"previous":"M21-GAP-00264","next":"M21-GAP-00266"},"M21-GAP-00266":{"line":3521,"offset":617457,"length":178,"previous":"M21-GAP-00265","next":"M21-GAP-00267"},"M21-GAP-00267":{"line":3522,"offset":617635,"length":178,"previous":"M21-GAP-00266","next":"M21-GAP-00268"},"M21-GAP-00268":{"line":3523,"offset":617813,"length":178,"previous":"M21-GAP-00267","next":"M21-GAP-00269"},"M21-GAP-00269":{"line":3524,"offset":617991,"length":178,"previous":"M21-GAP-00268","next":"M21-GAP-00270"},"M21-GAP-00270":{"line":3525,"offset":618169,"length":178,"previous":"M21-GAP-00269","next":"M21-GAP-00271"},"M21-GAP-00271":{"line":3526,"offset":618347,"length":178,"previous":"M21-GAP-00270","next":"M21-GAP-00272"},"M21-GAP-00272":{"line":3527,"offset":618525,"length":177,"previous":"M21-GAP-00271","next":"M21-GAP-00273"},"M21-GAP-00273":{"line":3528,"offset":618702,"length":178,"previous":"M21-GAP-00272","next":"M21-GAP-00274"},"M21-GAP-00274":{"line":3529,"offset":618880,"length":178,"previous":"M21-GAP-00273","next":"M21-GAP-00275"},"M21-GAP-00275":{"line":3530,"offset":619058,"length":178,"previous":"M21-GAP-00274","next":"M21-GAP-00276"},"M21-GAP-00276":{"line":3531,"offset":619236,"length":178,"previous":"M21-GAP-00275","next":"M21-GAP-00277"},"M21-GAP-00277":{"line":3532,"offset":619414,"length":178,"previous":"M21-GAP-00276","next":"M21-GAP-00278"},"M21-GAP-00278":{"line":3533,"offset":619592,"length":178,"previous":"M21-GAP-00277","next":"M21-GAP-00279"},"M21-GAP-00279":{"line":3534,"offset":619770,"length":177,"previous":"M21-GAP-00278","next":"M21-GAP-00280"},"M21-GAP-00280":{"line":3535,"offset":619947,"length":177,"previous":"M21-GAP-00279","next":"M21-GAP-00281"},"M21-GAP-00281":{"line":3536,"offset":620124,"length":177,"previous":"M21-GAP-00280","next":"M21-GAP-00282"},"M21-GAP-00282":{"line":3537,"offset":620301,"length":177,"previous":"M21-GAP-00281","next":"M21-GAP-00283"},"M21-GAP-00283":{"line":3538,"offset":620478,"length":177,"previous":"M21-GAP-00282","next":"M21-GAP-00284"},"M21-GAP-00284":{"line":3539,"offset":620655,"length":177,"previous":"M21-GAP-00283","next":"M21-GAP-00285"},"M21-GAP-00285":{"line":3540,"offset":620832,"length":177,"previous":"M21-GAP-00284","next":"M21-GAP-00286"},"M21-GAP-00286":{"line":3541,"offset":621009,"length":177,"previous":"M21-GAP-00285","next":"M21-GAP-00287"},"M21-GAP-00287":{"line":3542,"offset":621186,"length":176,"previous":"M21-GAP-00286","next":"M21-GAP-00288"},"M21-GAP-00288":{"line":3543,"offset":621362,"length":177,"previous":"M21-GAP-00287","next":"M21-GAP-00289"},"M21-GAP-00289":{"line":3544,"offset":621539,"length":177,"previous":"M21-GAP-00288","next":"M21-GAP-00290"},"M21-GAP-00290":{"line":3545,"offset":621716,"length":177,"previous":"M21-GAP-00289","next":"M21-GAP-00291"},"M21-GAP-00291":{"line":3546,"offset":621893,"length":177,"previous":"M21-GAP-00290","next":"M21-GAP-00292"},"M21-GAP-00292":{"line":3547,"offset":622070,"length":177,"previous":"M21-GAP-00291","next":"M21-GAP-00293"},"M21-GAP-00293":{"line":3548,"offset":622247,"length":177,"previous":"M21-GAP-00292","next":"M21-GAP-00294"},"M21-GAP-00294":{"line":3549,"offset":622424,"length":177,"previous":"M21-GAP-00293","next":"M21-GAP-00295"},"M21-GAP-00295":{"line":3550,"offset":622601,"length":177,"previous":"M21-GAP-00294","next":"M21-GAP-00296"},"M21-GAP-00296":{"line":3551,"offset":622778,"length":177,"previous":"M21-GAP-00295","next":"M21-GAP-00297"},"M21-GAP-00297":{"line":3552,"offset":622955,"length":177,"previous":"M21-GAP-00296","next":"M21-GAP-00298"},"M21-GAP-00298":{"line":3553,"offset":623132,"length":176,"previous":"M21-GAP-00297","next":"M21-GAP-00299"},"M21-GAP-00299":{"line":3554,"offset":623308,"length":177,"previous":"M21-GAP-00298","next":"M21-GAP-00300"},"M21-GAP-00300":{"line":3555,"offset":623485,"length":177,"previous":"M21-GAP-00299","next":"M21-GAP-00301"},"M21-GAP-00301":{"line":3556,"offset":623662,"length":177,"previous":"M21-GAP-00300","next":"M21-GAP-00302"},"M21-GAP-00302":{"line":3557,"offset":623839,"length":177,"previous":"M21-GAP-00301","next":"M21-GAP-00303"},"M21-GAP-00303":{"line":3558,"offset":624016,"length":177,"previous":"M21-GAP-00302","next":"M21-GAP-00304"},"M21-GAP-00304":{"line":3559,"offset":624193,"length":177,"previous":"M21-GAP-00303","next":"M21-GAP-00305"},"M21-GAP-00305":{"line":3560,"offset":624370,"length":177,"previous":"M21-GAP-00304","next":"M21-GAP-00306"},"M21-GAP-00306":{"line":3561,"offset":624547,"length":177,"previous":"M21-GAP-00305","next":"M21-GAP-00307"},"M21-GAP-00307":{"line":3562,"offset":624724,"length":177,"previous":"M21-GAP-00306","next":"M21-GAP-00308"},"M21-GAP-00308":{"line":3563,"offset":624901,"length":177,"previous":"M21-GAP-00307","next":"M21-GAP-00309"},"M21-GAP-00309":{"line":3564,"offset":625078,"length":176,"previous":"M21-GAP-00308","next":"M21-GAP-00310"},"M21-GAP-00310":{"line":3565,"offset":625254,"length":177,"previous":"M21-GAP-00309","next":"M21-GAP-00311"},"M21-GAP-00311":{"line":3566,"offset":625431,"length":177,"previous":"M21-GAP-00310","next":"M21-GAP-00312"},"M21-GAP-00312":{"line":3567,"offset":625608,"length":177,"previous":"M21-GAP-00311","next":"M21-GAP-00313"},"M21-GAP-00313":{"line":3568,"offset":625785,"length":177,"previous":"M21-GAP-00312","next":"M21-GAP-00314"},"M21-GAP-00314":{"line":3569,"offset":625962,"length":177,"previous":"M21-GAP-00313","next":"M21-GAP-00315"},"M21-GAP-00315":{"line":3570,"offset":626139,"length":177,"previous":"M21-GAP-00314","next":"M21-GAP-00316"},"M21-GAP-00316":{"line":3571,"offset":626316,"length":177,"previous":"M21-GAP-00315","next":"M21-GAP-00317"},"M21-GAP-00317":{"line":3572,"offset":626493,"length":177,"previous":"M21-GAP-00316","next":"M21-GAP-00318"},"M21-GAP-00318":{"line":3573,"offset":626670,"length":177,"previous":"M21-GAP-00317","next":"M21-GAP-00319"},"M21-GAP-00319":{"line":3574,"offset":626847,"length":177,"previous":"M21-GAP-00318","next":"M21-GAP-00320"},"M21-GAP-00320":{"line":3575,"offset":627024,"length":176,"previous":"M21-GAP-00319","next":"M21-GAP-00321"},"M21-GAP-00321":{"line":3576,"offset":627200,"length":177,"previous":"M21-GAP-00320","next":"M21-GAP-00322"},"M21-GAP-00322":{"line":3577,"offset":627377,"length":177,"previous":"M21-GAP-00321","next":"M21-GAP-00323"},"M21-GAP-00323":{"line":3578,"offset":627554,"length":177,"previous":"M21-GAP-00322","next":"M21-GAP-00324"},"M21-GAP-00324":{"line":3579,"offset":627731,"length":177,"previous":"M21-GAP-00323","next":"M21-GAP-00325"},"M21-GAP-00325":{"line":3580,"offset":627908,"length":177,"previous":"M21-GAP-00324","next":"M21-GAP-00326"},"M21-GAP-00326":{"line":3581,"offset":628085,"length":177,"previous":"M21-GAP-00325","next":"M21-GAP-00327"},"M21-GAP-00327":{"line":3582,"offset":628262,"length":177,"previous":"M21-GAP-00326","next":"M21-GAP-00328"},"M21-GAP-00328":{"line":3583,"offset":628439,"length":177,"previous":"M21-GAP-00327","next":"M21-GAP-00329"},"M21-GAP-00329":{"line":3584,"offset":628616,"length":177,"previous":"M21-GAP-00328","next":"M21-GAP-00330"},"M21-GAP-00330":{"line":3585,"offset":628793,"length":177,"previous":"M21-GAP-00329","next":"M21-GAP-00331"},"M21-GAP-00331":{"line":3586,"offset":628970,"length":176,"previous":"M21-GAP-00330","next":"M21-GAP-00332"},"M21-GAP-00332":{"line":3587,"offset":629146,"length":177,"previous":"M21-GAP-00331","next":"M21-GAP-00333"},"M21-GAP-00333":{"line":3588,"offset":629323,"length":177,"previous":"M21-GAP-00332","next":"M21-GAP-00334"},"M21-GAP-00334":{"line":3589,"offset":629500,"length":177,"previous":"M21-GAP-00333","next":"M21-GAP-00335"},"M21-GAP-00335":{"line":3590,"offset":629677,"length":177,"previous":"M21-GAP-00334","next":"M21-GAP-00336"},"M21-GAP-00336":{"line":3591,"offset":629854,"length":177,"previous":"M21-GAP-00335","next":"M21-GAP-00337"},"M21-GAP-00337":{"line":3592,"offset":630031,"length":177,"previous":"M21-GAP-00336","next":"M21-GAP-00338"},"M21-GAP-00338":{"line":3593,"offset":630208,"length":177,"previous":"M21-GAP-00337","next":"M21-GAP-00339"},"M21-GAP-00339":{"line":3594,"offset":630385,"length":177,"previous":"M21-GAP-00338","next":"M21-GAP-00340"},"M21-GAP-00340":{"line":3595,"offset":630562,"length":177,"previous":"M21-GAP-00339","next":"M21-GAP-00341"},"M21-GAP-00341":{"line":3596,"offset":630739,"length":177,"previous":"M21-GAP-00340","next":"M21-GAP-00342"},"M21-GAP-00342":{"line":3597,"offset":630916,"length":176,"previous":"M21-GAP-00341","next":"M21-GAP-00343"},"M21-GAP-00343":{"line":3598,"offset":631092,"length":177,"previous":"M21-GAP-00342","next":"M21-GAP-00344"},"M21-GAP-00344":{"line":3599,"offset":631269,"length":177,"previous":"M21-GAP-00343","next":"M21-GAP-00345"},"M21-GAP-00345":{"line":3600,"offset":631446,"length":177,"previous":"M21-GAP-00344","next":"M21-GAP-00346"},"M21-GAP-00346":{"line":3601,"offset":631623,"length":177,"previous":"M21-GAP-00345","next":"M21-GAP-00347"},"M21-GAP-00347":{"line":3602,"offset":631800,"length":177,"previous":"M21-GAP-00346","next":"M21-GAP-00348"},"M21-GAP-00348":{"line":3603,"offset":631977,"length":177,"previous":"M21-GAP-00347","next":"M21-GAP-00349"},"M21-GAP-00349":{"line":3604,"offset":632154,"length":177,"previous":"M21-GAP-00348","next":"M21-GAP-00350"},"M21-GAP-00350":{"line":3605,"offset":632331,"length":177,"previous":"M21-GAP-00349","next":"M21-GAP-00351"},"M21-GAP-00351":{"line":3606,"offset":632508,"length":177,"previous":"M21-GAP-00350","next":"M21-GAP-00352"},"M21-GAP-00352":{"line":3607,"offset":632685,"length":177,"previous":"M21-GAP-00351","next":"M21-GAP-00353"},"M21-GAP-00353":{"line":3608,"offset":632862,"length":176,"previous":"M21-GAP-00352","next":"M21-GAP-00354"},"M21-GAP-00354":{"line":3609,"offset":633038,"length":177,"previous":"M21-GAP-00353","next":"M21-GAP-00355"},"M21-GAP-00355":{"line":3610,"offset":633215,"length":177,"previous":"M21-GAP-00354","next":"M21-GAP-00356"},"M21-GAP-00356":{"line":3611,"offset":633392,"length":177,"previous":"M21-GAP-00355","next":"M21-GAP-00357"},"M21-GAP-00357":{"line":3612,"offset":633569,"length":177,"previous":"M21-GAP-00356","next":"M21-GAP-00358"},"M21-GAP-00358":{"line":3613,"offset":633746,"length":177,"previous":"M21-GAP-00357","next":"M21-GAP-00359"},"M21-GAP-00359":{"line":3614,"offset":633923,"length":177,"previous":"M21-GAP-00358","next":"M21-GAP-00360"},"M21-GAP-00360":{"line":3615,"offset":634100,"length":177,"previous":"M21-GAP-00359","next":"M21-GAP-00361"},"M21-GAP-00361":{"line":3616,"offset":634277,"length":177,"previous":"M21-GAP-00360","next":"M21-GAP-00362"},"M21-GAP-00362":{"line":3617,"offset":634454,"length":177,"previous":"M21-GAP-00361","next":"M21-GAP-00363"},"M21-GAP-00363":{"line":3618,"offset":634631,"length":177,"previous":"M21-GAP-00362","next":"M21-GAP-00364"},"M21-GAP-00364":{"line":3619,"offset":634808,"length":176,"previous":"M21-GAP-00363","next":"M21-GAP-00365"},"M21-GAP-00365":{"line":3620,"offset":634984,"length":177,"previous":"M21-GAP-00364","next":"M21-GAP-00366"},"M21-GAP-00366":{"line":3621,"offset":635161,"length":177,"previous":"M21-GAP-00365","next":"M21-GAP-00367"},"M21-GAP-00367":{"line":3622,"offset":635338,"length":177,"previous":"M21-GAP-00366","next":"M21-GAP-00368"},"M21-GAP-00368":{"line":3623,"offset":635515,"length":177,"previous":"M21-GAP-00367","next":"M21-GAP-00369"},"M21-GAP-00369":{"line":3624,"offset":635692,"length":177,"previous":"M21-GAP-00368","next":"M21-GAP-00370"},"M21-GAP-00370":{"line":3625,"offset":635869,"length":177,"previous":"M21-GAP-00369","next":"M21-GAP-00371"},"M21-GAP-00371":{"line":3626,"offset":636046,"length":177,"previous":"M21-GAP-00370","next":"M21-GAP-00372"},"M21-GAP-00372":{"line":3627,"offset":636223,"length":177,"previous":"M21-GAP-00371","next":"M21-GAP-00373"},"M21-GAP-00373":{"line":3628,"offset":636400,"length":177,"previous":"M21-GAP-00372","next":"M21-GAP-00374"},"M21-GAP-00374":{"line":3629,"offset":636577,"length":177,"previous":"M21-GAP-00373","next":"M21-GAP-00375"},"M21-GAP-00375":{"line":3630,"offset":636754,"length":185,"previous":"M21-GAP-00374","next":"M21-GAP-00376"},"M21-GAP-00376":{"line":3631,"offset":636939,"length":185,"previous":"M21-GAP-00375","next":"M21-GAP-00377"},"M21-GAP-00377":{"line":3632,"offset":637124,"length":186,"previous":"M21-GAP-00376","next":"M21-GAP-00378"},"M21-GAP-00378":{"line":3633,"offset":637310,"length":186,"previous":"M21-GAP-00377","next":"M21-GAP-00379"},"M21-GAP-00379":{"line":3634,"offset":637496,"length":186,"previous":"M21-GAP-00378","next":"M21-GAP-00380"},"M21-GAP-00380":{"line":3635,"offset":637682,"length":186,"previous":"M21-GAP-00379","next":"M21-GAP-00381"},"M21-GAP-00381":{"line":3636,"offset":637868,"length":186,"previous":"M21-GAP-00380","next":"M21-GAP-00382"},"M21-GAP-00382":{"line":3637,"offset":638054,"length":186,"previous":"M21-GAP-00381","next":"M21-GAP-00383"},"M21-GAP-00383":{"line":3638,"offset":638240,"length":186,"previous":"M21-GAP-00382","next":"M21-GAP-00384"},"M21-GAP-00384":{"line":3639,"offset":638426,"length":186,"previous":"M21-GAP-00383","next":"M21-GAP-00385"},"M21-GAP-00385":{"line":3640,"offset":638612,"length":186,"previous":"M21-GAP-00384","next":"M21-GAP-00386"},"M21-GAP-00386":{"line":3641,"offset":638798,"length":186,"previous":"M21-GAP-00385","next":"M21-GAP-00387"},"M21-GAP-00387":{"line":3642,"offset":638984,"length":185,"previous":"M21-GAP-00386","next":"M21-GAP-00388"},"M21-GAP-00388":{"line":3643,"offset":639169,"length":186,"previous":"M21-GAP-00387","next":"M21-GAP-00389"},"M21-GAP-00389":{"line":3644,"offset":639355,"length":186,"previous":"M21-GAP-00388","next":"M21-GAP-00390"},"M21-GAP-00390":{"line":3645,"offset":639541,"length":186,"previous":"M21-GAP-00389","next":"M21-GAP-00391"},"M21-GAP-00391":{"line":3646,"offset":639727,"length":186,"previous":"M21-GAP-00390","next":"M21-GAP-00392"},"M21-GAP-00392":{"line":3647,"offset":639913,"length":186,"previous":"M21-GAP-00391","next":"M21-GAP-00393"},"M21-GAP-00393":{"line":3648,"offset":640099,"length":186,"previous":"M21-GAP-00392","next":"M21-GAP-00394"},"M21-GAP-00394":{"line":3649,"offset":640285,"length":186,"previous":"M21-GAP-00393","next":"M21-GAP-00395"},"M21-GAP-00395":{"line":3650,"offset":640471,"length":186,"previous":"M21-GAP-00394","next":"M21-GAP-00396"},"M21-GAP-00396":{"line":3651,"offset":640657,"length":186,"previous":"M21-GAP-00395","next":"M21-GAP-00397"},"M21-GAP-00397":{"line":3652,"offset":640843,"length":186,"previous":"M21-GAP-00396","next":"M21-GAP-00398"},"M21-GAP-00398":{"line":3653,"offset":641029,"length":185,"previous":"M21-GAP-00397","next":"M21-GAP-00399"},"M21-GAP-00399":{"line":3654,"offset":641214,"length":186,"previous":"M21-GAP-00398","next":"M21-GAP-00400"},"M21-GAP-00400":{"line":3655,"offset":641400,"length":186,"previous":"M21-GAP-00399","next":"M21-GAP-00401"},"M21-GAP-00401":{"line":3656,"offset":641586,"length":186,"previous":"M21-GAP-00400","next":"M21-GAP-00402"},"M21-GAP-00402":{"line":3657,"offset":641772,"length":186,"previous":"M21-GAP-00401","next":"M21-GAP-00403"},"M21-GAP-00403":{"line":3658,"offset":641958,"length":186,"previous":"M21-GAP-00402","next":"M21-GAP-00404"},"M21-GAP-00404":{"line":3659,"offset":642144,"length":186,"previous":"M21-GAP-00403","next":"M21-GAP-00405"},"M21-GAP-00405":{"line":3660,"offset":642330,"length":186,"previous":"M21-GAP-00404","next":"M21-GAP-00406"},"M21-GAP-00406":{"line":3661,"offset":642516,"length":185,"previous":"M21-GAP-00405","next":"M21-GAP-00407"},"M21-GAP-00407":{"line":3662,"offset":642701,"length":185,"previous":"M21-GAP-00406","next":"M21-GAP-00408"},"M21-GAP-00408":{"line":3663,"offset":642886,"length":185,"previous":"M21-GAP-00407","next":"M21-GAP-00409"},"M21-GAP-00409":{"line":3664,"offset":643071,"length":185,"previous":"M21-GAP-00408","next":"M21-GAP-00410"},"M21-GAP-00410":{"line":3665,"offset":643256,"length":185,"previous":"M21-GAP-00409","next":"M21-GAP-00411"},"M21-GAP-00411":{"line":3666,"offset":643441,"length":185,"previous":"M21-GAP-00410","next":"M21-GAP-00412"},"M21-GAP-00412":{"line":3667,"offset":643626,"length":176,"previous":"M21-GAP-00411","next":"M21-GAP-00413"},"M21-GAP-00413":{"line":3668,"offset":643802,"length":176,"previous":"M21-GAP-00412","next":"M21-GAP-00414"},"M21-GAP-00414":{"line":3669,"offset":643978,"length":176,"previous":"M21-GAP-00413","next":"M21-GAP-00415"},"M21-GAP-00415":{"line":3670,"offset":644154,"length":176,"previous":"M21-GAP-00414","next":"M21-GAP-00416"},"M21-GAP-00416":{"line":3671,"offset":644330,"length":176,"previous":"M21-GAP-00415","next":"M21-GAP-00417"},"M21-GAP-00417":{"line":3672,"offset":644506,"length":175,"previous":"M21-GAP-00416","next":"M21-GAP-00418"},"M21-GAP-00418":{"line":3673,"offset":644681,"length":175,"previous":"M21-GAP-00417","next":"M21-GAP-00419"},"M21-GAP-00419":{"line":3674,"offset":644856,"length":176,"previous":"M21-GAP-00418","next":"M21-GAP-00420"},"M21-GAP-00420":{"line":3675,"offset":645032,"length":176,"previous":"M21-GAP-00419","next":"M21-GAP-00421"},"M21-GAP-00421":{"line":3676,"offset":645208,"length":176,"previous":"M21-GAP-00420","next":"M21-GAP-00422"},"M21-GAP-00422":{"line":3677,"offset":645384,"length":176,"previous":"M21-GAP-00421","next":"M21-GAP-00423"},"M21-GAP-00423":{"line":3678,"offset":645560,"length":176,"previous":"M21-GAP-00422","next":"M21-GAP-00424"},"M21-GAP-00424":{"line":3679,"offset":645736,"length":176,"previous":"M21-GAP-00423","next":"M21-GAP-00425"},"M21-GAP-00425":{"line":3680,"offset":645912,"length":176,"previous":"M21-GAP-00424","next":"M21-GAP-00426"},"M21-GAP-00426":{"line":3681,"offset":646088,"length":176,"previous":"M21-GAP-00425","next":"M21-GAP-00427"},"M21-GAP-00427":{"line":3682,"offset":646264,"length":176,"previous":"M21-GAP-00426","next":"M21-GAP-00428"},"M21-GAP-00428":{"line":3683,"offset":646440,"length":176,"previous":"M21-GAP-00427","next":"M21-GAP-00429"},"M21-GAP-00429":{"line":3684,"offset":646616,"length":175,"previous":"M21-GAP-00428","next":"M21-GAP-00430"},"M21-GAP-00430":{"line":3685,"offset":646791,"length":176,"previous":"M21-GAP-00429","next":"M21-GAP-00431"},"M21-GAP-00431":{"line":3686,"offset":646967,"length":176,"previous":"M21-GAP-00430","next":"M21-GAP-00432"},"M21-GAP-00432":{"line":3687,"offset":647143,"length":176,"previous":"M21-GAP-00431","next":"M21-GAP-00433"},"M21-GAP-00433":{"line":3688,"offset":647319,"length":176,"previous":"M21-GAP-00432","next":"M21-GAP-00434"},"M21-GAP-00434":{"line":3689,"offset":647495,"length":176,"previous":"M21-GAP-00433","next":"M21-GAP-00435"},"M21-GAP-00435":{"line":3690,"offset":647671,"length":176,"previous":"M21-GAP-00434","next":"M21-GAP-00436"},"M21-GAP-00436":{"line":3691,"offset":647847,"length":176,"previous":"M21-GAP-00435","next":"M21-GAP-00437"},"M21-GAP-00437":{"line":3692,"offset":648023,"length":176,"previous":"M21-GAP-00436","next":"M21-GAP-00438"},"M21-GAP-00438":{"line":3693,"offset":648199,"length":176,"previous":"M21-GAP-00437","next":"M21-GAP-00439"},"M21-GAP-00439":{"line":3694,"offset":648375,"length":176,"previous":"M21-GAP-00438","next":"M21-GAP-00440"},"M21-GAP-00440":{"line":3695,"offset":648551,"length":175,"previous":"M21-GAP-00439","next":"M21-GAP-00441"},"M21-GAP-00441":{"line":3696,"offset":648726,"length":176,"previous":"M21-GAP-00440","next":"M21-GAP-00442"},"M21-GAP-00442":{"line":3697,"offset":648902,"length":176,"previous":"M21-GAP-00441","next":"M21-GAP-00443"},"M21-GAP-00443":{"line":3698,"offset":649078,"length":176,"previous":"M21-GAP-00442","next":"M21-GAP-00444"},"M21-GAP-00444":{"line":3699,"offset":649254,"length":176,"previous":"M21-GAP-00443","next":"M21-GAP-00445"},"M21-GAP-00445":{"line":3700,"offset":649430,"length":176,"previous":"M21-GAP-00444","next":"M21-GAP-00446"},"M21-GAP-00446":{"line":3701,"offset":649606,"length":176,"previous":"M21-GAP-00445","next":"M21-GAP-00447"},"M21-GAP-00447":{"line":3702,"offset":649782,"length":176,"previous":"M21-GAP-00446","next":"M21-GAP-00448"},"M21-GAP-00448":{"line":3703,"offset":649958,"length":176,"previous":"M21-GAP-00447","next":"M21-GAP-00449"},"M21-GAP-00449":{"line":3704,"offset":650134,"length":176,"previous":"M21-GAP-00448","next":"M21-GAP-00450"},"M21-GAP-00450":{"line":3705,"offset":650310,"length":176,"previous":"M21-GAP-00449","next":"M21-GAP-00451"},"M21-GAP-00451":{"line":3706,"offset":650486,"length":175,"previous":"M21-GAP-00450","next":"M21-GAP-00452"},"M21-GAP-00452":{"line":3707,"offset":650661,"length":176,"previous":"M21-GAP-00451","next":"M21-GAP-00453"},"M21-GAP-00453":{"line":3708,"offset":650837,"length":176,"previous":"M21-GAP-00452","next":"M21-GAP-00454"},"M21-GAP-00454":{"line":3709,"offset":651013,"length":176,"previous":"M21-GAP-00453","next":"M21-GAP-00455"},"M21-GAP-00455":{"line":3710,"offset":651189,"length":176,"previous":"M21-GAP-00454","next":"M21-GAP-00456"},"M21-GAP-00456":{"line":3711,"offset":651365,"length":176,"previous":"M21-GAP-00455","next":"M21-GAP-00457"},"M21-GAP-00457":{"line":3712,"offset":651541,"length":176,"previous":"M21-GAP-00456","next":"M21-GAP-00458"},"M21-GAP-00458":{"line":3713,"offset":651717,"length":176,"previous":"M21-GAP-00457","next":"M21-GAP-00459"},"M21-GAP-00459":{"line":3714,"offset":651893,"length":176,"previous":"M21-GAP-00458","next":"M21-GAP-00460"},"M21-GAP-00460":{"line":3715,"offset":652069,"length":176,"previous":"M21-GAP-00459","next":"M21-GAP-00461"},"M21-GAP-00461":{"line":3716,"offset":652245,"length":176,"previous":"M21-GAP-00460","next":"M21-GAP-00462"},"M21-GAP-00462":{"line":3717,"offset":652421,"length":175,"previous":"M21-GAP-00461","next":"M21-GAP-00463"},"M21-GAP-00463":{"line":3718,"offset":652596,"length":176,"previous":"M21-GAP-00462","next":"M21-GAP-00464"},"M21-GAP-00464":{"line":3719,"offset":652772,"length":176,"previous":"M21-GAP-00463","next":"M21-GAP-00465"},"M21-GAP-00465":{"line":3720,"offset":652948,"length":175,"previous":"M21-GAP-00464","next":"M21-GAP-00466"},"M21-GAP-00466":{"line":3721,"offset":653123,"length":175,"previous":"M21-GAP-00465","next":"M21-GAP-00467"},"M21-GAP-00467":{"line":3722,"offset":653298,"length":175,"previous":"M21-GAP-00466","next":"M21-GAP-00468"},"M21-GAP-00468":{"line":3723,"offset":653473,"length":175,"previous":"M21-GAP-00467","next":"M21-GAP-00469"},"M21-GAP-00469":{"line":3724,"offset":653648,"length":182,"previous":"M21-GAP-00468","next":"M21-GAP-00470"},"M21-GAP-00470":{"line":3725,"offset":653830,"length":182,"previous":"M21-GAP-00469","next":"M21-GAP-00471"},"M21-GAP-00471":{"line":3726,"offset":654012,"length":183,"previous":"M21-GAP-00470","next":"M21-GAP-00472"},"M21-GAP-00472":{"line":3727,"offset":654195,"length":183,"previous":"M21-GAP-00471","next":"M21-GAP-00473"},"M21-GAP-00473":{"line":3728,"offset":654378,"length":183,"previous":"M21-GAP-00472","next":"M21-GAP-00474"},"M21-GAP-00474":{"line":3729,"offset":654561,"length":183,"previous":"M21-GAP-00473","next":"M21-GAP-00475"},"M21-GAP-00475":{"line":3730,"offset":654744,"length":183,"previous":"M21-GAP-00474","next":"M21-GAP-00476"},"M21-GAP-00476":{"line":3731,"offset":654927,"length":183,"previous":"M21-GAP-00475","next":"M21-GAP-00477"},"M21-GAP-00477":{"line":3732,"offset":655110,"length":183,"previous":"M21-GAP-00476","next":"M21-GAP-00478"},"M21-GAP-00478":{"line":3733,"offset":655293,"length":183,"previous":"M21-GAP-00477","next":"M21-GAP-00479"},"M21-GAP-00479":{"line":3734,"offset":655476,"length":183,"previous":"M21-GAP-00478","next":"M21-GAP-00480"},"M21-GAP-00480":{"line":3735,"offset":655659,"length":183,"previous":"M21-GAP-00479","next":"M21-GAP-00481"},"M21-GAP-00481":{"line":3736,"offset":655842,"length":182,"previous":"M21-GAP-00480","next":"M21-GAP-00482"},"M21-GAP-00482":{"line":3737,"offset":656024,"length":183,"previous":"M21-GAP-00481","next":"M21-GAP-00483"},"M21-GAP-00483":{"line":3738,"offset":656207,"length":183,"previous":"M21-GAP-00482","next":"M21-GAP-00484"},"M21-GAP-00484":{"line":3739,"offset":656390,"length":183,"previous":"M21-GAP-00483","next":"M21-GAP-00485"},"M21-GAP-00485":{"line":3740,"offset":656573,"length":183,"previous":"M21-GAP-00484","next":"M21-GAP-00486"},"M21-GAP-00486":{"line":3741,"offset":656756,"length":183,"previous":"M21-GAP-00485","next":"M21-GAP-00487"},"M21-GAP-00487":{"line":3742,"offset":656939,"length":183,"previous":"M21-GAP-00486","next":"M21-GAP-00488"},"M21-GAP-00488":{"line":3743,"offset":657122,"length":183,"previous":"M21-GAP-00487","next":"M21-GAP-00489"},"M21-GAP-00489":{"line":3744,"offset":657305,"length":183,"previous":"M21-GAP-00488","next":"M21-GAP-00490"},"M21-GAP-00490":{"line":3745,"offset":657488,"length":183,"previous":"M21-GAP-00489","next":"M21-GAP-00491"},"M21-GAP-00491":{"line":3746,"offset":657671,"length":183,"previous":"M21-GAP-00490","next":"M21-GAP-00492"},"M21-GAP-00492":{"line":3747,"offset":657854,"length":182,"previous":"M21-GAP-00491","next":"M21-GAP-00493"},"M21-GAP-00493":{"line":3748,"offset":658036,"length":182,"previous":"M21-GAP-00492","next":"M21-GAP-00494"},"M21-GAP-00494":{"line":3749,"offset":658218,"length":182,"previous":"M21-GAP-00493","next":"M21-GAP-00495"},"M21-GAP-00495":{"line":3750,"offset":658400,"length":182,"previous":"M21-GAP-00494","next":"M21-GAP-00496"},"M21-GAP-00496":{"line":3751,"offset":658582,"length":182,"previous":"M21-GAP-00495","next":"M21-GAP-00497"},"M21-GAP-00497":{"line":3752,"offset":658764,"length":182,"previous":"M21-GAP-00496","next":"M21-GAP-00498"},"M21-GAP-00498":{"line":3753,"offset":658946,"length":182,"previous":"M21-GAP-00497","next":"M21-GAP-00499"},"M21-GAP-00499":{"line":3754,"offset":659128,"length":194,"previous":"M21-GAP-00498","next":"M21-GAP-00500"},"M21-GAP-00500":{"line":3755,"offset":659322,"length":194,"previous":"M21-GAP-00499","next":"M21-GAP-00501"},"M21-GAP-00501":{"line":3756,"offset":659516,"length":194,"previous":"M21-GAP-00500","next":"M21-GAP-00502"},"M21-GAP-00502":{"line":3757,"offset":659710,"length":194,"previous":"M21-GAP-00501","next":"M21-GAP-00503"},"M21-GAP-00503":{"line":3758,"offset":659904,"length":184,"previous":"M21-GAP-00502","next":"M21-GAP-00504"},"M21-GAP-00504":{"line":3759,"offset":660088,"length":184,"previous":"M21-GAP-00503","next":"M21-GAP-00505"},"M21-GAP-00505":{"line":3760,"offset":660272,"length":185,"previous":"M21-GAP-00504","next":"M21-GAP-00506"},"M21-GAP-00506":{"line":3761,"offset":660457,"length":185,"previous":"M21-GAP-00505","next":"M21-GAP-00507"},"M21-GAP-00507":{"line":3762,"offset":660642,"length":185,"previous":"M21-GAP-00506","next":"M21-GAP-00508"},"M21-GAP-00508":{"line":3763,"offset":660827,"length":185,"previous":"M21-GAP-00507","next":"M21-GAP-00509"},"M21-GAP-00509":{"line":3764,"offset":661012,"length":185,"previous":"M21-GAP-00508","next":"M21-GAP-00510"},"M21-GAP-00510":{"line":3765,"offset":661197,"length":185,"previous":"M21-GAP-00509","next":"M21-GAP-00511"},"M21-GAP-00511":{"line":3766,"offset":661382,"length":185,"previous":"M21-GAP-00510","next":"M21-GAP-00512"},"M21-GAP-00512":{"line":3767,"offset":661567,"length":185,"previous":"M21-GAP-00511","next":"M21-GAP-00513"},"M21-GAP-00513":{"line":3768,"offset":661752,"length":185,"previous":"M21-GAP-00512","next":"M21-GAP-00514"},"M21-GAP-00514":{"line":3769,"offset":661937,"length":185,"previous":"M21-GAP-00513","next":"M21-GAP-00515"},"M21-GAP-00515":{"line":3770,"offset":662122,"length":184,"previous":"M21-GAP-00514","next":"M21-GAP-00516"},"M21-GAP-00516":{"line":3771,"offset":662306,"length":185,"previous":"M21-GAP-00515","next":"M21-GAP-00517"},"M21-GAP-00517":{"line":3772,"offset":662491,"length":185,"previous":"M21-GAP-00516","next":"M21-GAP-00518"},"M21-GAP-00518":{"line":3773,"offset":662676,"length":185,"previous":"M21-GAP-00517","next":"M21-GAP-00519"},"M21-GAP-00519":{"line":3774,"offset":662861,"length":185,"previous":"M21-GAP-00518","next":"M21-GAP-00520"},"M21-GAP-00520":{"line":3775,"offset":663046,"length":185,"previous":"M21-GAP-00519","next":"M21-GAP-00521"},"M21-GAP-00521":{"line":3776,"offset":663231,"length":185,"previous":"M21-GAP-00520","next":"M21-GAP-00522"},"M21-GAP-00522":{"line":3777,"offset":663416,"length":185,"previous":"M21-GAP-00521","next":"M21-GAP-00523"},"M21-GAP-00523":{"line":3778,"offset":663601,"length":185,"previous":"M21-GAP-00522","next":"M21-GAP-00524"},"M21-GAP-00524":{"line":3779,"offset":663786,"length":185,"previous":"M21-GAP-00523","next":"M21-GAP-00525"},"M21-GAP-00525":{"line":3780,"offset":663971,"length":185,"previous":"M21-GAP-00524","next":"M21-GAP-00526"},"M21-GAP-00526":{"line":3781,"offset":664156,"length":184,"previous":"M21-GAP-00525","next":"M21-GAP-00527"},"M21-GAP-00527":{"line":3782,"offset":664340,"length":185,"previous":"M21-GAP-00526","next":"M21-GAP-00528"},"M21-GAP-00528":{"line":3783,"offset":664525,"length":185,"previous":"M21-GAP-00527","next":"M21-GAP-00529"},"M21-GAP-00529":{"line":3784,"offset":664710,"length":185,"previous":"M21-GAP-00528","next":"M21-GAP-00530"},"M21-GAP-00530":{"line":3785,"offset":664895,"length":185,"previous":"M21-GAP-00529","next":"M21-GAP-00531"},"M21-GAP-00531":{"line":3786,"offset":665080,"length":185,"previous":"M21-GAP-00530","next":"M21-GAP-00532"},"M21-GAP-00532":{"line":3787,"offset":665265,"length":185,"previous":"M21-GAP-00531","next":"M21-GAP-00533"},"M21-GAP-00533":{"line":3788,"offset":665450,"length":185,"previous":"M21-GAP-00532","next":"M21-GAP-00534"},"M21-GAP-00534":{"line":3789,"offset":665635,"length":185,"previous":"M21-GAP-00533","next":"M21-GAP-00535"},"M21-GAP-00535":{"line":3790,"offset":665820,"length":185,"previous":"M21-GAP-00534","next":"M21-GAP-00536"},"M21-GAP-00536":{"line":3791,"offset":666005,"length":185,"previous":"M21-GAP-00535","next":"M21-GAP-00537"},"M21-GAP-00537":{"line":3792,"offset":666190,"length":184,"previous":"M21-GAP-00536","next":"M21-GAP-00538"},"M21-GAP-00538":{"line":3793,"offset":666374,"length":185,"previous":"M21-GAP-00537","next":"M21-GAP-00539"},"M21-GAP-00539":{"line":3794,"offset":666559,"length":185,"previous":"M21-GAP-00538","next":"M21-GAP-00540"},"M21-GAP-00540":{"line":3795,"offset":666744,"length":185,"previous":"M21-GAP-00539","next":"M21-GAP-00541"},"M21-GAP-00541":{"line":3796,"offset":666929,"length":185,"previous":"M21-GAP-00540","next":"M21-GAP-00542"},"M21-GAP-00542":{"line":3797,"offset":667114,"length":185,"previous":"M21-GAP-00541","next":"M21-GAP-00543"},"M21-GAP-00543":{"line":3798,"offset":667299,"length":185,"previous":"M21-GAP-00542","next":"M21-GAP-00544"},"M21-GAP-00544":{"line":3799,"offset":667484,"length":185,"previous":"M21-GAP-00543","next":"M21-GAP-00545"},"M21-GAP-00545":{"line":3800,"offset":667669,"length":185,"previous":"M21-GAP-00544","next":"M21-GAP-00546"},"M21-GAP-00546":{"line":3801,"offset":667854,"length":185,"previous":"M21-GAP-00545","next":"M21-GAP-00547"},"M21-GAP-00547":{"line":3802,"offset":668039,"length":185,"previous":"M21-GAP-00546","next":"M21-GAP-00548"},"M21-GAP-00548":{"line":3803,"offset":668224,"length":184,"previous":"M21-GAP-00547","next":"M21-GAP-00549"},"M21-GAP-00549":{"line":3804,"offset":668408,"length":185,"previous":"M21-GAP-00548","next":"M21-GAP-00550"},"M21-GAP-00550":{"line":3805,"offset":668593,"length":185,"previous":"M21-GAP-00549","next":"M21-GAP-00551"},"M21-GAP-00551":{"line":3806,"offset":668778,"length":185,"previous":"M21-GAP-00550","next":"M21-GAP-00552"},"M21-GAP-00552":{"line":3807,"offset":668963,"length":185,"previous":"M21-GAP-00551","next":"M21-GAP-00553"},"M21-GAP-00553":{"line":3808,"offset":669148,"length":185,"previous":"M21-GAP-00552","next":"M21-GAP-00554"},"M21-GAP-00554":{"line":3809,"offset":669333,"length":185,"previous":"M21-GAP-00553","next":"M21-GAP-00555"},"M21-GAP-00555":{"line":3810,"offset":669518,"length":185,"previous":"M21-GAP-00554","next":"M21-GAP-00556"},"M21-GAP-00556":{"line":3811,"offset":669703,"length":185,"previous":"M21-GAP-00555","next":"M21-GAP-00557"},"M21-GAP-00557":{"line":3812,"offset":669888,"length":185,"previous":"M21-GAP-00556","next":"M21-GAP-00558"},"M21-GAP-00558":{"line":3813,"offset":670073,"length":185,"previous":"M21-GAP-00557","next":"M21-GAP-00559"},"M21-GAP-00559":{"line":3814,"offset":670258,"length":184,"previous":"M21-GAP-00558","next":"M21-GAP-00560"},"M21-GAP-00560":{"line":3815,"offset":670442,"length":185,"previous":"M21-GAP-00559","next":"M21-GAP-00561"},"M21-GAP-00561":{"line":3816,"offset":670627,"length":185,"previous":"M21-GAP-00560","next":"M21-GAP-00562"},"M21-GAP-00562":{"line":3817,"offset":670812,"length":185,"previous":"M21-GAP-00561","next":"M21-GAP-00563"},"M21-GAP-00563":{"line":3818,"offset":670997,"length":185,"previous":"M21-GAP-00562","next":"M21-GAP-00564"},"M21-GAP-00564":{"line":3819,"offset":671182,"length":185,"previous":"M21-GAP-00563","next":"M21-GAP-00565"},"M21-GAP-00565":{"line":3820,"offset":671367,"length":185,"previous":"M21-GAP-00564","next":"M21-GAP-00566"},"M21-GAP-00566":{"line":3821,"offset":671552,"length":185,"previous":"M21-GAP-00565","next":"M21-GAP-00567"},"M21-GAP-00567":{"line":3822,"offset":671737,"length":185,"previous":"M21-GAP-00566","next":"M21-GAP-00568"},"M21-GAP-00568":{"line":3823,"offset":671922,"length":185,"previous":"M21-GAP-00567","next":"M21-GAP-00569"},"M21-GAP-00569":{"line":3824,"offset":672107,"length":185,"previous":"M21-GAP-00568","next":"M21-GAP-00570"},"M21-GAP-00570":{"line":3825,"offset":672292,"length":184,"previous":"M21-GAP-00569","next":"M21-GAP-00571"},"M21-GAP-00571":{"line":3826,"offset":672476,"length":185,"previous":"M21-GAP-00570","next":"M21-GAP-00572"},"M21-GAP-00572":{"line":3827,"offset":672661,"length":185,"previous":"M21-GAP-00571","next":"M21-GAP-00573"},"M21-GAP-00573":{"line":3828,"offset":672846,"length":185,"previous":"M21-GAP-00572","next":"M21-GAP-00574"},"M21-GAP-00574":{"line":3829,"offset":673031,"length":185,"previous":"M21-GAP-00573","next":"M21-GAP-00575"},"M21-GAP-00575":{"line":3830,"offset":673216,"length":185,"previous":"M21-GAP-00574","next":"M21-GAP-00576"},"M21-GAP-00576":{"line":3831,"offset":673401,"length":185,"previous":"M21-GAP-00575","next":"M21-GAP-00577"},"M21-GAP-00577":{"line":3832,"offset":673586,"length":184,"previous":"M21-GAP-00576","next":"M21-GAP-00578"},"M21-GAP-00578":{"line":3833,"offset":673770,"length":184,"previous":"M21-GAP-00577","next":"M21-GAP-00579"},"M21-GAP-00579":{"line":3834,"offset":673954,"length":190,"previous":"M21-GAP-00578","next":"M21-GAP-00580"},"M21-GAP-00580":{"line":3835,"offset":674144,"length":190,"previous":"M21-GAP-00579","next":"M21-GAP-00581"},"M21-GAP-00581":{"line":3836,"offset":674334,"length":191,"previous":"M21-GAP-00580","next":"M21-GAP-00582"},"M21-GAP-00582":{"line":3837,"offset":674525,"length":191,"previous":"M21-GAP-00581","next":"M21-GAP-00583"},"M21-GAP-00583":{"line":3838,"offset":674716,"length":191,"previous":"M21-GAP-00582","next":"M21-GAP-00584"},"M21-GAP-00584":{"line":3839,"offset":674907,"length":191,"previous":"M21-GAP-00583","next":"M21-GAP-00585"},"M21-GAP-00585":{"line":3840,"offset":675098,"length":191,"previous":"M21-GAP-00584","next":"M21-GAP-00586"},"M21-GAP-00586":{"line":3841,"offset":675289,"length":191,"previous":"M21-GAP-00585","next":"M21-GAP-00587"},"M21-GAP-00587":{"line":3842,"offset":675480,"length":191,"previous":"M21-GAP-00586","next":"M21-GAP-00588"},"M21-GAP-00588":{"line":3843,"offset":675671,"length":191,"previous":"M21-GAP-00587","next":"M21-GAP-00589"},"M21-GAP-00589":{"line":3844,"offset":675862,"length":191,"previous":"M21-GAP-00588","next":"M21-GAP-00590"},"M21-GAP-00590":{"line":3845,"offset":676053,"length":191,"previous":"M21-GAP-00589","next":"M21-GAP-00591"},"M21-GAP-00591":{"line":3846,"offset":676244,"length":190,"previous":"M21-GAP-00590","next":"M21-GAP-00592"},"M21-GAP-00592":{"line":3847,"offset":676434,"length":191,"previous":"M21-GAP-00591","next":"M21-GAP-00593"},"M21-GAP-00593":{"line":3848,"offset":676625,"length":191,"previous":"M21-GAP-00592","next":"M21-GAP-00594"},"M21-GAP-00594":{"line":3849,"offset":676816,"length":191,"previous":"M21-GAP-00593","next":"M21-GAP-00595"},"M21-GAP-00595":{"line":3850,"offset":677007,"length":191,"previous":"M21-GAP-00594","next":"M21-GAP-00596"},"M21-GAP-00596":{"line":3851,"offset":677198,"length":190,"previous":"M21-GAP-00595","next":"M21-GAP-00597"},"M21-GAP-00597":{"line":3852,"offset":677388,"length":190,"previous":"M21-GAP-00596","next":"M21-GAP-00598"},"M21-GAP-00598":{"line":3853,"offset":677578,"length":190,"previous":"M21-GAP-00597","next":"M21-GAP-00599"},"M21-GAP-00599":{"line":3854,"offset":677768,"length":190,"previous":"M21-GAP-00598","next":"M21-GAP-00600"},"M21-GAP-00600":{"line":3855,"offset":677958,"length":190,"previous":"M21-GAP-00599","next":"M21-GAP-00601"},"M21-GAP-00601":{"line":3856,"offset":678148,"length":190,"previous":"M21-GAP-00600","next":"M21-GAP-00602"},"M21-GAP-00602":{"line":3857,"offset":678338,"length":190,"previous":"M21-GAP-00601","next":"M21-GAP-00603"},"M21-GAP-00603":{"line":3858,"offset":678528,"length":189,"previous":"M21-GAP-00602","next":"M21-GAP-00604"},"M21-GAP-00604":{"line":3859,"offset":678717,"length":177,"previous":"M21-GAP-00603","next":"M21-GAP-00605"},"M21-GAP-00605":{"line":3860,"offset":678894,"length":177,"previous":"M21-GAP-00604","next":"M21-GAP-00606"},"M21-GAP-00606":{"line":3861,"offset":679071,"length":178,"previous":"M21-GAP-00605","next":"M21-GAP-00607"},"M21-GAP-00607":{"line":3862,"offset":679249,"length":178,"previous":"M21-GAP-00606","next":"M21-GAP-00608"},"M21-GAP-00608":{"line":3863,"offset":679427,"length":178,"previous":"M21-GAP-00607","next":"M21-GAP-00609"},"M21-GAP-00609":{"line":3864,"offset":679605,"length":178,"previous":"M21-GAP-00608","next":"M21-GAP-00610"},"M21-GAP-00610":{"line":3865,"offset":679783,"length":177,"previous":"M21-GAP-00609","next":"M21-GAP-00611"},"M21-GAP-00611":{"line":3866,"offset":679960,"length":177,"previous":"M21-GAP-00610","next":"M21-GAP-00612"},"M21-GAP-00612":{"line":3867,"offset":680137,"length":177,"previous":"M21-GAP-00611","next":"M21-GAP-00613"},"M21-GAP-00613":{"line":3868,"offset":680314,"length":177,"previous":"M21-GAP-00612","next":"M21-GAP-00614"},"M21-GAP-00614":{"line":3869,"offset":680491,"length":177,"previous":"M21-GAP-00613","next":"M21-GAP-00615"},"M21-GAP-00615":{"line":3870,"offset":680668,"length":177,"previous":"M21-GAP-00614","next":"M21-GAP-00616"},"M21-GAP-00616":{"line":3871,"offset":680845,"length":177,"previous":"M21-GAP-00615","next":"M21-GAP-00617"},"M21-GAP-00617":{"line":3872,"offset":681022,"length":177,"previous":"M21-GAP-00616","next":"M21-GAP-00618"},"M21-GAP-00618":{"line":3873,"offset":681199,"length":176,"previous":"M21-GAP-00617","next":"M21-GAP-00619"},"M21-GAP-00619":{"line":3874,"offset":681375,"length":176,"previous":"M21-GAP-00618","next":"M21-GAP-00620"},"M21-GAP-00620":{"line":3875,"offset":681551,"length":177,"previous":"M21-GAP-00619","next":"M21-GAP-00621"},"M21-GAP-00621":{"line":3876,"offset":681728,"length":177,"previous":"M21-GAP-00620","next":"M21-GAP-00622"},"M21-GAP-00622":{"line":3877,"offset":681905,"length":177,"previous":"M21-GAP-00621","next":"M21-GAP-00623"},"M21-GAP-00623":{"line":3878,"offset":682082,"length":177,"previous":"M21-GAP-00622","next":"M21-GAP-00624"},"M21-GAP-00624":{"line":3879,"offset":682259,"length":177,"previous":"M21-GAP-00623","next":"M21-GAP-00625"},"M21-GAP-00625":{"line":3880,"offset":682436,"length":177,"previous":"M21-GAP-00624","next":"M21-GAP-00626"},"M21-GAP-00626":{"line":3881,"offset":682613,"length":177,"previous":"M21-GAP-00625","next":"M21-GAP-00627"},"M21-GAP-00627":{"line":3882,"offset":682790,"length":177,"previous":"M21-GAP-00626","next":"M21-GAP-00628"},"M21-GAP-00628":{"line":3883,"offset":682967,"length":177,"previous":"M21-GAP-00627","next":"M21-GAP-00629"},"M21-GAP-00629":{"line":3884,"offset":683144,"length":177,"previous":"M21-GAP-00628","next":"M21-GAP-00630"},"M21-GAP-00630":{"line":3885,"offset":683321,"length":176,"previous":"M21-GAP-00629","next":"M21-GAP-00631"},"M21-GAP-00631":{"line":3886,"offset":683497,"length":177,"previous":"M21-GAP-00630","next":"M21-GAP-00632"},"M21-GAP-00632":{"line":3887,"offset":683674,"length":177,"previous":"M21-GAP-00631","next":"M21-GAP-00633"},"M21-GAP-00633":{"line":3888,"offset":683851,"length":177,"previous":"M21-GAP-00632","next":"M21-GAP-00634"},"M21-GAP-00634":{"line":3889,"offset":684028,"length":177,"previous":"M21-GAP-00633","next":"M21-GAP-00635"},"M21-GAP-00635":{"line":3890,"offset":684205,"length":177,"previous":"M21-GAP-00634","next":"M21-GAP-00636"},"M21-GAP-00636":{"line":3891,"offset":684382,"length":177,"previous":"M21-GAP-00635","next":"M21-GAP-00637"},"M21-GAP-00637":{"line":3892,"offset":684559,"length":177,"previous":"M21-GAP-00636","next":"M21-GAP-00638"},"M21-GAP-00638":{"line":3893,"offset":684736,"length":177,"previous":"M21-GAP-00637","next":"M21-GAP-00639"},"M21-GAP-00639":{"line":3894,"offset":684913,"length":177,"previous":"M21-GAP-00638","next":"M21-GAP-00640"},"M21-GAP-00640":{"line":3895,"offset":685090,"length":177,"previous":"M21-GAP-00639","next":"M21-GAP-00641"},"M21-GAP-00641":{"line":3896,"offset":685267,"length":176,"previous":"M21-GAP-00640","next":"M21-GAP-00642"},"M21-GAP-00642":{"line":3897,"offset":685443,"length":177,"previous":"M21-GAP-00641","next":"M21-GAP-00643"},"M21-GAP-00643":{"line":3898,"offset":685620,"length":177,"previous":"M21-GAP-00642","next":"M21-GAP-00644"},"M21-GAP-00644":{"line":3899,"offset":685797,"length":177,"previous":"M21-GAP-00643","next":"M21-GAP-00645"},"M21-GAP-00645":{"line":3900,"offset":685974,"length":177,"previous":"M21-GAP-00644","next":"M21-GAP-00646"},"M21-GAP-00646":{"line":3901,"offset":686151,"length":177,"previous":"M21-GAP-00645","next":"M21-GAP-00647"},"M21-GAP-00647":{"line":3902,"offset":686328,"length":177,"previous":"M21-GAP-00646","next":"M21-GAP-00648"},"M21-GAP-00648":{"line":3903,"offset":686505,"length":177,"previous":"M21-GAP-00647","next":"M21-GAP-00649"},"M21-GAP-00649":{"line":3904,"offset":686682,"length":177,"previous":"M21-GAP-00648","next":"M21-GAP-00650"},"M21-GAP-00650":{"line":3905,"offset":686859,"length":177,"previous":"M21-GAP-00649","next":"M21-GAP-00651"},"M21-GAP-00651":{"line":3906,"offset":687036,"length":177,"previous":"M21-GAP-00650","next":"M21-GAP-00652"},"M21-GAP-00652":{"line":3907,"offset":687213,"length":176,"previous":"M21-GAP-00651","next":"M21-GAP-00653"},"M21-GAP-00653":{"line":3908,"offset":687389,"length":176,"previous":"M21-GAP-00652","next":"M21-GAP-00654"},"M21-GAP-00654":{"line":3909,"offset":687565,"length":176,"previous":"M21-GAP-00653","next":"M21-GAP-00655"},"M21-GAP-00655":{"line":3910,"offset":687741,"length":176,"previous":"M21-GAP-00654","next":"M21-GAP-00656"},"M21-GAP-00656":{"line":3911,"offset":687917,"length":176,"previous":"M21-GAP-00655","next":"M21-GAP-00657"},"M21-GAP-00657":{"line":3912,"offset":688093,"length":176,"previous":"M21-GAP-00656","next":"M21-GAP-00658"},"M21-GAP-00658":{"line":3913,"offset":688269,"length":186,"previous":"M21-GAP-00657","next":"M21-GAP-00659"},"M21-GAP-00659":{"line":3914,"offset":688455,"length":186,"previous":"M21-GAP-00658","next":"M21-GAP-00660"},"M21-GAP-00660":{"line":3915,"offset":688641,"length":186,"previous":"M21-GAP-00659","next":"M21-GAP-00661"},"M21-GAP-00661":{"line":3916,"offset":688827,"length":186,"previous":"M21-GAP-00660","next":"M21-GAP-00662"},"M21-GAP-00662":{"line":3917,"offset":689013,"length":186,"previous":"M21-GAP-00661","next":"M21-GAP-00663"},"M21-GAP-00663":{"line":3918,"offset":689199,"length":172,"previous":"M21-GAP-00662","next":"M21-GAP-00664"},"M21-GAP-00664":{"line":3919,"offset":689371,"length":172,"previous":"M21-GAP-00663","next":"M21-GAP-00665"},"M21-GAP-00665":{"line":3920,"offset":689543,"length":173,"previous":"M21-GAP-00664","next":"M21-GAP-00666"},"M21-GAP-00666":{"line":3921,"offset":689716,"length":173,"previous":"M21-GAP-00665","next":"M21-GAP-00667"},"M21-GAP-00667":{"line":3922,"offset":689889,"length":173,"previous":"M21-GAP-00666","next":"M21-GAP-00668"},"M21-GAP-00668":{"line":3923,"offset":690062,"length":173,"previous":"M21-GAP-00667","next":"M21-GAP-00669"},"M21-GAP-00669":{"line":3924,"offset":690235,"length":173,"previous":"M21-GAP-00668","next":"M21-GAP-00670"},"M21-GAP-00670":{"line":3925,"offset":690408,"length":173,"previous":"M21-GAP-00669","next":"M21-GAP-00671"},"M21-GAP-00671":{"line":3926,"offset":690581,"length":173,"previous":"M21-GAP-00670","next":"M21-GAP-00672"},"M21-GAP-00672":{"line":3927,"offset":690754,"length":173,"previous":"M21-GAP-00671","next":"M21-GAP-00673"},"M21-GAP-00673":{"line":3928,"offset":690927,"length":173,"previous":"M21-GAP-00672","next":"M21-GAP-00674"},"M21-GAP-00674":{"line":3929,"offset":691100,"length":173,"previous":"M21-GAP-00673","next":"M21-GAP-00675"},"M21-GAP-00675":{"line":3930,"offset":691273,"length":172,"previous":"M21-GAP-00674","next":"M21-GAP-00676"},"M21-GAP-00676":{"line":3931,"offset":691445,"length":173,"previous":"M21-GAP-00675","next":"M21-GAP-00677"},"M21-GAP-00677":{"line":3932,"offset":691618,"length":173,"previous":"M21-GAP-00676","next":"M21-GAP-00678"},"M21-GAP-00678":{"line":3933,"offset":691791,"length":173,"previous":"M21-GAP-00677","next":"M21-GAP-00679"},"M21-GAP-00679":{"line":3934,"offset":691964,"length":173,"previous":"M21-GAP-00678","next":"M21-GAP-00680"},"M21-GAP-00680":{"line":3935,"offset":692137,"length":173,"previous":"M21-GAP-00679","next":"M21-GAP-00681"},"M21-GAP-00681":{"line":3936,"offset":692310,"length":173,"previous":"M21-GAP-00680","next":"M21-GAP-00682"},"M21-GAP-00682":{"line":3937,"offset":692483,"length":173,"previous":"M21-GAP-00681","next":"M21-GAP-00683"},"M21-GAP-00683":{"line":3938,"offset":692656,"length":173,"previous":"M21-GAP-00682","next":"M21-GAP-00684"},"M21-GAP-00684":{"line":3939,"offset":692829,"length":173,"previous":"M21-GAP-00683","next":"M21-GAP-00685"},"M21-GAP-00685":{"line":3940,"offset":693002,"length":173,"previous":"M21-GAP-00684","next":"M21-GAP-00686"},"M21-GAP-00686":{"line":3941,"offset":693175,"length":172,"previous":"M21-GAP-00685","next":"M21-GAP-00687"},"M21-GAP-00687":{"line":3942,"offset":693347,"length":173,"previous":"M21-GAP-00686","next":"M21-GAP-00688"},"M21-GAP-00688":{"line":3943,"offset":693520,"length":173,"previous":"M21-GAP-00687","next":"M21-GAP-00689"},"M21-GAP-00689":{"line":3944,"offset":693693,"length":173,"previous":"M21-GAP-00688","next":"M21-GAP-00690"},"M21-GAP-00690":{"line":3945,"offset":693866,"length":173,"previous":"M21-GAP-00689","next":"M21-GAP-00691"},"M21-GAP-00691":{"line":3946,"offset":694039,"length":173,"previous":"M21-GAP-00690","next":"M21-GAP-00692"},"M21-GAP-00692":{"line":3947,"offset":694212,"length":173,"previous":"M21-GAP-00691","next":"M21-GAP-00693"},"M21-GAP-00693":{"line":3948,"offset":694385,"length":173,"previous":"M21-GAP-00692","next":"M21-GAP-00694"},"M21-GAP-00694":{"line":3949,"offset":694558,"length":173,"previous":"M21-GAP-00693","next":"M21-GAP-00695"},"M21-GAP-00695":{"line":3950,"offset":694731,"length":173,"previous":"M21-GAP-00694","next":"M21-GAP-00696"},"M21-GAP-00696":{"line":3951,"offset":694904,"length":173,"previous":"M21-GAP-00695","next":"M21-GAP-00697"},"M21-GAP-00697":{"line":3952,"offset":695077,"length":172,"previous":"M21-GAP-00696","next":"M21-GAP-00698"},"M21-GAP-00698":{"line":3953,"offset":695249,"length":173,"previous":"M21-GAP-00697","next":"M21-GAP-00699"},"M21-GAP-00699":{"line":3954,"offset":695422,"length":173,"previous":"M21-GAP-00698","next":"M21-GAP-00700"},"M21-GAP-00700":{"line":3955,"offset":695595,"length":173,"previous":"M21-GAP-00699","next":"M21-GAP-00701"},"M21-GAP-00701":{"line":3956,"offset":695768,"length":173,"previous":"M21-GAP-00700","next":"M21-GAP-00702"},"M21-GAP-00702":{"line":3957,"offset":695941,"length":173,"previous":"M21-GAP-00701","next":"M21-GAP-00703"},"M21-GAP-00703":{"line":3958,"offset":696114,"length":172,"previous":"M21-GAP-00702","next":"M21-GAP-00704"},"M21-GAP-00704":{"line":3959,"offset":696286,"length":172,"previous":"M21-GAP-00703","next":"M21-GAP-00705"},"M21-GAP-00705":{"line":3960,"offset":696458,"length":172,"previous":"M21-GAP-00704","next":"M21-GAP-00706"},"M21-GAP-00706":{"line":3961,"offset":696630,"length":172,"previous":"M21-GAP-00705","next":"M21-GAP-00707"},"M21-GAP-00707":{"line":3962,"offset":696802,"length":172,"previous":"M21-GAP-00706","next":"M21-GAP-00708"},"M21-GAP-00708":{"line":3963,"offset":696974,"length":173,"previous":"M21-GAP-00707","next":"M21-GAP-00709"},"M21-GAP-00709":{"line":3964,"offset":697147,"length":173,"previous":"M21-GAP-00708","next":"M21-GAP-00710"},"M21-GAP-00710":{"line":3965,"offset":697320,"length":174,"previous":"M21-GAP-00709","next":"M21-GAP-00711"},"M21-GAP-00711":{"line":3966,"offset":697494,"length":174,"previous":"M21-GAP-00710","next":"M21-GAP-00712"},"M21-GAP-00712":{"line":3967,"offset":697668,"length":174,"previous":"M21-GAP-00711","next":"M21-GAP-00713"},"M21-GAP-00713":{"line":3968,"offset":697842,"length":174,"previous":"M21-GAP-00712","next":"M21-GAP-00714"},"M21-GAP-00714":{"line":3969,"offset":698016,"length":174,"previous":"M21-GAP-00713","next":"M21-GAP-00715"},"M21-GAP-00715":{"line":3970,"offset":698190,"length":174,"previous":"M21-GAP-00714","next":"M21-GAP-00716"},"M21-GAP-00716":{"line":3971,"offset":698364,"length":174,"previous":"M21-GAP-00715","next":"M21-GAP-00717"},"M21-GAP-00717":{"line":3972,"offset":698538,"length":174,"previous":"M21-GAP-00716","next":"M21-GAP-00718"},"M21-GAP-00718":{"line":3973,"offset":698712,"length":174,"previous":"M21-GAP-00717","next":"M21-GAP-00719"},"M21-GAP-00719":{"line":3974,"offset":698886,"length":174,"previous":"M21-GAP-00718","next":"M21-GAP-00720"},"M21-GAP-00720":{"line":3975,"offset":699060,"length":173,"previous":"M21-GAP-00719","next":"M21-GAP-00721"},"M21-GAP-00721":{"line":3976,"offset":699233,"length":174,"previous":"M21-GAP-00720","next":"M21-GAP-00722"},"M21-GAP-00722":{"line":3977,"offset":699407,"length":174,"previous":"M21-GAP-00721","next":"M21-GAP-00723"},"M21-GAP-00723":{"line":3978,"offset":699581,"length":174,"previous":"M21-GAP-00722","next":"M21-GAP-00724"},"M21-GAP-00724":{"line":3979,"offset":699755,"length":174,"previous":"M21-GAP-00723","next":"M21-GAP-00725"},"M21-GAP-00725":{"line":3980,"offset":699929,"length":174,"previous":"M21-GAP-00724","next":"M21-GAP-00726"},"M21-GAP-00726":{"line":3981,"offset":700103,"length":174,"previous":"M21-GAP-00725","next":"M21-GAP-00727"},"M21-GAP-00727":{"line":3982,"offset":700277,"length":174,"previous":"M21-GAP-00726","next":"M21-GAP-00728"},"M21-GAP-00728":{"line":3983,"offset":700451,"length":174,"previous":"M21-GAP-00727","next":"M21-GAP-00729"},"M21-GAP-00729":{"line":3984,"offset":700625,"length":174,"previous":"M21-GAP-00728","next":"M21-GAP-00730"},"M21-GAP-00730":{"line":3985,"offset":700799,"length":174,"previous":"M21-GAP-00729","next":"M21-GAP-00731"},"M21-GAP-00731":{"line":3986,"offset":700973,"length":173,"previous":"M21-GAP-00730","next":"M21-GAP-00732"},"M21-GAP-00732":{"line":3987,"offset":701146,"length":174,"previous":"M21-GAP-00731","next":"M21-GAP-00733"},"M21-GAP-00733":{"line":3988,"offset":701320,"length":174,"previous":"M21-GAP-00732","next":"M21-GAP-00734"},"M21-GAP-00734":{"line":3989,"offset":701494,"length":174,"previous":"M21-GAP-00733","next":"M21-GAP-00735"},"M21-GAP-00735":{"line":3990,"offset":701668,"length":174,"previous":"M21-GAP-00734","next":"M21-GAP-00736"},"M21-GAP-00736":{"line":3991,"offset":701842,"length":173,"previous":"M21-GAP-00735","next":"M21-GAP-00737"},"M21-GAP-00737":{"line":3992,"offset":702015,"length":173,"previous":"M21-GAP-00736","next":"M21-GAP-00738"},"M21-GAP-00738":{"line":3993,"offset":702188,"length":173,"previous":"M21-GAP-00737","next":"M21-GAP-00739"},"M21-GAP-00739":{"line":3994,"offset":702361,"length":173,"previous":"M21-GAP-00738","next":"M21-GAP-00740"},"M21-GAP-00740":{"line":3995,"offset":702534,"length":173,"previous":"M21-GAP-00739","next":"M21-GAP-00741"},"M21-GAP-00741":{"line":3996,"offset":702707,"length":173,"previous":"M21-GAP-00740","next":"M21-GAP-00742"},"M21-GAP-00742":{"line":3997,"offset":702880,"length":191,"previous":"M21-GAP-00741","next":"M21-GAP-00743"},"M21-GAP-00743":{"line":3998,"offset":703071,"length":191,"previous":"M21-GAP-00742","next":"M21-GAP-00744"},"M21-GAP-00744":{"line":3999,"offset":703262,"length":192,"previous":"M21-GAP-00743","next":"M21-GAP-00745"},"M21-GAP-00745":{"line":4000,"offset":703454,"length":192,"previous":"M21-GAP-00744","next":"M21-GAP-00746"},"M21-GAP-00746":{"line":4001,"offset":703646,"length":192,"previous":"M21-GAP-00745","next":"M21-GAP-00747"},"M21-GAP-00747":{"line":4002,"offset":703838,"length":192,"previous":"M21-GAP-00746","next":"M21-GAP-00748"},"M21-GAP-00748":{"line":4003,"offset":704030,"length":191,"previous":"M21-GAP-00747","next":"M21-GAP-00749"},"M21-GAP-00749":{"line":4004,"offset":704221,"length":191,"previous":"M21-GAP-00748","next":"M21-GAP-00750"},"M21-GAP-00750":{"line":4005,"offset":704412,"length":191,"previous":"M21-GAP-00749","next":"M21-GAP-00751"},"M21-GAP-00751":{"line":4006,"offset":704603,"length":191,"previous":"M21-GAP-00750","next":"M21-GAP-00752"},"M21-GAP-00752":{"line":4007,"offset":704794,"length":191,"previous":"M21-GAP-00751","next":"M21-GAP-00753"},"M21-GAP-00753":{"line":4008,"offset":704985,"length":191,"previous":"M21-GAP-00752","next":"M21-GAP-00754"},"M21-GAP-00754":{"line":4009,"offset":705176,"length":191,"previous":"M21-GAP-00753","next":"M21-GAP-00755"},"M21-GAP-00755":{"line":4010,"offset":705367,"length":191,"previous":"M21-GAP-00754","next":"M21-GAP-00756"},"M21-GAP-00756":{"line":4011,"offset":705558,"length":195,"previous":"M21-GAP-00755","next":"M21-GAP-00757"},"M21-GAP-00757":{"line":4012,"offset":705753,"length":195,"previous":"M21-GAP-00756","next":"M21-GAP-00758"},"M21-GAP-00758":{"line":4013,"offset":705948,"length":195,"previous":"M21-GAP-00757","next":"M21-GAP-00759"},"M21-GAP-00759":{"line":4014,"offset":706143,"length":187,"previous":"M21-GAP-00758","next":"M21-GAP-00760"},"M21-GAP-00760":{"line":4015,"offset":706330,"length":187,"previous":"M21-GAP-00759","next":"M21-GAP-00761"},"M21-GAP-00761":{"line":4016,"offset":706517,"length":188,"previous":"M21-GAP-00760","next":"M21-GAP-00762"},"M21-GAP-00762":{"line":4017,"offset":706705,"length":188,"previous":"M21-GAP-00761","next":"M21-GAP-00763"},"M21-GAP-00763":{"line":4018,"offset":706893,"length":188,"previous":"M21-GAP-00762","next":"M21-GAP-00764"},"M21-GAP-00764":{"line":4019,"offset":707081,"length":188,"previous":"M21-GAP-00763","next":"M21-GAP-00765"},"M21-GAP-00765":{"line":4020,"offset":707269,"length":188,"previous":"M21-GAP-00764","next":"M21-GAP-00766"},"M21-GAP-00766":{"line":4021,"offset":707457,"length":188,"previous":"M21-GAP-00765","next":"M21-GAP-00767"},"M21-GAP-00767":{"line":4022,"offset":707645,"length":188,"previous":"M21-GAP-00766","next":"M21-GAP-00768"},"M21-GAP-00768":{"line":4023,"offset":707833,"length":188,"previous":"M21-GAP-00767","next":"M21-GAP-00769"},"M21-GAP-00769":{"line":4024,"offset":708021,"length":188,"previous":"M21-GAP-00768","next":"M21-GAP-00770"},"M21-GAP-00770":{"line":4025,"offset":708209,"length":188,"previous":"M21-GAP-00769","next":"M21-GAP-00771"},"M21-GAP-00771":{"line":4026,"offset":708397,"length":187,"previous":"M21-GAP-00770","next":"M21-GAP-00772"},"M21-GAP-00772":{"line":4027,"offset":708584,"length":188,"previous":"M21-GAP-00771","next":"M21-GAP-00773"},"M21-GAP-00773":{"line":4028,"offset":708772,"length":188,"previous":"M21-GAP-00772","next":"M21-GAP-00774"},"M21-GAP-00774":{"line":4029,"offset":708960,"length":188,"previous":"M21-GAP-00773","next":"M21-GAP-00775"},"M21-GAP-00775":{"line":4030,"offset":709148,"length":188,"previous":"M21-GAP-00774","next":"M21-GAP-00776"},"M21-GAP-00776":{"line":4031,"offset":709336,"length":188,"previous":"M21-GAP-00775","next":"M21-GAP-00777"},"M21-GAP-00777":{"line":4032,"offset":709524,"length":188,"previous":"M21-GAP-00776","next":"M21-GAP-00778"},"M21-GAP-00778":{"line":4033,"offset":709712,"length":188,"previous":"M21-GAP-00777","next":"M21-GAP-00779"},"M21-GAP-00779":{"line":4034,"offset":709900,"length":188,"previous":"M21-GAP-00778","next":"M21-GAP-00780"},"M21-GAP-00780":{"line":4035,"offset":710088,"length":188,"previous":"M21-GAP-00779","next":"M21-GAP-00781"},"M21-GAP-00781":{"line":4036,"offset":710276,"length":188,"previous":"M21-GAP-00780","next":"M21-GAP-00782"},"M21-GAP-00782":{"line":4037,"offset":710464,"length":187,"previous":"M21-GAP-00781","next":"M21-GAP-00783"},"M21-GAP-00783":{"line":4038,"offset":710651,"length":188,"previous":"M21-GAP-00782","next":"M21-GAP-00784"},"M21-GAP-00784":{"line":4039,"offset":710839,"length":188,"previous":"M21-GAP-00783","next":"M21-GAP-00785"},"M21-GAP-00785":{"line":4040,"offset":711027,"length":188,"previous":"M21-GAP-00784","next":"M21-GAP-00786"},"M21-GAP-00786":{"line":4041,"offset":711215,"length":188,"previous":"M21-GAP-00785","next":"M21-GAP-00787"},"M21-GAP-00787":{"line":4042,"offset":711403,"length":188,"previous":"M21-GAP-00786","next":"M21-GAP-00788"},"M21-GAP-00788":{"line":4043,"offset":711591,"length":188,"previous":"M21-GAP-00787","next":"M21-GAP-00789"},"M21-GAP-00789":{"line":4044,"offset":711779,"length":188,"previous":"M21-GAP-00788","next":"M21-GAP-00790"},"M21-GAP-00790":{"line":4045,"offset":711967,"length":188,"previous":"M21-GAP-00789","next":"M21-GAP-00791"},"M21-GAP-00791":{"line":4046,"offset":712155,"length":188,"previous":"M21-GAP-00790","next":"M21-GAP-00792"},"M21-GAP-00792":{"line":4047,"offset":712343,"length":188,"previous":"M21-GAP-00791","next":"M21-GAP-00793"},"M21-GAP-00793":{"line":4048,"offset":712531,"length":187,"previous":"M21-GAP-00792","next":"M21-GAP-00794"},"M21-GAP-00794":{"line":4049,"offset":712718,"length":188,"previous":"M21-GAP-00793","next":"M21-GAP-00795"},"M21-GAP-00795":{"line":4050,"offset":712906,"length":188,"previous":"M21-GAP-00794","next":"M21-GAP-00796"},"M21-GAP-00796":{"line":4051,"offset":713094,"length":188,"previous":"M21-GAP-00795","next":"M21-GAP-00797"},"M21-GAP-00797":{"line":4052,"offset":713282,"length":188,"previous":"M21-GAP-00796","next":"M21-GAP-00798"},"M21-GAP-00798":{"line":4053,"offset":713470,"length":188,"previous":"M21-GAP-00797","next":"M21-GAP-00799"},"M21-GAP-00799":{"line":4054,"offset":713658,"length":188,"previous":"M21-GAP-00798","next":"M21-GAP-00800"},"M21-GAP-00800":{"line":4055,"offset":713846,"length":188,"previous":"M21-GAP-00799","next":"M21-GAP-00801"},"M21-GAP-00801":{"line":4056,"offset":714034,"length":188,"previous":"M21-GAP-00800","next":"M21-GAP-00802"},"M21-GAP-00802":{"line":4057,"offset":714222,"length":188,"previous":"M21-GAP-00801","next":"M21-GAP-00803"},"M21-GAP-00803":{"line":4058,"offset":714410,"length":188,"previous":"M21-GAP-00802","next":"M21-GAP-00804"},"M21-GAP-00804":{"line":4059,"offset":714598,"length":187,"previous":"M21-GAP-00803","next":"M21-GAP-00805"},"M21-GAP-00805":{"line":4060,"offset":714785,"length":188,"previous":"M21-GAP-00804","next":"M21-GAP-00806"},"M21-GAP-00806":{"line":4061,"offset":714973,"length":188,"previous":"M21-GAP-00805","next":"M21-GAP-00807"},"M21-GAP-00807":{"line":4062,"offset":715161,"length":188,"previous":"M21-GAP-00806","next":"M21-GAP-00808"},"M21-GAP-00808":{"line":4063,"offset":715349,"length":188,"previous":"M21-GAP-00807","next":"M21-GAP-00809"},"M21-GAP-00809":{"line":4064,"offset":715537,"length":188,"previous":"M21-GAP-00808","next":"M21-GAP-00810"},"M21-GAP-00810":{"line":4065,"offset":715725,"length":188,"previous":"M21-GAP-00809","next":"M21-GAP-00811"},"M21-GAP-00811":{"line":4066,"offset":715913,"length":188,"previous":"M21-GAP-00810","next":"M21-GAP-00812"},"M21-GAP-00812":{"line":4067,"offset":716101,"length":188,"previous":"M21-GAP-00811","next":"M21-GAP-00813"},"M21-GAP-00813":{"line":4068,"offset":716289,"length":188,"previous":"M21-GAP-00812","next":"M21-GAP-00814"},"M21-GAP-00814":{"line":4069,"offset":716477,"length":188,"previous":"M21-GAP-00813","next":"M21-GAP-00815"},"M21-GAP-00815":{"line":4070,"offset":716665,"length":187,"previous":"M21-GAP-00814","next":"M21-GAP-00816"},"M21-GAP-00816":{"line":4071,"offset":716852,"length":188,"previous":"M21-GAP-00815","next":"M21-GAP-00817"},"M21-GAP-00817":{"line":4072,"offset":717040,"length":188,"previous":"M21-GAP-00816","next":"M21-GAP-00818"},"M21-GAP-00818":{"line":4073,"offset":717228,"length":188,"previous":"M21-GAP-00817","next":"M21-GAP-00819"},"M21-GAP-00819":{"line":4074,"offset":717416,"length":188,"previous":"M21-GAP-00818","next":"M21-GAP-00820"},"M21-GAP-00820":{"line":4075,"offset":717604,"length":188,"previous":"M21-GAP-00819","next":"M21-GAP-00821"},"M21-GAP-00821":{"line":4076,"offset":717792,"length":188,"previous":"M21-GAP-00820","next":"M21-GAP-00822"},"M21-GAP-00822":{"line":4077,"offset":717980,"length":188,"previous":"M21-GAP-00821","next":"M21-GAP-00823"},"M21-GAP-00823":{"line":4078,"offset":718168,"length":188,"previous":"M21-GAP-00822","next":"M21-GAP-00824"},"M21-GAP-00824":{"line":4079,"offset":718356,"length":187,"previous":"M21-GAP-00823","next":"M21-GAP-00825"},"M21-GAP-00825":{"line":4080,"offset":718543,"length":187,"previous":"M21-GAP-00824","next":"M21-GAP-00826"},"M21-GAP-00826":{"line":4081,"offset":718730,"length":187,"previous":"M21-GAP-00825","next":"M21-GAP-00827"},"M21-GAP-00827":{"line":4082,"offset":718917,"length":205,"previous":"M21-GAP-00826","next":"M21-GAP-00828"},"M21-GAP-00828":{"line":4083,"offset":719122,"length":205,"previous":"M21-GAP-00827","next":"M21-GAP-00829"},"M21-GAP-00829":{"line":4084,"offset":719327,"length":205,"previous":"M21-GAP-00828","next":"M21-GAP-00830"},"M21-GAP-00830":{"line":4085,"offset":719532,"length":205,"previous":"M21-GAP-00829","next":"M21-GAP-00831"},"M21-GAP-00831":{"line":4086,"offset":719737,"length":205,"previous":"M21-GAP-00830","next":"M21-GAP-00832"},"M21-GAP-00832":{"line":4087,"offset":719942,"length":205,"previous":"M21-GAP-00831","next":"M21-GAP-00833"},"M21-GAP-00833":{"line":4088,"offset":720147,"length":205,"previous":"M21-GAP-00832","next":"M21-GAP-00834"},"M21-GAP-00834":{"line":4089,"offset":720352,"length":187,"previous":"M21-GAP-00833","next":"M21-GAP-00835"},"M21-GAP-00835":{"line":4090,"offset":720539,"length":187,"previous":"M21-GAP-00834","next":"M21-GAP-00836"},"M21-GAP-00836":{"line":4091,"offset":720726,"length":187,"previous":"M21-GAP-00835","next":"M21-GAP-00837"},"M21-GAP-00837":{"line":4092,"offset":720913,"length":187,"previous":"M21-GAP-00836","next":"M21-GAP-00838"},"M21-GAP-00838":{"line":4093,"offset":721100,"length":187,"previous":"M21-GAP-00837","next":"M21-GAP-00839"},"M21-GAP-00839":{"line":4094,"offset":721287,"length":187,"previous":"M21-GAP-00838","next":"M21-GAP-00840"},"M21-GAP-00840":{"line":4095,"offset":721474,"length":187,"previous":"M21-GAP-00839","next":"M21-GAP-00841"},"M21-GAP-00841":{"line":4096,"offset":721661,"length":194,"previous":"M21-GAP-00840","next":"M21-GAP-00842"},"M21-GAP-00842":{"line":4097,"offset":721855,"length":194,"previous":"M21-GAP-00841","next":"M21-GAP-00843"},"M21-GAP-00843":{"line":4098,"offset":722049,"length":194,"previous":"M21-GAP-00842","next":"M21-GAP-00844"},"M21-GAP-00844":{"line":4099,"offset":722243,"length":194,"previous":"M21-GAP-00843","next":"M21-GAP-00845"},"M21-GAP-00845":{"line":4100,"offset":722437,"length":194,"previous":"M21-GAP-00844","next":"M21-GAP-00846"},"M21-GAP-00846":{"line":4101,"offset":722631,"length":194,"previous":"M21-GAP-00845","next":"M21-GAP-00847"},"M21-GAP-00847":{"line":4102,"offset":722825,"length":191,"previous":"M21-GAP-00846","next":"M21-GAP-00848"},"M21-GAP-00848":{"line":4103,"offset":723016,"length":191,"previous":"M21-GAP-00847","next":"M21-GAP-00849"},"M21-GAP-00849":{"line":4104,"offset":723207,"length":192,"previous":"M21-GAP-00848","next":"M21-GAP-00850"},"M21-GAP-00850":{"line":4105,"offset":723399,"length":192,"previous":"M21-GAP-00849","next":"M21-GAP-00851"},"M21-GAP-00851":{"line":4106,"offset":723591,"length":192,"previous":"M21-GAP-00850","next":"M21-GAP-00852"},"M21-GAP-00852":{"line":4107,"offset":723783,"length":192,"previous":"M21-GAP-00851","next":"M21-GAP-00853"},"M21-GAP-00853":{"line":4108,"offset":723975,"length":192,"previous":"M21-GAP-00852","next":"M21-GAP-00854"},"M21-GAP-00854":{"line":4109,"offset":724167,"length":192,"previous":"M21-GAP-00853","next":"M21-GAP-00855"},"M21-GAP-00855":{"line":4110,"offset":724359,"length":192,"previous":"M21-GAP-00854","next":"M21-GAP-00856"},"M21-GAP-00856":{"line":4111,"offset":724551,"length":192,"previous":"M21-GAP-00855","next":"M21-GAP-00857"},"M21-GAP-00857":{"line":4112,"offset":724743,"length":192,"previous":"M21-GAP-00856","next":"M21-GAP-00858"},"M21-GAP-00858":{"line":4113,"offset":724935,"length":192,"previous":"M21-GAP-00857","next":"M21-GAP-00859"},"M21-GAP-00859":{"line":4114,"offset":725127,"length":191,"previous":"M21-GAP-00858","next":"M21-GAP-00860"},"M21-GAP-00860":{"line":4115,"offset":725318,"length":192,"previous":"M21-GAP-00859","next":"M21-GAP-00861"},"M21-GAP-00861":{"line":4116,"offset":725510,"length":192,"previous":"M21-GAP-00860","next":"M21-GAP-00862"},"M21-GAP-00862":{"line":4117,"offset":725702,"length":192,"previous":"M21-GAP-00861","next":"M21-GAP-00863"},"M21-GAP-00863":{"line":4118,"offset":725894,"length":192,"previous":"M21-GAP-00862","next":"M21-GAP-00864"},"M21-GAP-00864":{"line":4119,"offset":726086,"length":192,"previous":"M21-GAP-00863","next":"M21-GAP-00865"},"M21-GAP-00865":{"line":4120,"offset":726278,"length":192,"previous":"M21-GAP-00864","next":"M21-GAP-00866"},"M21-GAP-00866":{"line":4121,"offset":726470,"length":192,"previous":"M21-GAP-00865","next":"M21-GAP-00867"},"M21-GAP-00867":{"line":4122,"offset":726662,"length":192,"previous":"M21-GAP-00866","next":"M21-GAP-00868"},"M21-GAP-00868":{"line":4123,"offset":726854,"length":192,"previous":"M21-GAP-00867","next":"M21-GAP-00869"},"M21-GAP-00869":{"line":4124,"offset":727046,"length":192,"previous":"M21-GAP-00868","next":"M21-GAP-00870"},"M21-GAP-00870":{"line":4125,"offset":727238,"length":191,"previous":"M21-GAP-00869","next":"M21-GAP-00871"},"M21-GAP-00871":{"line":4126,"offset":727429,"length":192,"previous":"M21-GAP-00870","next":"M21-GAP-00872"},"M21-GAP-00872":{"line":4127,"offset":727621,"length":192,"previous":"M21-GAP-00871","next":"M21-GAP-00873"},"M21-GAP-00873":{"line":4128,"offset":727813,"length":191,"previous":"M21-GAP-00872","next":"M21-GAP-00874"},"M21-GAP-00874":{"line":4129,"offset":728004,"length":191,"previous":"M21-GAP-00873","next":"M21-GAP-00875"},"M21-GAP-00875":{"line":4130,"offset":728195,"length":191,"previous":"M21-GAP-00874","next":"M21-GAP-00876"},"M21-GAP-00876":{"line":4131,"offset":728386,"length":191,"previous":"M21-GAP-00875","next":"M21-GAP-00877"},"M21-GAP-00877":{"line":4132,"offset":728577,"length":191,"previous":"M21-GAP-00876","next":"M21-GAP-00878"},"M21-GAP-00878":{"line":4133,"offset":728768,"length":191,"previous":"M21-GAP-00877","next":"M21-GAP-00879"},"M21-GAP-00879":{"line":4134,"offset":728959,"length":186,"previous":"M21-GAP-00878","next":"M21-GAP-00880"},"M21-GAP-00880":{"line":4135,"offset":729145,"length":186,"previous":"M21-GAP-00879","next":"M21-GAP-00881"},"M21-GAP-00881":{"line":4136,"offset":729331,"length":187,"previous":"M21-GAP-00880","next":"M21-GAP-00882"},"M21-GAP-00882":{"line":4137,"offset":729518,"length":187,"previous":"M21-GAP-00881","next":"M21-GAP-00883"},"M21-GAP-00883":{"line":4138,"offset":729705,"length":187,"previous":"M21-GAP-00882","next":"M21-GAP-00884"},"M21-GAP-00884":{"line":4139,"offset":729892,"length":187,"previous":"M21-GAP-00883","next":"M21-GAP-00885"},"M21-GAP-00885":{"line":4140,"offset":730079,"length":187,"previous":"M21-GAP-00884","next":"M21-GAP-00886"},"M21-GAP-00886":{"line":4141,"offset":730266,"length":187,"previous":"M21-GAP-00885","next":"M21-GAP-00887"},"M21-GAP-00887":{"line":4142,"offset":730453,"length":187,"previous":"M21-GAP-00886","next":"M21-GAP-00888"},"M21-GAP-00888":{"line":4143,"offset":730640,"length":187,"previous":"M21-GAP-00887","next":"M21-GAP-00889"},"M21-GAP-00889":{"line":4144,"offset":730827,"length":187,"previous":"M21-GAP-00888","next":"M21-GAP-00890"},"M21-GAP-00890":{"line":4145,"offset":731014,"length":187,"previous":"M21-GAP-00889","next":"M21-GAP-00891"},"M21-GAP-00891":{"line":4146,"offset":731201,"length":186,"previous":"M21-GAP-00890","next":"M21-GAP-00892"},"M21-GAP-00892":{"line":4147,"offset":731387,"length":187,"previous":"M21-GAP-00891","next":"M21-GAP-00893"},"M21-GAP-00893":{"line":4148,"offset":731574,"length":187,"previous":"M21-GAP-00892","next":"M21-GAP-00894"},"M21-GAP-00894":{"line":4149,"offset":731761,"length":187,"previous":"M21-GAP-00893","next":"M21-GAP-00895"},"M21-GAP-00895":{"line":4150,"offset":731948,"length":187,"previous":"M21-GAP-00894","next":"M21-GAP-00896"},"M21-GAP-00896":{"line":4151,"offset":732135,"length":187,"previous":"M21-GAP-00895","next":"M21-GAP-00897"},"M21-GAP-00897":{"line":4152,"offset":732322,"length":187,"previous":"M21-GAP-00896","next":"M21-GAP-00898"},"M21-GAP-00898":{"line":4153,"offset":732509,"length":187,"previous":"M21-GAP-00897","next":"M21-GAP-00899"},"M21-GAP-00899":{"line":4154,"offset":732696,"length":187,"previous":"M21-GAP-00898","next":"M21-GAP-00900"},"M21-GAP-00900":{"line":4155,"offset":732883,"length":187,"previous":"M21-GAP-00899","next":"M21-GAP-00901"},"M21-GAP-00901":{"line":4156,"offset":733070,"length":187,"previous":"M21-GAP-00900","next":"M21-GAP-00902"},"M21-GAP-00902":{"line":4157,"offset":733257,"length":186,"previous":"M21-GAP-00901","next":"M21-GAP-00903"},"M21-GAP-00903":{"line":4158,"offset":733443,"length":187,"previous":"M21-GAP-00902","next":"M21-GAP-00904"},"M21-GAP-00904":{"line":4159,"offset":733630,"length":187,"previous":"M21-GAP-00903","next":"M21-GAP-00905"},"M21-GAP-00905":{"line":4160,"offset":733817,"length":186,"previous":"M21-GAP-00904","next":"M21-GAP-00906"},"M21-GAP-00906":{"line":4161,"offset":734003,"length":186,"previous":"M21-GAP-00905","next":"M21-GAP-00907"},"M21-GAP-00907":{"line":4162,"offset":734189,"length":186,"previous":"M21-GAP-00906","next":"M21-GAP-00908"},"M21-GAP-00908":{"line":4163,"offset":734375,"length":186,"previous":"M21-GAP-00907","next":"M21-GAP-00909"},"M21-GAP-00909":{"line":4164,"offset":734561,"length":186,"previous":"M21-GAP-00908","next":"M21-GAP-00910"},"M21-GAP-00910":{"line":4165,"offset":734747,"length":186,"previous":"M21-GAP-00909","next":"M21-GAP-00911"},"M21-GAP-00911":{"line":4166,"offset":734933,"length":186,"previous":"M21-GAP-00910","next":"M21-GAP-00912"},"M21-GAP-00912":{"line":4167,"offset":735119,"length":186,"previous":"M21-GAP-00911","next":"M21-GAP-00913"},"M21-GAP-00913":{"line":4168,"offset":735305,"length":187,"previous":"M21-GAP-00912","next":"M21-GAP-00914"},"M21-GAP-00914":{"line":4169,"offset":735492,"length":187,"previous":"M21-GAP-00913","next":"M21-GAP-00915"},"M21-GAP-00915":{"line":4170,"offset":735679,"length":187,"previous":"M21-GAP-00914","next":"M21-GAP-00916"},"M21-GAP-00916":{"line":4171,"offset":735866,"length":187,"previous":"M21-GAP-00915","next":"M21-GAP-00917"},"M21-GAP-00917":{"line":4172,"offset":736053,"length":186,"previous":"M21-GAP-00916","next":"M21-GAP-00918"},"M21-GAP-00918":{"line":4173,"offset":736239,"length":186,"previous":"M21-GAP-00917","next":"M21-GAP-00919"},"M21-GAP-00919":{"line":4174,"offset":736425,"length":186,"previous":"M21-GAP-00918","next":"M21-GAP-00920"},"M21-GAP-00920":{"line":4175,"offset":736611,"length":186,"previous":"M21-GAP-00919","next":"M21-GAP-00921"},"M21-GAP-00921":{"line":4176,"offset":736797,"length":186,"previous":"M21-GAP-00920","next":"M21-GAP-00922"},"M21-GAP-00922":{"line":4177,"offset":736983,"length":186,"previous":"M21-GAP-00921","next":"M21-GAP-00923"},"M21-GAP-00923":{"line":4178,"offset":737169,"length":186,"previous":"M21-GAP-00922","next":"M21-GAP-00924"},"M21-GAP-00924":{"line":4179,"offset":737355,"length":186,"previous":"M21-GAP-00923","next":"M21-GAP-00925"},"M21-GAP-00925":{"line":4180,"offset":737541,"length":171,"previous":"M21-GAP-00924","next":"M21-GAP-00926"},"M21-GAP-00926":{"line":4181,"offset":737712,"length":171,"previous":"M21-GAP-00925","next":"M21-GAP-00927"},"M21-GAP-00927":{"line":4182,"offset":737883,"length":172,"previous":"M21-GAP-00926","next":"M21-GAP-00928"},"M21-GAP-00928":{"line":4183,"offset":738055,"length":172,"previous":"M21-GAP-00927","next":"M21-GAP-00929"},"M21-GAP-00929":{"line":4184,"offset":738227,"length":172,"previous":"M21-GAP-00928","next":"M21-GAP-00930"},"M21-GAP-00930":{"line":4185,"offset":738399,"length":172,"previous":"M21-GAP-00929","next":"M21-GAP-00931"},"M21-GAP-00931":{"line":4186,"offset":738571,"length":172,"previous":"M21-GAP-00930","next":"M21-GAP-00932"},"M21-GAP-00932":{"line":4187,"offset":738743,"length":172,"previous":"M21-GAP-00931","next":"M21-GAP-00933"},"M21-GAP-00933":{"line":4188,"offset":738915,"length":172,"previous":"M21-GAP-00932","next":"M21-GAP-00934"},"M21-GAP-00934":{"line":4189,"offset":739087,"length":172,"previous":"M21-GAP-00933","next":"M21-GAP-00935"},"M21-GAP-00935":{"line":4190,"offset":739259,"length":172,"previous":"M21-GAP-00934","next":"M21-GAP-00936"},"M21-GAP-00936":{"line":4191,"offset":739431,"length":172,"previous":"M21-GAP-00935","next":"M21-GAP-00937"},"M21-GAP-00937":{"line":4192,"offset":739603,"length":171,"previous":"M21-GAP-00936","next":"M21-GAP-00938"},"M21-GAP-00938":{"line":4193,"offset":739774,"length":172,"previous":"M21-GAP-00937","next":"M21-GAP-00939"},"M21-GAP-00939":{"line":4194,"offset":739946,"length":172,"previous":"M21-GAP-00938","next":"M21-GAP-00940"},"M21-GAP-00940":{"line":4195,"offset":740118,"length":172,"previous":"M21-GAP-00939","next":"M21-GAP-00941"},"M21-GAP-00941":{"line":4196,"offset":740290,"length":172,"previous":"M21-GAP-00940","next":"M21-GAP-00942"},"M21-GAP-00942":{"line":4197,"offset":740462,"length":172,"previous":"M21-GAP-00941","next":"M21-GAP-00943"},"M21-GAP-00943":{"line":4198,"offset":740634,"length":172,"previous":"M21-GAP-00942","next":"M21-GAP-00944"},"M21-GAP-00944":{"line":4199,"offset":740806,"length":172,"previous":"M21-GAP-00943","next":"M21-GAP-00945"},"M21-GAP-00945":{"line":4200,"offset":740978,"length":172,"previous":"M21-GAP-00944","next":"M21-GAP-00946"},"M21-GAP-00946":{"line":4201,"offset":741150,"length":172,"previous":"M21-GAP-00945","next":"M21-GAP-00947"},"M21-GAP-00947":{"line":4202,"offset":741322,"length":172,"previous":"M21-GAP-00946","next":"M21-GAP-00948"},"M21-GAP-00948":{"line":4203,"offset":741494,"length":171,"previous":"M21-GAP-00947","next":"M21-GAP-00949"},"M21-GAP-00949":{"line":4204,"offset":741665,"length":172,"previous":"M21-GAP-00948","next":"M21-GAP-00950"},"M21-GAP-00950":{"line":4205,"offset":741837,"length":172,"previous":"M21-GAP-00949","next":"M21-GAP-00951"},"M21-GAP-00951":{"line":4206,"offset":742009,"length":172,"previous":"M21-GAP-00950","next":"M21-GAP-00952"},"M21-GAP-00952":{"line":4207,"offset":742181,"length":172,"previous":"M21-GAP-00951","next":"M21-GAP-00953"},"M21-GAP-00953":{"line":4208,"offset":742353,"length":172,"previous":"M21-GAP-00952","next":"M21-GAP-00954"},"M21-GAP-00954":{"line":4209,"offset":742525,"length":172,"previous":"M21-GAP-00953","next":"M21-GAP-00955"},"M21-GAP-00955":{"line":4210,"offset":742697,"length":172,"previous":"M21-GAP-00954","next":"M21-GAP-00956"},"M21-GAP-00956":{"line":4211,"offset":742869,"length":172,"previous":"M21-GAP-00955","next":"M21-GAP-00957"},"M21-GAP-00957":{"line":4212,"offset":743041,"length":172,"previous":"M21-GAP-00956","next":"M21-GAP-00958"},"M21-GAP-00958":{"line":4213,"offset":743213,"length":172,"previous":"M21-GAP-00957","next":"M21-GAP-00959"},"M21-GAP-00959":{"line":4214,"offset":743385,"length":171,"previous":"M21-GAP-00958","next":"M21-GAP-00960"},"M21-GAP-00960":{"line":4215,"offset":743556,"length":172,"previous":"M21-GAP-00959","next":"M21-GAP-00961"},"M21-GAP-00961":{"line":4216,"offset":743728,"length":172,"previous":"M21-GAP-00960","next":"M21-GAP-00962"},"M21-GAP-00962":{"line":4217,"offset":743900,"length":172,"previous":"M21-GAP-00961","next":"M21-GAP-00963"},"M21-GAP-00963":{"line":4218,"offset":744072,"length":172,"previous":"M21-GAP-00962","next":"M21-GAP-00964"},"M21-GAP-00964":{"line":4219,"offset":744244,"length":172,"previous":"M21-GAP-00963","next":"M21-GAP-00965"},"M21-GAP-00965":{"line":4220,"offset":744416,"length":172,"previous":"M21-GAP-00964","next":"M21-GAP-00966"},"M21-GAP-00966":{"line":4221,"offset":744588,"length":172,"previous":"M21-GAP-00965","next":"M21-GAP-00967"},"M21-GAP-00967":{"line":4222,"offset":744760,"length":172,"previous":"M21-GAP-00966","next":"M21-GAP-00968"},"M21-GAP-00968":{"line":4223,"offset":744932,"length":172,"previous":"M21-GAP-00967","next":"M21-GAP-00969"},"M21-GAP-00969":{"line":4224,"offset":745104,"length":171,"previous":"M21-GAP-00968","next":"M21-GAP-00970"},"M21-GAP-00970":{"line":4225,"offset":745275,"length":171,"previous":"M21-GAP-00969","next":"M21-GAP-00971"},"M21-GAP-00971":{"line":4226,"offset":745446,"length":171,"previous":"M21-GAP-00970","next":"M21-GAP-00972"},"M21-GAP-00972":{"line":4227,"offset":745617,"length":171,"previous":"M21-GAP-00971","next":"M21-GAP-00973"},"M21-GAP-00973":{"line":4228,"offset":745788,"length":171,"previous":"M21-GAP-00972","next":"M21-GAP-00974"},"M21-GAP-00974":{"line":4229,"offset":745959,"length":173,"previous":"M21-GAP-00973","next":"M21-GAP-00975"},"M21-GAP-00975":{"line":4230,"offset":746132,"length":173,"previous":"M21-GAP-00974","next":"M21-GAP-00976"},"M21-GAP-00976":{"line":4231,"offset":746305,"length":174,"previous":"M21-GAP-00975","next":"M21-GAP-00977"},"M21-GAP-00977":{"line":4232,"offset":746479,"length":174,"previous":"M21-GAP-00976","next":"M21-GAP-00978"},"M21-GAP-00978":{"line":4233,"offset":746653,"length":174,"previous":"M21-GAP-00977","next":"M21-GAP-00979"},"M21-GAP-00979":{"line":4234,"offset":746827,"length":174,"previous":"M21-GAP-00978","next":"M21-GAP-00980"},"M21-GAP-00980":{"line":4235,"offset":747001,"length":174,"previous":"M21-GAP-00979","next":"M21-GAP-00981"},"M21-GAP-00981":{"line":4236,"offset":747175,"length":174,"previous":"M21-GAP-00980","next":"M21-GAP-00982"},"M21-GAP-00982":{"line":4237,"offset":747349,"length":174,"previous":"M21-GAP-00981","next":"M21-GAP-00983"},"M21-GAP-00983":{"line":4238,"offset":747523,"length":173,"previous":"M21-GAP-00982","next":"M21-GAP-00984"},"M21-GAP-00984":{"line":4239,"offset":747696,"length":173,"previous":"M21-GAP-00983","next":"M21-GAP-00985"},"M21-GAP-00985":{"line":4240,"offset":747869,"length":173,"previous":"M21-GAP-00984","next":"M21-GAP-00986"},"M21-GAP-00986":{"line":4241,"offset":748042,"length":173,"previous":"M21-GAP-00985","next":"M21-GAP-00987"},"M21-GAP-00987":{"line":4242,"offset":748215,"length":173,"previous":"M21-GAP-00986","next":"M21-GAP-00988"},"M21-GAP-00988":{"line":4243,"offset":748388,"length":173,"previous":"M21-GAP-00987","next":"M21-GAP-00989"},"M21-GAP-00989":{"line":4244,"offset":748561,"length":173,"previous":"M21-GAP-00988","next":"M21-GAP-00990"},"M21-GAP-00990":{"line":4245,"offset":748734,"length":173,"previous":"M21-GAP-00989","next":"M21-GAP-00991"},"M21-GAP-00991":{"line":4246,"offset":748907,"length":191,"previous":"M21-GAP-00990","next":"M21-GAP-00992"},"M21-GAP-00992":{"line":4247,"offset":749098,"length":191,"previous":"M21-GAP-00991","next":"M21-GAP-00993"},"M21-GAP-00993":{"line":4248,"offset":749289,"length":185,"previous":"M21-GAP-00992","next":"M21-GAP-00994"},"M21-GAP-00994":{"line":4249,"offset":749474,"length":191,"previous":"M21-GAP-00993","next":"M21-GAP-00995"},"M21-GAP-00995":{"line":4250,"offset":749665,"length":187,"previous":"M21-GAP-00994","next":"M21-GAP-00996"},"M21-GAP-00996":{"line":4251,"offset":749852,"length":196,"previous":"M21-GAP-00995","next":"M21-GAP-00997"},"M21-GAP-00997":{"line":4252,"offset":750048,"length":196,"previous":"M21-GAP-00996","next":"M21-GAP-00998"},"M21-GAP-00998":{"line":4253,"offset":750244,"length":197,"previous":"M21-GAP-00997","next":"M21-GAP-00999"},"M21-GAP-00999":{"line":4254,"offset":750441,"length":197,"previous":"M21-GAP-00998","next":"M21-GAP-01000"},"M21-GAP-01000":{"line":4255,"offset":750638,"length":196,"previous":"M21-GAP-00999","next":"M21-GAP-01001"},"M21-GAP-01001":{"line":4256,"offset":750834,"length":196,"previous":"M21-GAP-01000","next":"M21-GAP-01002"},"M21-GAP-01002":{"line":4257,"offset":751030,"length":196,"previous":"M21-GAP-01001","next":"M21-GAP-01003"},"M21-GAP-01003":{"line":4258,"offset":751226,"length":196,"previous":"M21-GAP-01002","next":"M21-GAP-01004"},"M21-GAP-01004":{"line":4259,"offset":751422,"length":196,"previous":"M21-GAP-01003","next":"M21-GAP-01005"},"M21-GAP-01005":{"line":4260,"offset":751618,"length":196,"previous":"M21-GAP-01004","next":"M21-GAP-01006"},"M21-GAP-01006":{"line":4261,"offset":751814,"length":196,"previous":"M21-GAP-01005","next":"M21-GAP-01007"},"M21-GAP-01007":{"line":4262,"offset":752010,"length":196,"previous":"M21-GAP-01006","next":"M21-GAP-01008"},"M21-GAP-01008":{"line":4263,"offset":752206,"length":180,"previous":"M21-GAP-01007","next":"M21-GAP-01009"},"M21-GAP-01009":{"line":4264,"offset":752386,"length":196,"previous":"M21-GAP-01008","next":"M21-GAP-01010"},"M21-GAP-01010":{"line":4265,"offset":752582,"length":196,"previous":"M21-GAP-01009","next":"M21-GAP-01011"},"M21-GAP-01011":{"line":4266,"offset":752778,"length":194,"previous":"M21-GAP-01010","next":"M21-GAP-01012"},"M21-GAP-01012":{"line":4267,"offset":752972,"length":194,"previous":"M21-GAP-01011","next":"M21-GAP-01013"},"M21-GAP-01013":{"line":4268,"offset":753166,"length":197,"previous":"M21-GAP-01012","next":"M21-GAP-01014"},"M21-GAP-01014":{"line":4269,"offset":753363,"length":197,"previous":"M21-GAP-01013","next":"M21-GAP-01015"},"M21-GAP-01015":{"line":4270,"offset":753560,"length":189,"previous":"M21-GAP-01014","next":"M21-GAP-01016"},"M21-GAP-01016":{"line":4271,"offset":753749,"length":189,"previous":"M21-GAP-01015","next":"M21-GAP-01017"},"M21-GAP-01017":{"line":4272,"offset":753938,"length":178,"previous":"M21-GAP-01016","next":"M21-GAP-01018"},"M21-GAP-01018":{"line":4273,"offset":754116,"length":178,"previous":"M21-GAP-01017","next":"M21-GAP-01019"},"M21-GAP-01019":{"line":4274,"offset":754294,"length":178,"previous":"M21-GAP-01018","next":"M21-GAP-01020"},"M21-GAP-01020":{"line":4275,"offset":754472,"length":178,"previous":"M21-GAP-01019","next":"M21-GAP-01021"},"M21-GAP-01021":{"line":4276,"offset":754650,"length":178,"previous":"M21-GAP-01020","next":"M21-GAP-01022"},"M21-GAP-01022":{"line":4277,"offset":754828,"length":178,"previous":"M21-GAP-01021","next":"M21-GAP-01023"},"M21-GAP-01023":{"line":4278,"offset":755006,"length":178,"previous":"M21-GAP-01022","next":"M21-GAP-01024"},"M21-GAP-01024":{"line":4279,"offset":755184,"length":178,"previous":"M21-GAP-01023","next":"M21-GAP-01025"},"M21-GAP-01025":{"line":4280,"offset":755362,"length":178,"previous":"M21-GAP-01024","next":"M21-GAP-01026"},"M21-GAP-01026":{"line":4281,"offset":755540,"length":178,"previous":"M21-GAP-01025","next":"M21-GAP-01027"},"M21-GAP-01027":{"line":4282,"offset":755718,"length":180,"previous":"M21-GAP-01026","next":"M21-GAP-01028"},"M21-GAP-01028":{"line":4283,"offset":755898,"length":183,"previous":"M21-GAP-01027","next":"M21-GAP-01029"},"M21-GAP-01029":{"line":4284,"offset":756081,"length":183,"previous":"M21-GAP-01028","next":"M21-GAP-01030"},"M21-GAP-01030":{"line":4285,"offset":756264,"length":183,"previous":"M21-GAP-01029","next":"M21-GAP-01031"},"M21-GAP-01031":{"line":4286,"offset":756447,"length":183,"previous":"M21-GAP-01030","next":"M21-GAP-01032"},"M21-GAP-01032":{"line":4287,"offset":756630,"length":183,"previous":"M21-GAP-01031","next":"M21-GAP-01033"},"M21-GAP-01033":{"line":4288,"offset":756813,"length":183,"previous":"M21-GAP-01032","next":"M21-GAP-01034"},"M21-GAP-01034":{"line":4289,"offset":756996,"length":188,"previous":"M21-GAP-01033","next":"M21-GAP-01035"},"M21-GAP-01035":{"line":4290,"offset":757184,"length":188,"previous":"M21-GAP-01034","next":"M21-GAP-01036"},"M21-GAP-01036":{"line":4291,"offset":757372,"length":188,"previous":"M21-GAP-01035","next":"M21-GAP-01037"},"M21-GAP-01037":{"line":4292,"offset":757560,"length":188,"previous":"M21-GAP-01036","next":"M21-GAP-01038"},"M21-GAP-01038":{"line":4293,"offset":757748,"length":188,"previous":"M21-GAP-01037","next":"M21-GAP-01039"},"M21-GAP-01039":{"line":4294,"offset":757936,"length":188,"previous":"M21-GAP-01038","next":"M21-GAP-01040"},"M21-GAP-01040":{"line":4295,"offset":758124,"length":188,"previous":"M21-GAP-01039","next":"M21-GAP-01041"},"M21-GAP-01041":{"line":4296,"offset":758312,"length":186,"previous":"M21-GAP-01040","next":"M21-GAP-01042"},"M21-GAP-01042":{"line":4297,"offset":758498,"length":186,"previous":"M21-GAP-01041","next":"M21-GAP-01043"},"M21-GAP-01043":{"line":4298,"offset":758684,"length":186,"previous":"M21-GAP-01042","next":"M21-GAP-01044"},"M21-GAP-01044":{"line":4299,"offset":758870,"length":186,"previous":"M21-GAP-01043","next":"M21-GAP-01045"},"M21-GAP-01045":{"line":4300,"offset":759056,"length":186,"previous":"M21-GAP-01044","next":"M21-GAP-01046"},"M21-GAP-01046":{"line":4301,"offset":759242,"length":186,"previous":"M21-GAP-01045","next":"M21-GAP-01047"},"M21-GAP-01047":{"line":4302,"offset":759428,"length":194,"previous":"M21-GAP-01046","next":"M21-GAP-01048"},"M21-GAP-01048":{"line":4303,"offset":759622,"length":194,"previous":"M21-GAP-01047","next":"M21-GAP-01049"},"M21-GAP-01049":{"line":4304,"offset":759816,"length":194,"previous":"M21-GAP-01048","next":"M21-GAP-01050"},"M21-GAP-01050":{"line":4305,"offset":760010,"length":194,"previous":"M21-GAP-01049","next":"M21-GAP-01051"},"M21-GAP-01051":{"line":4306,"offset":760204,"length":194,"previous":"M21-GAP-01050","next":"M21-GAP-01052"},"M21-GAP-01052":{"line":4307,"offset":760398,"length":194,"previous":"M21-GAP-01051","next":"M21-GAP-01053"},"M21-GAP-01053":{"line":4308,"offset":760592,"length":194,"previous":"M21-GAP-01052","next":"M21-GAP-01054"},"M21-GAP-01054":{"line":4309,"offset":760786,"length":194,"previous":"M21-GAP-01053","next":"M21-GAP-01055"},"M21-GAP-01055":{"line":4310,"offset":760980,"length":194,"previous":"M21-GAP-01054","next":"M21-GAP-01056"},"M21-GAP-01056":{"line":4311,"offset":761174,"length":194,"previous":"M21-GAP-01055","next":"M21-GAP-01057"},"M21-GAP-01057":{"line":4312,"offset":761368,"length":186,"previous":"M21-GAP-01056","next":"M21-GAP-01058"},"M21-GAP-01058":{"line":4313,"offset":761554,"length":186,"previous":"M21-GAP-01057","next":"M21-GAP-01059"},"M21-GAP-01059":{"line":4314,"offset":761740,"length":187,"previous":"M21-GAP-01058","next":"M21-GAP-01060"},"M21-GAP-01060":{"line":4315,"offset":761927,"length":187,"previous":"M21-GAP-01059","next":"M21-GAP-01061"},"M21-GAP-01061":{"line":4316,"offset":762114,"length":187,"previous":"M21-GAP-01060","next":"M21-GAP-01062"},"M21-GAP-01062":{"line":4317,"offset":762301,"length":187,"previous":"M21-GAP-01061","next":"M21-GAP-01063"},"M21-GAP-01063":{"line":4318,"offset":762488,"length":187,"previous":"M21-GAP-01062","next":"M21-GAP-01064"},"M21-GAP-01064":{"line":4319,"offset":762675,"length":187,"previous":"M21-GAP-01063","next":"M21-GAP-01065"},"M21-GAP-01065":{"line":4320,"offset":762862,"length":187,"previous":"M21-GAP-01064","next":"M21-GAP-01066"},"M21-GAP-01066":{"line":4321,"offset":763049,"length":187,"previous":"M21-GAP-01065","next":"M21-GAP-01067"},"M21-GAP-01067":{"line":4322,"offset":763236,"length":187,"previous":"M21-GAP-01066","next":"M21-GAP-01068"},"M21-GAP-01068":{"line":4323,"offset":763423,"length":187,"previous":"M21-GAP-01067","next":"M21-GAP-01069"},"M21-GAP-01069":{"line":4324,"offset":763610,"length":186,"previous":"M21-GAP-01068","next":"M21-GAP-01070"},"M21-GAP-01070":{"line":4325,"offset":763796,"length":187,"previous":"M21-GAP-01069","next":"M21-GAP-01071"},"M21-GAP-01071":{"line":4326,"offset":763983,"length":187,"previous":"M21-GAP-01070","next":"M21-GAP-01072"},"M21-GAP-01072":{"line":4327,"offset":764170,"length":187,"previous":"M21-GAP-01071","next":"M21-GAP-01073"},"M21-GAP-01073":{"line":4328,"offset":764357,"length":187,"previous":"M21-GAP-01072","next":"M21-GAP-01074"},"M21-GAP-01074":{"line":4329,"offset":764544,"length":187,"previous":"M21-GAP-01073","next":"M21-GAP-01075"},"M21-GAP-01075":{"line":4330,"offset":764731,"length":187,"previous":"M21-GAP-01074","next":"M21-GAP-01076"},"M21-GAP-01076":{"line":4331,"offset":764918,"length":187,"previous":"M21-GAP-01075","next":"M21-GAP-01077"},"M21-GAP-01077":{"line":4332,"offset":765105,"length":187,"previous":"M21-GAP-01076","next":"M21-GAP-01078"},"M21-GAP-01078":{"line":4333,"offset":765292,"length":187,"previous":"M21-GAP-01077","next":"M21-GAP-01079"},"M21-GAP-01079":{"line":4334,"offset":765479,"length":187,"previous":"M21-GAP-01078","next":"M21-GAP-01080"},"M21-GAP-01080":{"line":4335,"offset":765666,"length":186,"previous":"M21-GAP-01079","next":"M21-GAP-01081"},"M21-GAP-01081":{"line":4336,"offset":765852,"length":187,"previous":"M21-GAP-01080","next":"M21-GAP-01082"},"M21-GAP-01082":{"line":4337,"offset":766039,"length":187,"previous":"M21-GAP-01081","next":"M21-GAP-01083"},"M21-GAP-01083":{"line":4338,"offset":766226,"length":187,"previous":"M21-GAP-01082","next":"M21-GAP-01084"},"M21-GAP-01084":{"line":4339,"offset":766413,"length":187,"previous":"M21-GAP-01083","next":"M21-GAP-01085"},"M21-GAP-01085":{"line":4340,"offset":766600,"length":187,"previous":"M21-GAP-01084","next":"M21-GAP-01086"},"M21-GAP-01086":{"line":4341,"offset":766787,"length":187,"previous":"M21-GAP-01085","next":"M21-GAP-01087"},"M21-GAP-01087":{"line":4342,"offset":766974,"length":187,"previous":"M21-GAP-01086","next":"M21-GAP-01088"},"M21-GAP-01088":{"line":4343,"offset":767161,"length":187,"previous":"M21-GAP-01087","next":"M21-GAP-01089"},"M21-GAP-01089":{"line":4344,"offset":767348,"length":187,"previous":"M21-GAP-01088","next":"M21-GAP-01090"},"M21-GAP-01090":{"line":4345,"offset":767535,"length":187,"previous":"M21-GAP-01089","next":"M21-GAP-01091"},"M21-GAP-01091":{"line":4346,"offset":767722,"length":186,"previous":"M21-GAP-01090","next":"M21-GAP-01092"},"M21-GAP-01092":{"line":4347,"offset":767908,"length":187,"previous":"M21-GAP-01091","next":"M21-GAP-01093"},"M21-GAP-01093":{"line":4348,"offset":768095,"length":187,"previous":"M21-GAP-01092","next":"M21-GAP-01094"},"M21-GAP-01094":{"line":4349,"offset":768282,"length":187,"previous":"M21-GAP-01093","next":"M21-GAP-01095"},"M21-GAP-01095":{"line":4350,"offset":768469,"length":187,"previous":"M21-GAP-01094","next":"M21-GAP-01096"},"M21-GAP-01096":{"line":4351,"offset":768656,"length":187,"previous":"M21-GAP-01095","next":"M21-GAP-01097"},"M21-GAP-01097":{"line":4352,"offset":768843,"length":187,"previous":"M21-GAP-01096","next":"M21-GAP-01098"},"M21-GAP-01098":{"line":4353,"offset":769030,"length":187,"previous":"M21-GAP-01097","next":"M21-GAP-01099"},"M21-GAP-01099":{"line":4354,"offset":769217,"length":187,"previous":"M21-GAP-01098","next":"M21-GAP-01100"},"M21-GAP-01100":{"line":4355,"offset":769404,"length":187,"previous":"M21-GAP-01099","next":"M21-GAP-01101"},"M21-GAP-01101":{"line":4356,"offset":769591,"length":187,"previous":"M21-GAP-01100","next":"M21-GAP-01102"},"M21-GAP-01102":{"line":4357,"offset":769778,"length":186,"previous":"M21-GAP-01101","next":"M21-GAP-01103"},"M21-GAP-01103":{"line":4358,"offset":769964,"length":187,"previous":"M21-GAP-01102","next":"M21-GAP-01104"},"M21-GAP-01104":{"line":4359,"offset":770151,"length":187,"previous":"M21-GAP-01103","next":"M21-GAP-01105"},"M21-GAP-01105":{"line":4360,"offset":770338,"length":187,"previous":"M21-GAP-01104","next":"M21-GAP-01106"},"M21-GAP-01106":{"line":4361,"offset":770525,"length":187,"previous":"M21-GAP-01105","next":"M21-GAP-01107"},"M21-GAP-01107":{"line":4362,"offset":770712,"length":187,"previous":"M21-GAP-01106","next":"M21-GAP-01108"},"M21-GAP-01108":{"line":4363,"offset":770899,"length":187,"previous":"M21-GAP-01107","next":"M21-GAP-01109"},"M21-GAP-01109":{"line":4364,"offset":771086,"length":187,"previous":"M21-GAP-01108","next":"M21-GAP-01110"},"M21-GAP-01110":{"line":4365,"offset":771273,"length":187,"previous":"M21-GAP-01109","next":"M21-GAP-01111"},"M21-GAP-01111":{"line":4366,"offset":771460,"length":187,"previous":"M21-GAP-01110","next":"M21-GAP-01112"},"M21-GAP-01112":{"line":4367,"offset":771647,"length":187,"previous":"M21-GAP-01111","next":"M21-GAP-01113"},"M21-GAP-01113":{"line":4368,"offset":771834,"length":186,"previous":"M21-GAP-01112","next":"M21-GAP-01114"},"M21-GAP-01114":{"line":4369,"offset":772020,"length":187,"previous":"M21-GAP-01113","next":"M21-GAP-01115"},"M21-GAP-01115":{"line":4370,"offset":772207,"length":187,"previous":"M21-GAP-01114","next":"M21-GAP-01116"},"M21-GAP-01116":{"line":4371,"offset":772394,"length":187,"previous":"M21-GAP-01115","next":"M21-GAP-01117"},"M21-GAP-01117":{"line":4372,"offset":772581,"length":187,"previous":"M21-GAP-01116","next":"M21-GAP-01118"},"M21-GAP-01118":{"line":4373,"offset":772768,"length":187,"previous":"M21-GAP-01117","next":"M21-GAP-01119"},"M21-GAP-01119":{"line":4374,"offset":772955,"length":187,"previous":"M21-GAP-01118","next":"M21-GAP-01120"},"M21-GAP-01120":{"line":4375,"offset":773142,"length":187,"previous":"M21-GAP-01119","next":"M21-GAP-01121"},"M21-GAP-01121":{"line":4376,"offset":773329,"length":187,"previous":"M21-GAP-01120","next":"M21-GAP-01122"},"M21-GAP-01122":{"line":4377,"offset":773516,"length":187,"previous":"M21-GAP-01121","next":"M21-GAP-01123"},"M21-GAP-01123":{"line":4378,"offset":773703,"length":187,"previous":"M21-GAP-01122","next":"M21-GAP-01124"},"M21-GAP-01124":{"line":4379,"offset":773890,"length":186,"previous":"M21-GAP-01123","next":"M21-GAP-01125"},"M21-GAP-01125":{"line":4380,"offset":774076,"length":187,"previous":"M21-GAP-01124","next":"M21-GAP-01126"},"M21-GAP-01126":{"line":4381,"offset":774263,"length":186,"previous":"M21-GAP-01125","next":"M21-GAP-01127"},"M21-GAP-01127":{"line":4382,"offset":774449,"length":186,"previous":"M21-GAP-01126","next":"M21-GAP-01128"},"M21-GAP-01128":{"line":4383,"offset":774635,"length":193,"previous":"M21-GAP-01127","next":"M21-GAP-01129"},"M21-GAP-01129":{"line":4384,"offset":774828,"length":193,"previous":"M21-GAP-01128","next":"M21-GAP-01130"},"M21-GAP-01130":{"line":4385,"offset":775021,"length":193,"previous":"M21-GAP-01129","next":"M21-GAP-01131"},"M21-GAP-01131":{"line":4386,"offset":775214,"length":193,"previous":"M21-GAP-01130","next":"M21-GAP-01132"},"M21-GAP-01132":{"line":4387,"offset":775407,"length":193,"previous":"M21-GAP-01131","next":"M21-GAP-01133"},"M21-GAP-01133":{"line":4388,"offset":775600,"length":193,"previous":"M21-GAP-01132","next":"M21-GAP-01134"},"M21-GAP-01134":{"line":4389,"offset":775793,"length":190,"previous":"M21-GAP-01133","next":"M21-GAP-01135"},"M21-GAP-01135":{"line":4390,"offset":775983,"length":190,"previous":"M21-GAP-01134","next":"M21-GAP-01136"},"M21-GAP-01136":{"line":4391,"offset":776173,"length":191,"previous":"M21-GAP-01135","next":"M21-GAP-01137"},"M21-GAP-01137":{"line":4392,"offset":776364,"length":191,"previous":"M21-GAP-01136","next":"M21-GAP-01138"},"M21-GAP-01138":{"line":4393,"offset":776555,"length":191,"previous":"M21-GAP-01137","next":"M21-GAP-01139"},"M21-GAP-01139":{"line":4394,"offset":776746,"length":191,"previous":"M21-GAP-01138","next":"M21-GAP-01140"},"M21-GAP-01140":{"line":4395,"offset":776937,"length":191,"previous":"M21-GAP-01139","next":"M21-GAP-01141"},"M21-GAP-01141":{"line":4396,"offset":777128,"length":191,"previous":"M21-GAP-01140","next":"M21-GAP-01142"},"M21-GAP-01142":{"line":4397,"offset":777319,"length":191,"previous":"M21-GAP-01141","next":"M21-GAP-01143"},"M21-GAP-01143":{"line":4398,"offset":777510,"length":191,"previous":"M21-GAP-01142","next":"M21-GAP-01144"},"M21-GAP-01144":{"line":4399,"offset":777701,"length":191,"previous":"M21-GAP-01143","next":"M21-GAP-01145"},"M21-GAP-01145":{"line":4400,"offset":777892,"length":191,"previous":"M21-GAP-01144","next":"M21-GAP-01146"},"M21-GAP-01146":{"line":4401,"offset":778083,"length":190,"previous":"M21-GAP-01145","next":"M21-GAP-01147"},"M21-GAP-01147":{"line":4402,"offset":778273,"length":191,"previous":"M21-GAP-01146","next":"M21-GAP-01148"},"M21-GAP-01148":{"line":4403,"offset":778464,"length":191,"previous":"M21-GAP-01147","next":"M21-GAP-01149"},"M21-GAP-01149":{"line":4404,"offset":778655,"length":190,"previous":"M21-GAP-01148","next":"M21-GAP-01150"},"M21-GAP-01150":{"line":4405,"offset":778845,"length":190,"previous":"M21-GAP-01149","next":"M21-GAP-01151"},"M21-GAP-01151":{"line":4406,"offset":779035,"length":190,"previous":"M21-GAP-01150","next":"M21-GAP-01152"},"M21-GAP-01152":{"line":4407,"offset":779225,"length":190,"previous":"M21-GAP-01151","next":"M21-GAP-01153"},"M21-GAP-01153":{"line":4408,"offset":779415,"length":190,"previous":"M21-GAP-01152","next":"M21-GAP-01154"},"M21-GAP-01154":{"line":4409,"offset":779605,"length":190,"previous":"M21-GAP-01153","next":"M21-GAP-01155"},"M21-GAP-01155":{"line":4410,"offset":779795,"length":190,"previous":"M21-GAP-01154","next":"M21-GAP-01156"},"M21-GAP-01156":{"line":4411,"offset":779985,"length":190,"previous":"M21-GAP-01155","next":"M21-GAP-01157"},"M21-GAP-01157":{"line":4412,"offset":780175,"length":190,"previous":"M21-GAP-01156","next":"M21-GAP-01158"},"M21-GAP-01158":{"line":4413,"offset":780365,"length":191,"previous":"M21-GAP-01157","next":"M21-GAP-01159"},"M21-GAP-01159":{"line":4414,"offset":780556,"length":191,"previous":"M21-GAP-01158","next":"M21-GAP-01160"},"M21-GAP-01160":{"line":4415,"offset":780747,"length":191,"previous":"M21-GAP-01159","next":"M21-GAP-01161"},"M21-GAP-01161":{"line":4416,"offset":780938,"length":191,"previous":"M21-GAP-01160","next":"M21-GAP-01162"},"M21-GAP-01162":{"line":4417,"offset":781129,"length":191,"previous":"M21-GAP-01161","next":"M21-GAP-01163"},"M21-GAP-01163":{"line":4418,"offset":781320,"length":191,"previous":"M21-GAP-01162","next":"M21-GAP-01164"},"M21-GAP-01164":{"line":4419,"offset":781511,"length":191,"previous":"M21-GAP-01163","next":"M21-GAP-01165"},"M21-GAP-01165":{"line":4420,"offset":781702,"length":191,"previous":"M21-GAP-01164","next":"M21-GAP-01166"},"M21-GAP-01166":{"line":4421,"offset":781893,"length":191,"previous":"M21-GAP-01165","next":"M21-GAP-01167"},"M21-GAP-01167":{"line":4422,"offset":782084,"length":191,"previous":"M21-GAP-01166","next":"M21-GAP-01168"},"M21-GAP-01168":{"line":4423,"offset":782275,"length":190,"previous":"M21-GAP-01167","next":"M21-GAP-01169"},"M21-GAP-01169":{"line":4424,"offset":782465,"length":191,"previous":"M21-GAP-01168","next":"M21-GAP-01170"},"M21-GAP-01170":{"line":4425,"offset":782656,"length":191,"previous":"M21-GAP-01169","next":"M21-GAP-01171"},"M21-GAP-01171":{"line":4426,"offset":782847,"length":191,"previous":"M21-GAP-01170","next":"M21-GAP-01172"},"M21-GAP-01172":{"line":4427,"offset":783038,"length":191,"previous":"M21-GAP-01171","next":"M21-GAP-01173"},"M21-GAP-01173":{"line":4428,"offset":783229,"length":191,"previous":"M21-GAP-01172","next":"M21-GAP-01174"},"M21-GAP-01174":{"line":4429,"offset":783420,"length":191,"previous":"M21-GAP-01173","next":"M21-GAP-01175"},"M21-GAP-01175":{"line":4430,"offset":783611,"length":191,"previous":"M21-GAP-01174","next":"M21-GAP-01176"},"M21-GAP-01176":{"line":4431,"offset":783802,"length":191,"previous":"M21-GAP-01175","next":"M21-GAP-01177"},"M21-GAP-01177":{"line":4432,"offset":783993,"length":191,"previous":"M21-GAP-01176","next":"M21-GAP-01178"},"M21-GAP-01178":{"line":4433,"offset":784184,"length":191,"previous":"M21-GAP-01177","next":"M21-GAP-01179"},"M21-GAP-01179":{"line":4434,"offset":784375,"length":190,"previous":"M21-GAP-01178","next":"M21-GAP-01180"},"M21-GAP-01180":{"line":4435,"offset":784565,"length":191,"previous":"M21-GAP-01179","next":"M21-GAP-01181"},"M21-GAP-01181":{"line":4436,"offset":784756,"length":191,"previous":"M21-GAP-01180","next":"M21-GAP-01182"},"M21-GAP-01182":{"line":4437,"offset":784947,"length":191,"previous":"M21-GAP-01181","next":"M21-GAP-01183"},"M21-GAP-01183":{"line":4438,"offset":785138,"length":191,"previous":"M21-GAP-01182","next":"M21-GAP-01184"},"M21-GAP-01184":{"line":4439,"offset":785329,"length":191,"previous":"M21-GAP-01183","next":"M21-GAP-01185"},"M21-GAP-01185":{"line":4440,"offset":785520,"length":191,"previous":"M21-GAP-01184","next":"M21-GAP-01186"},"M21-GAP-01186":{"line":4441,"offset":785711,"length":191,"previous":"M21-GAP-01185","next":"M21-GAP-01187"},"M21-GAP-01187":{"line":4442,"offset":785902,"length":191,"previous":"M21-GAP-01186","next":"M21-GAP-01188"},"M21-GAP-01188":{"line":4443,"offset":786093,"length":191,"previous":"M21-GAP-01187","next":"M21-GAP-01189"},"M21-GAP-01189":{"line":4444,"offset":786284,"length":191,"previous":"M21-GAP-01188","next":"M21-GAP-01190"},"M21-GAP-01190":{"line":4445,"offset":786475,"length":190,"previous":"M21-GAP-01189","next":"M21-GAP-01191"},"M21-GAP-01191":{"line":4446,"offset":786665,"length":191,"previous":"M21-GAP-01190","next":"M21-GAP-01192"},"M21-GAP-01192":{"line":4447,"offset":786856,"length":191,"previous":"M21-GAP-01191","next":"M21-GAP-01193"},"M21-GAP-01193":{"line":4448,"offset":787047,"length":191,"previous":"M21-GAP-01192","next":"M21-GAP-01194"},"M21-GAP-01194":{"line":4449,"offset":787238,"length":191,"previous":"M21-GAP-01193","next":"M21-GAP-01195"},"M21-GAP-01195":{"line":4450,"offset":787429,"length":191,"previous":"M21-GAP-01194","next":"M21-GAP-01196"},"M21-GAP-01196":{"line":4451,"offset":787620,"length":191,"previous":"M21-GAP-01195","next":"M21-GAP-01197"},"M21-GAP-01197":{"line":4452,"offset":787811,"length":191,"previous":"M21-GAP-01196","next":"M21-GAP-01198"},"M21-GAP-01198":{"line":4453,"offset":788002,"length":191,"previous":"M21-GAP-01197","next":"M21-GAP-01199"},"M21-GAP-01199":{"line":4454,"offset":788193,"length":191,"previous":"M21-GAP-01198","next":"M21-GAP-01200"},"M21-GAP-01200":{"line":4455,"offset":788384,"length":191,"previous":"M21-GAP-01199","next":"M21-GAP-01201"},"M21-GAP-01201":{"line":4456,"offset":788575,"length":190,"previous":"M21-GAP-01200","next":"M21-GAP-01202"},"M21-GAP-01202":{"line":4457,"offset":788765,"length":191,"previous":"M21-GAP-01201","next":"M21-GAP-01203"},"M21-GAP-01203":{"line":4458,"offset":788956,"length":191,"previous":"M21-GAP-01202","next":"M21-GAP-01204"},"M21-GAP-01204":{"line":4459,"offset":789147,"length":191,"previous":"M21-GAP-01203","next":"M21-GAP-01205"},"M21-GAP-01205":{"line":4460,"offset":789338,"length":191,"previous":"M21-GAP-01204","next":"M21-GAP-01206"},"M21-GAP-01206":{"line":4461,"offset":789529,"length":191,"previous":"M21-GAP-01205","next":"M21-GAP-01207"},"M21-GAP-01207":{"line":4462,"offset":789720,"length":191,"previous":"M21-GAP-01206","next":"M21-GAP-01208"},"M21-GAP-01208":{"line":4463,"offset":789911,"length":191,"previous":"M21-GAP-01207","next":"M21-GAP-01209"},"M21-GAP-01209":{"line":4464,"offset":790102,"length":190,"previous":"M21-GAP-01208","next":"M21-GAP-01210"},"M21-GAP-01210":{"line":4465,"offset":790292,"length":190,"previous":"M21-GAP-01209","next":"M21-GAP-01211"},"M21-GAP-01211":{"line":4466,"offset":790482,"length":190,"previous":"M21-GAP-01210","next":"M21-GAP-01212"},"M21-GAP-01212":{"line":4467,"offset":790672,"length":190,"previous":"M21-GAP-01211","next":"M21-GAP-01213"},"M21-GAP-01213":{"line":4468,"offset":790862,"length":190,"previous":"M21-GAP-01212","next":"M21-GAP-01214"},"M21-GAP-01214":{"line":4469,"offset":791052,"length":190,"previous":"M21-GAP-01213","next":"M21-GAP-01215"},"M21-GAP-01215":{"line":4470,"offset":791242,"length":190,"previous":"M21-GAP-01214","next":"M21-GAP-01216"},"M21-GAP-01216":{"line":4471,"offset":791432,"length":192,"previous":"M21-GAP-01215","next":"M21-GAP-01217"},"M21-GAP-01217":{"line":4472,"offset":791624,"length":192,"previous":"M21-GAP-01216","next":"M21-GAP-01218"},"M21-GAP-01218":{"line":4473,"offset":791816,"length":193,"previous":"M21-GAP-01217","next":"M21-GAP-01219"},"M21-GAP-01219":{"line":4474,"offset":792009,"length":193,"previous":"M21-GAP-01218","next":"M21-GAP-01220"},"M21-GAP-01220":{"line":4475,"offset":792202,"length":193,"previous":"M21-GAP-01219","next":"M21-GAP-01221"},"M21-GAP-01221":{"line":4476,"offset":792395,"length":193,"previous":"M21-GAP-01220","next":"M21-GAP-01222"},"M21-GAP-01222":{"line":4477,"offset":792588,"length":193,"previous":"M21-GAP-01221","next":"M21-GAP-01223"},"M21-GAP-01223":{"line":4478,"offset":792781,"length":193,"previous":"M21-GAP-01222","next":"M21-GAP-01224"},"M21-GAP-01224":{"line":4479,"offset":792974,"length":193,"previous":"M21-GAP-01223","next":"M21-GAP-01225"},"M21-GAP-01225":{"line":4480,"offset":793167,"length":193,"previous":"M21-GAP-01224","next":"M21-GAP-01226"},"M21-GAP-01226":{"line":4481,"offset":793360,"length":193,"previous":"M21-GAP-01225","next":"M21-GAP-01227"},"M21-GAP-01227":{"line":4482,"offset":793553,"length":193,"previous":"M21-GAP-01226","next":"M21-GAP-01228"},"M21-GAP-01228":{"line":4483,"offset":793746,"length":192,"previous":"M21-GAP-01227","next":"M21-GAP-01229"},"M21-GAP-01229":{"line":4484,"offset":793938,"length":193,"previous":"M21-GAP-01228","next":"M21-GAP-01230"},"M21-GAP-01230":{"line":4485,"offset":794131,"length":193,"previous":"M21-GAP-01229","next":"M21-GAP-01231"},"M21-GAP-01231":{"line":4486,"offset":794324,"length":193,"previous":"M21-GAP-01230","next":"M21-GAP-01232"},"M21-GAP-01232":{"line":4487,"offset":794517,"length":193,"previous":"M21-GAP-01231","next":"M21-GAP-01233"},"M21-GAP-01233":{"line":4488,"offset":794710,"length":193,"previous":"M21-GAP-01232","next":"M21-GAP-01234"},"M21-GAP-01234":{"line":4489,"offset":794903,"length":193,"previous":"M21-GAP-01233","next":"M21-GAP-01235"},"M21-GAP-01235":{"line":4490,"offset":795096,"length":193,"previous":"M21-GAP-01234","next":"M21-GAP-01236"},"M21-GAP-01236":{"line":4491,"offset":795289,"length":192,"previous":"M21-GAP-01235","next":"M21-GAP-01237"},"M21-GAP-01237":{"line":4492,"offset":795481,"length":192,"previous":"M21-GAP-01236","next":"M21-GAP-01238"},"M21-GAP-01238":{"line":4493,"offset":795673,"length":192,"previous":"M21-GAP-01237","next":"M21-GAP-01239"},"M21-GAP-01239":{"line":4494,"offset":795865,"length":192,"previous":"M21-GAP-01238","next":"M21-GAP-01240"},"M21-GAP-01240":{"line":4495,"offset":796057,"length":192,"previous":"M21-GAP-01239","next":"M21-GAP-01241"},"M21-GAP-01241":{"line":4496,"offset":796249,"length":192,"previous":"M21-GAP-01240","next":"M21-GAP-01242"},"M21-GAP-01242":{"line":4497,"offset":796441,"length":192,"previous":"M21-GAP-01241","next":"M21-GAP-01243"},"M21-GAP-01243":{"line":4498,"offset":796633,"length":190,"previous":"M21-GAP-01242","next":"M21-GAP-01244"},"M21-GAP-01244":{"line":4499,"offset":796823,"length":190,"previous":"M21-GAP-01243","next":"M21-GAP-01245"},"M21-GAP-01245":{"line":4500,"offset":797013,"length":190,"previous":"M21-GAP-01244","next":"M21-GAP-01246"},"M21-GAP-01246":{"line":4501,"offset":797203,"length":190,"previous":"M21-GAP-01245","next":"M21-GAP-01247"},"M21-GAP-01247":{"line":4502,"offset":797393,"length":190,"previous":"M21-GAP-01246","next":"M21-GAP-01248"},"M21-GAP-01248":{"line":4503,"offset":797583,"length":190,"previous":"M21-GAP-01247","next":"M21-GAP-01249"},"M21-GAP-01249":{"line":4504,"offset":797773,"length":190,"previous":"M21-GAP-01248","next":"M21-GAP-01250"},"M21-GAP-01250":{"line":4505,"offset":797963,"length":190,"previous":"M21-GAP-01249","next":"M21-GAP-01251"},"M21-GAP-01251":{"line":4506,"offset":798153,"length":190,"previous":"M21-GAP-01250","next":"M21-GAP-01252"},"M21-GAP-01252":{"line":4507,"offset":798343,"length":190,"previous":"M21-GAP-01251","next":"M21-GAP-01253"},"M21-GAP-01253":{"line":4508,"offset":798533,"length":193,"previous":"M21-GAP-01252","next":"M21-GAP-01254"},"M21-GAP-01254":{"line":4509,"offset":798726,"length":193,"previous":"M21-GAP-01253","next":"M21-GAP-01255"},"M21-GAP-01255":{"line":4510,"offset":798919,"length":194,"previous":"M21-GAP-01254","next":"M21-GAP-01256"},"M21-GAP-01256":{"line":4511,"offset":799113,"length":194,"previous":"M21-GAP-01255","next":"M21-GAP-01257"},"M21-GAP-01257":{"line":4512,"offset":799307,"length":194,"previous":"M21-GAP-01256","next":"M21-GAP-01258"},"M21-GAP-01258":{"line":4513,"offset":799501,"length":194,"previous":"M21-GAP-01257","next":"M21-GAP-01259"},"M21-GAP-01259":{"line":4514,"offset":799695,"length":194,"previous":"M21-GAP-01258","next":"M21-GAP-01260"},"M21-GAP-01260":{"line":4515,"offset":799889,"length":194,"previous":"M21-GAP-01259","next":"M21-GAP-01261"},"M21-GAP-01261":{"line":4516,"offset":800083,"length":194,"previous":"M21-GAP-01260","next":"M21-GAP-01262"},"M21-GAP-01262":{"line":4517,"offset":800277,"length":194,"previous":"M21-GAP-01261","next":"M21-GAP-01263"},"M21-GAP-01263":{"line":4518,"offset":800471,"length":194,"previous":"M21-GAP-01262","next":"M21-GAP-01264"},"M21-GAP-01264":{"line":4519,"offset":800665,"length":194,"previous":"M21-GAP-01263","next":"M21-GAP-01265"},"M21-GAP-01265":{"line":4520,"offset":800859,"length":193,"previous":"M21-GAP-01264","next":"M21-GAP-01266"},"M21-GAP-01266":{"line":4521,"offset":801052,"length":194,"previous":"M21-GAP-01265","next":"M21-GAP-01267"},"M21-GAP-01267":{"line":4522,"offset":801246,"length":194,"previous":"M21-GAP-01266","next":"M21-GAP-01268"},"M21-GAP-01268":{"line":4523,"offset":801440,"length":193,"previous":"M21-GAP-01267","next":"M21-GAP-01269"},"M21-GAP-01269":{"line":4524,"offset":801633,"length":193,"previous":"M21-GAP-01268","next":"M21-GAP-01270"},"M21-GAP-01270":{"line":4525,"offset":801826,"length":193,"previous":"M21-GAP-01269","next":"M21-GAP-01271"},"M21-GAP-01271":{"line":4526,"offset":802019,"length":193,"previous":"M21-GAP-01270","next":"M21-GAP-01272"},"M21-GAP-01272":{"line":4527,"offset":802212,"length":193,"previous":"M21-GAP-01271","next":"M21-GAP-01273"},"M21-GAP-01273":{"line":4528,"offset":802405,"length":193,"previous":"M21-GAP-01272","next":"M21-GAP-01274"},"M21-GAP-01274":{"line":4529,"offset":802598,"length":193,"previous":"M21-GAP-01273","next":"M21-GAP-01275"},"M21-GAP-01275":{"line":4530,"offset":802791,"length":193,"previous":"M21-GAP-01274","next":"M21-GAP-01276"},"M21-GAP-01276":{"line":4531,"offset":802984,"length":193,"previous":"M21-GAP-01275","next":"M21-GAP-01277"},"M21-GAP-01277":{"line":4532,"offset":803177,"length":194,"previous":"M21-GAP-01276","next":"M21-GAP-01278"},"M21-GAP-01278":{"line":4533,"offset":803371,"length":194,"previous":"M21-GAP-01277","next":"M21-GAP-01279"},"M21-GAP-01279":{"line":4534,"offset":803565,"length":194,"previous":"M21-GAP-01278","next":"M21-GAP-01280"},"M21-GAP-01280":{"line":4535,"offset":803759,"length":194,"previous":"M21-GAP-01279","next":"M21-GAP-01281"},"M21-GAP-01281":{"line":4536,"offset":803953,"length":194,"previous":"M21-GAP-01280","next":"M21-GAP-01282"},"M21-GAP-01282":{"line":4537,"offset":804147,"length":194,"previous":"M21-GAP-01281","next":"M21-GAP-01283"},"M21-GAP-01283":{"line":4538,"offset":804341,"length":194,"previous":"M21-GAP-01282","next":"M21-GAP-01284"},"M21-GAP-01284":{"line":4539,"offset":804535,"length":194,"previous":"M21-GAP-01283","next":"M21-GAP-01285"},"M21-GAP-01285":{"line":4540,"offset":804729,"length":194,"previous":"M21-GAP-01284","next":"M21-GAP-01286"},"M21-GAP-01286":{"line":4541,"offset":804923,"length":194,"previous":"M21-GAP-01285","next":"M21-GAP-01287"},"M21-GAP-01287":{"line":4542,"offset":805117,"length":193,"previous":"M21-GAP-01286","next":"M21-GAP-01288"},"M21-GAP-01288":{"line":4543,"offset":805310,"length":194,"previous":"M21-GAP-01287","next":"M21-GAP-01289"},"M21-GAP-01289":{"line":4544,"offset":805504,"length":194,"previous":"M21-GAP-01288","next":"M21-GAP-01290"},"M21-GAP-01290":{"line":4545,"offset":805698,"length":194,"previous":"M21-GAP-01289","next":"M21-GAP-01291"},"M21-GAP-01291":{"line":4546,"offset":805892,"length":194,"previous":"M21-GAP-01290","next":"M21-GAP-01292"},"M21-GAP-01292":{"line":4547,"offset":806086,"length":194,"previous":"M21-GAP-01291","next":"M21-GAP-01293"},"M21-GAP-01293":{"line":4548,"offset":806280,"length":194,"previous":"M21-GAP-01292","next":"M21-GAP-01294"},"M21-GAP-01294":{"line":4549,"offset":806474,"length":193,"previous":"M21-GAP-01293","next":"M21-GAP-01295"},"M21-GAP-01295":{"line":4550,"offset":806667,"length":193,"previous":"M21-GAP-01294","next":"M21-GAP-01296"},"M21-GAP-01296":{"line":4551,"offset":806860,"length":193,"previous":"M21-GAP-01295","next":"M21-GAP-01297"},"M21-GAP-01297":{"line":4552,"offset":807053,"length":193,"previous":"M21-GAP-01296","next":"M21-GAP-01298"},"M21-GAP-01298":{"line":4553,"offset":807246,"length":193,"previous":"M21-GAP-01297","next":"M21-GAP-01299"},"M21-GAP-01299":{"line":4554,"offset":807439,"length":193,"previous":"M21-GAP-01298","next":"M21-GAP-01300"},"M21-GAP-01300":{"line":4555,"offset":807632,"length":193,"previous":"M21-GAP-01299","next":"M21-GAP-01301"},"M21-GAP-01301":{"line":4556,"offset":807825,"length":180,"previous":"M21-GAP-01300","next":"M21-GAP-01302"},"M21-GAP-01302":{"line":4557,"offset":808005,"length":180,"previous":"M21-GAP-01301","next":"M21-GAP-01303"},"M21-GAP-01303":{"line":4558,"offset":808185,"length":180,"previous":"M21-GAP-01302","next":"M21-GAP-01304"},"M21-GAP-01304":{"line":4559,"offset":808365,"length":180,"previous":"M21-GAP-01303","next":"M21-GAP-01305"},"M21-GAP-01305":{"line":4560,"offset":808545,"length":180,"previous":"M21-GAP-01304","next":"M21-GAP-01306"},"M21-GAP-01306":{"line":4561,"offset":808725,"length":202,"previous":"M21-GAP-01305","next":"M21-GAP-01307"},"M21-GAP-01307":{"line":4562,"offset":808927,"length":205,"previous":"M21-GAP-01306","next":"M21-GAP-01308"},"M21-GAP-01308":{"line":4563,"offset":809132,"length":205,"previous":"M21-GAP-01307","next":"M21-GAP-01309"},"M21-GAP-01309":{"line":4564,"offset":809337,"length":205,"previous":"M21-GAP-01308","next":"M21-GAP-01310"},"M21-GAP-01310":{"line":4565,"offset":809542,"length":203,"previous":"M21-GAP-01309","next":"M21-GAP-01311"},"M21-GAP-01311":{"line":4566,"offset":809745,"length":205,"previous":"M21-GAP-01310","next":"M21-GAP-01312"},"M21-GAP-01312":{"line":4567,"offset":809950,"length":204,"previous":"M21-GAP-01311","next":"M21-GAP-01313"},"M21-GAP-01313":{"line":4568,"offset":810154,"length":220,"previous":"M21-GAP-01312","next":"M21-GAP-01314"},"M21-GAP-01314":{"line":4569,"offset":810374,"length":220,"previous":"M21-GAP-01313","next":"M21-GAP-01315"},"M21-GAP-01315":{"line":4570,"offset":810594,"length":220,"previous":"M21-GAP-01314","next":"M21-GAP-01316"},"M21-GAP-01316":{"line":4571,"offset":810814,"length":209,"previous":"M21-GAP-01315","next":"M21-GAP-01317"},"M21-GAP-01317":{"line":4572,"offset":811023,"length":209,"previous":"M21-GAP-01316","next":"M21-GAP-01318"},"M21-GAP-01318":{"line":4573,"offset":811232,"length":209,"previous":"M21-GAP-01317","next":"M21-GAP-01319"},"M21-GAP-01319":{"line":4574,"offset":811441,"length":223,"previous":"M21-GAP-01318","next":"M21-GAP-01320"},"M21-GAP-01320":{"line":4575,"offset":811664,"length":223,"previous":"M21-GAP-01319","next":"M21-GAP-01321"},"M21-GAP-01321":{"line":4576,"offset":811887,"length":223,"previous":"M21-GAP-01320","next":"M21-GAP-01322"},"M21-GAP-01322":{"line":4577,"offset":812110,"length":212,"previous":"M21-GAP-01321","next":"M21-GAP-01323"},"M21-GAP-01323":{"line":4578,"offset":812322,"length":212,"previous":"M21-GAP-01322","next":"M21-GAP-01324"},"M21-GAP-01324":{"line":4579,"offset":812534,"length":212,"previous":"M21-GAP-01323","next":"M21-GAP-01325"},"M21-GAP-01325":{"line":4580,"offset":812746,"length":222,"previous":"M21-GAP-01324","next":"M21-GAP-01326"},"M21-GAP-01326":{"line":4581,"offset":812968,"length":222,"previous":"M21-GAP-01325","next":"M21-GAP-01327"},"M21-GAP-01327":{"line":4582,"offset":813190,"length":222,"previous":"M21-GAP-01326","next":"M21-GAP-01328"},"M21-GAP-01328":{"line":4583,"offset":813412,"length":211,"previous":"M21-GAP-01327","next":"M21-GAP-01329"},"M21-GAP-01329":{"line":4584,"offset":813623,"length":211,"previous":"M21-GAP-01328","next":"M21-GAP-01330"},"M21-GAP-01330":{"line":4585,"offset":813834,"length":211,"previous":"M21-GAP-01329","next":"M21-GAP-01331"},"M21-GAP-01331":{"line":4586,"offset":814045,"length":208,"previous":"M21-GAP-01330","next":"M21-GAP-01332"},"M21-GAP-01332":{"line":4587,"offset":814253,"length":215,"previous":"M21-GAP-01331","next":"M21-GAP-01333"},"M21-GAP-01333":{"line":4588,"offset":814468,"length":215,"previous":"M21-GAP-01332","next":"M21-GAP-01334"},"M21-GAP-01334":{"line":4589,"offset":814683,"length":215,"previous":"M21-GAP-01333","next":"M21-GAP-01335"},"M21-GAP-01335":{"line":4590,"offset":814898,"length":204,"previous":"M21-GAP-01334","next":"M21-GAP-01336"},"M21-GAP-01336":{"line":4591,"offset":815102,"length":204,"previous":"M21-GAP-01335","next":"M21-GAP-01337"},"M21-GAP-01337":{"line":4592,"offset":815306,"length":204,"previous":"M21-GAP-01336","next":"M21-GAP-01338"},"M21-GAP-01338":{"line":4593,"offset":815510,"length":199,"previous":"M21-GAP-01337","next":"M21-GAP-01339"},"M21-GAP-01339":{"line":4594,"offset":815709,"length":203,"previous":"M21-GAP-01338","next":"M21-GAP-01340"},"M21-GAP-01340":{"line":4595,"offset":815912,"length":203,"previous":"M21-GAP-01339","next":"M21-GAP-01341"},"M21-GAP-01341":{"line":4596,"offset":816115,"length":201,"previous":"M21-GAP-01340","next":"M21-GAP-01342"},"M21-GAP-01342":{"line":4597,"offset":816316,"length":201,"previous":"M21-GAP-01341","next":"M21-GAP-01343"},"M21-GAP-01343":{"line":4598,"offset":816517,"length":201,"previous":"M21-GAP-01342","next":"M21-GAP-01344"},"M21-GAP-01344":{"line":4599,"offset":816718,"length":201,"previous":"M21-GAP-01343","next":"M21-GAP-01345"},"M21-GAP-01345":{"line":4600,"offset":816919,"length":201,"previous":"M21-GAP-01344","next":"M21-GAP-01346"},"M21-GAP-01346":{"line":4601,"offset":817120,"length":201,"previous":"M21-GAP-01345","next":"M21-GAP-01347"},"M21-GAP-01347":{"line":4602,"offset":817321,"length":202,"previous":"M21-GAP-01346","next":"M21-GAP-01348"},"M21-GAP-01348":{"line":4603,"offset":817523,"length":202,"previous":"M21-GAP-01347","next":"M21-GAP-01349"},"M21-GAP-01349":{"line":4604,"offset":817725,"length":202,"previous":"M21-GAP-01348","next":"M21-GAP-01350"},"M21-GAP-01350":{"line":4605,"offset":817927,"length":202,"previous":"M21-GAP-01349","next":"M21-GAP-01351"},"M21-GAP-01351":{"line":4606,"offset":818129,"length":202,"previous":"M21-GAP-01350","next":"M21-GAP-01352"},"M21-GAP-01352":{"line":4607,"offset":818331,"length":202,"previous":"M21-GAP-01351","next":"M21-GAP-01353"},"M21-GAP-01353":{"line":4608,"offset":818533,"length":202,"previous":"M21-GAP-01352","next":"M21-GAP-01354"},"M21-GAP-01354":{"line":4609,"offset":818735,"length":202,"previous":"M21-GAP-01353","next":"M21-GAP-01355"},"M21-GAP-01355":{"line":4610,"offset":818937,"length":202,"previous":"M21-GAP-01354","next":"M21-GAP-01356"},"M21-GAP-01356":{"line":4611,"offset":819139,"length":202,"previous":"M21-GAP-01355","next":"M21-GAP-01357"},"M21-GAP-01357":{"line":4612,"offset":819341,"length":207,"previous":"M21-GAP-01356","next":"M21-GAP-01358"},"M21-GAP-01358":{"line":4613,"offset":819548,"length":203,"previous":"M21-GAP-01357","next":"M21-GAP-01359"},"M21-GAP-01359":{"line":4614,"offset":819751,"length":202,"previous":"M21-GAP-01358","next":"M21-GAP-01360"},"M21-GAP-01360":{"line":4615,"offset":819953,"length":218,"previous":"M21-GAP-01359","next":"M21-GAP-01361"},"M21-GAP-01361":{"line":4616,"offset":820171,"length":218,"previous":"M21-GAP-01360","next":"M21-GAP-01362"},"M21-GAP-01362":{"line":4617,"offset":820389,"length":218,"previous":"M21-GAP-01361","next":"M21-GAP-01363"},"M21-GAP-01363":{"line":4618,"offset":820607,"length":207,"previous":"M21-GAP-01362","next":"M21-GAP-01364"},"M21-GAP-01364":{"line":4619,"offset":820814,"length":207,"previous":"M21-GAP-01363","next":"M21-GAP-01365"},"M21-GAP-01365":{"line":4620,"offset":821021,"length":207,"previous":"M21-GAP-01364","next":"M21-GAP-01366"},"M21-GAP-01366":{"line":4621,"offset":821228,"length":221,"previous":"M21-GAP-01365","next":"M21-GAP-01367"},"M21-GAP-01367":{"line":4622,"offset":821449,"length":221,"previous":"M21-GAP-01366","next":"M21-GAP-01368"},"M21-GAP-01368":{"line":4623,"offset":821670,"length":221,"previous":"M21-GAP-01367","next":"M21-GAP-01369"},"M21-GAP-01369":{"line":4624,"offset":821891,"length":210,"previous":"M21-GAP-01368","next":"M21-GAP-01370"},"M21-GAP-01370":{"line":4625,"offset":822101,"length":210,"previous":"M21-GAP-01369","next":"M21-GAP-01371"},"M21-GAP-01371":{"line":4626,"offset":822311,"length":210,"previous":"M21-GAP-01370","next":"M21-GAP-01372"},"M21-GAP-01372":{"line":4627,"offset":822521,"length":220,"previous":"M21-GAP-01371","next":"M21-GAP-01373"},"M21-GAP-01373":{"line":4628,"offset":822741,"length":220,"previous":"M21-GAP-01372","next":"M21-GAP-01374"},"M21-GAP-01374":{"line":4629,"offset":822961,"length":220,"previous":"M21-GAP-01373","next":"M21-GAP-01375"},"M21-GAP-01375":{"line":4630,"offset":823181,"length":209,"previous":"M21-GAP-01374","next":"M21-GAP-01376"},"M21-GAP-01376":{"line":4631,"offset":823390,"length":209,"previous":"M21-GAP-01375","next":"M21-GAP-01377"},"M21-GAP-01377":{"line":4632,"offset":823599,"length":209,"previous":"M21-GAP-01376","next":"M21-GAP-01378"},"M21-GAP-01378":{"line":4633,"offset":823808,"length":213,"previous":"M21-GAP-01377","next":"M21-GAP-01379"},"M21-GAP-01379":{"line":4634,"offset":824021,"length":213,"previous":"M21-GAP-01378","next":"M21-GAP-01380"},"M21-GAP-01380":{"line":4635,"offset":824234,"length":213,"previous":"M21-GAP-01379","next":"M21-GAP-01381"},"M21-GAP-01381":{"line":4636,"offset":824447,"length":202,"previous":"M21-GAP-01380","next":"M21-GAP-01382"},"M21-GAP-01382":{"line":4637,"offset":824649,"length":202,"previous":"M21-GAP-01381","next":"M21-GAP-01383"},"M21-GAP-01383":{"line":4638,"offset":824851,"length":202,"previous":"M21-GAP-01382","next":"M21-GAP-01384"},"M21-GAP-01384":{"line":4639,"offset":825053,"length":187,"previous":"M21-GAP-01383","next":"M21-GAP-01385"},"M21-GAP-01385":{"line":4640,"offset":825240,"length":187,"previous":"M21-GAP-01384","next":"M21-GAP-01386"},"M21-GAP-01386":{"line":4641,"offset":825427,"length":188,"previous":"M21-GAP-01385","next":"M21-GAP-01387"},"M21-GAP-01387":{"line":4642,"offset":825615,"length":187,"previous":"M21-GAP-01386","next":"M21-GAP-01388"},"M21-GAP-01388":{"line":4643,"offset":825802,"length":187,"previous":"M21-GAP-01387","next":"M21-GAP-01389"},"M21-GAP-01389":{"line":4644,"offset":825989,"length":187,"previous":"M21-GAP-01388","next":"M21-GAP-01390"},"M21-GAP-01390":{"line":4645,"offset":826176,"length":187,"previous":"M21-GAP-01389","next":"M21-GAP-01391"},"M21-GAP-01391":{"line":4646,"offset":826363,"length":187,"previous":"M21-GAP-01390","next":"M21-GAP-01392"},"M21-GAP-01392":{"line":4647,"offset":826550,"length":187,"previous":"M21-GAP-01391","next":"M21-GAP-01393"},"M21-GAP-01393":{"line":4648,"offset":826737,"length":187,"previous":"M21-GAP-01392","next":"M21-GAP-01394"},"M21-GAP-01394":{"line":4649,"offset":826924,"length":187,"previous":"M21-GAP-01393","next":"M21-GAP-01395"},"M21-GAP-01395":{"line":4650,"offset":827111,"length":178,"previous":"M21-GAP-01394","next":"M21-GAP-01396"},"M21-GAP-01396":{"line":4651,"offset":827289,"length":178,"previous":"M21-GAP-01395","next":"M21-GAP-01397"},"M21-GAP-01397":{"line":4652,"offset":827467,"length":179,"previous":"M21-GAP-01396","next":"M21-GAP-01398"},"M21-GAP-01398":{"line":4653,"offset":827646,"length":179,"previous":"M21-GAP-01397","next":"M21-GAP-01399"},"M21-GAP-01399":{"line":4654,"offset":827825,"length":179,"previous":"M21-GAP-01398","next":"M21-GAP-01400"},"M21-GAP-01400":{"line":4655,"offset":828004,"length":179,"previous":"M21-GAP-01399","next":"M21-GAP-01401"},"M21-GAP-01401":{"line":4656,"offset":828183,"length":179,"previous":"M21-GAP-01400","next":"M21-GAP-01402"},"M21-GAP-01402":{"line":4657,"offset":828362,"length":179,"previous":"M21-GAP-01401","next":"M21-GAP-01403"},"M21-GAP-01403":{"line":4658,"offset":828541,"length":179,"previous":"M21-GAP-01402","next":"M21-GAP-01404"},"M21-GAP-01404":{"line":4659,"offset":828720,"length":179,"previous":"M21-GAP-01403","next":"M21-GAP-01405"},"M21-GAP-01405":{"line":4660,"offset":828899,"length":179,"previous":"M21-GAP-01404","next":"M21-GAP-01406"},"M21-GAP-01406":{"line":4661,"offset":829078,"length":179,"previous":"M21-GAP-01405","next":"M21-GAP-01407"},"M21-GAP-01407":{"line":4662,"offset":829257,"length":178,"previous":"M21-GAP-01406","next":"M21-GAP-01408"},"M21-GAP-01408":{"line":4663,"offset":829435,"length":179,"previous":"M21-GAP-01407","next":"M21-GAP-01409"},"M21-GAP-01409":{"line":4664,"offset":829614,"length":179,"previous":"M21-GAP-01408","next":"M21-GAP-01410"},"M21-GAP-01410":{"line":4665,"offset":829793,"length":179,"previous":"M21-GAP-01409","next":"M21-GAP-01411"},"M21-GAP-01411":{"line":4666,"offset":829972,"length":179,"previous":"M21-GAP-01410","next":"M21-GAP-01412"},"M21-GAP-01412":{"line":4667,"offset":830151,"length":179,"previous":"M21-GAP-01411","next":"M21-GAP-01413"},"M21-GAP-01413":{"line":4668,"offset":830330,"length":179,"previous":"M21-GAP-01412","next":"M21-GAP-01414"},"M21-GAP-01414":{"line":4669,"offset":830509,"length":178,"previous":"M21-GAP-01413","next":"M21-GAP-01415"},"M21-GAP-01415":{"line":4670,"offset":830687,"length":178,"previous":"M21-GAP-01414","next":"M21-GAP-01416"},"M21-GAP-01416":{"line":4671,"offset":830865,"length":178,"previous":"M21-GAP-01415","next":"M21-GAP-01417"},"M21-GAP-01417":{"line":4672,"offset":831043,"length":178,"previous":"M21-GAP-01416","next":"M21-GAP-01418"},"M21-GAP-01418":{"line":4673,"offset":831221,"length":178,"previous":"M21-GAP-01417","next":"M21-GAP-01419"},"M21-GAP-01419":{"line":4674,"offset":831399,"length":178,"previous":"M21-GAP-01418","next":"M21-GAP-01420"},"M21-GAP-01420":{"line":4675,"offset":831577,"length":178,"previous":"M21-GAP-01419","next":"M21-GAP-01421"},"M21-GAP-01421":{"line":4676,"offset":831755,"length":179,"previous":"M21-GAP-01420","next":"M21-GAP-01422"},"M21-GAP-01422":{"line":4677,"offset":831934,"length":179,"previous":"M21-GAP-01421","next":"M21-GAP-01423"},"M21-GAP-01423":{"line":4678,"offset":832113,"length":180,"previous":"M21-GAP-01422","next":"M21-GAP-01424"},"M21-GAP-01424":{"line":4679,"offset":832293,"length":180,"previous":"M21-GAP-01423","next":"M21-GAP-01425"},"M21-GAP-01425":{"line":4680,"offset":832473,"length":180,"previous":"M21-GAP-01424","next":"M21-GAP-01426"},"M21-GAP-01426":{"line":4681,"offset":832653,"length":180,"previous":"M21-GAP-01425","next":"M21-GAP-01427"},"M21-GAP-01427":{"line":4682,"offset":832833,"length":180,"previous":"M21-GAP-01426","next":"M21-GAP-01428"},"M21-GAP-01428":{"line":4683,"offset":833013,"length":180,"previous":"M21-GAP-01427","next":"M21-GAP-01429"},"M21-GAP-01429":{"line":4684,"offset":833193,"length":180,"previous":"M21-GAP-01428","next":"M21-GAP-01430"},"M21-GAP-01430":{"line":4685,"offset":833373,"length":180,"previous":"M21-GAP-01429","next":"M21-GAP-01431"},"M21-GAP-01431":{"line":4686,"offset":833553,"length":180,"previous":"M21-GAP-01430","next":"M21-GAP-01432"},"M21-GAP-01432":{"line":4687,"offset":833733,"length":180,"previous":"M21-GAP-01431","next":"M21-GAP-01433"},"M21-GAP-01433":{"line":4688,"offset":833913,"length":179,"previous":"M21-GAP-01432","next":"M21-GAP-01434"},"M21-GAP-01434":{"line":4689,"offset":834092,"length":180,"previous":"M21-GAP-01433","next":"M21-GAP-01435"},"M21-GAP-01435":{"line":4690,"offset":834272,"length":180,"previous":"M21-GAP-01434","next":"M21-GAP-01436"},"M21-GAP-01436":{"line":4691,"offset":834452,"length":180,"previous":"M21-GAP-01435","next":"M21-GAP-01437"},"M21-GAP-01437":{"line":4692,"offset":834632,"length":180,"previous":"M21-GAP-01436","next":"M21-GAP-01438"},"M21-GAP-01438":{"line":4693,"offset":834812,"length":180,"previous":"M21-GAP-01437","next":"M21-GAP-01439"},"M21-GAP-01439":{"line":4694,"offset":834992,"length":180,"previous":"M21-GAP-01438","next":"M21-GAP-01440"},"M21-GAP-01440":{"line":4695,"offset":835172,"length":180,"previous":"M21-GAP-01439","next":"M21-GAP-01441"},"M21-GAP-01441":{"line":4696,"offset":835352,"length":180,"previous":"M21-GAP-01440","next":"M21-GAP-01442"},"M21-GAP-01442":{"line":4697,"offset":835532,"length":180,"previous":"M21-GAP-01441","next":"M21-GAP-01443"},"M21-GAP-01443":{"line":4698,"offset":835712,"length":180,"previous":"M21-GAP-01442","next":"M21-GAP-01444"},"M21-GAP-01444":{"line":4699,"offset":835892,"length":179,"previous":"M21-GAP-01443","next":"M21-GAP-01445"},"M21-GAP-01445":{"line":4700,"offset":836071,"length":180,"previous":"M21-GAP-01444","next":"M21-GAP-01446"},"M21-GAP-01446":{"line":4701,"offset":836251,"length":180,"previous":"M21-GAP-01445","next":"M21-GAP-01447"},"M21-GAP-01447":{"line":4702,"offset":836431,"length":180,"previous":"M21-GAP-01446","next":"M21-GAP-01448"},"M21-GAP-01448":{"line":4703,"offset":836611,"length":180,"previous":"M21-GAP-01447","next":"M21-GAP-01449"},"M21-GAP-01449":{"line":4704,"offset":836791,"length":180,"previous":"M21-GAP-01448","next":"M21-GAP-01450"},"M21-GAP-01450":{"line":4705,"offset":836971,"length":180,"previous":"M21-GAP-01449","next":"M21-GAP-01451"},"M21-GAP-01451":{"line":4706,"offset":837151,"length":180,"previous":"M21-GAP-01450","next":"M21-GAP-01452"},"M21-GAP-01452":{"line":4707,"offset":837331,"length":180,"previous":"M21-GAP-01451","next":"M21-GAP-01453"},"M21-GAP-01453":{"line":4708,"offset":837511,"length":180,"previous":"M21-GAP-01452","next":"M21-GAP-01454"},"M21-GAP-01454":{"line":4709,"offset":837691,"length":180,"previous":"M21-GAP-01453","next":"M21-GAP-01455"},"M21-GAP-01455":{"line":4710,"offset":837871,"length":179,"previous":"M21-GAP-01454","next":"M21-GAP-01456"},"M21-GAP-01456":{"line":4711,"offset":838050,"length":180,"previous":"M21-GAP-01455","next":"M21-GAP-01457"},"M21-GAP-01457":{"line":4712,"offset":838230,"length":180,"previous":"M21-GAP-01456","next":"M21-GAP-01458"},"M21-GAP-01458":{"line":4713,"offset":838410,"length":180,"previous":"M21-GAP-01457","next":"M21-GAP-01459"},"M21-GAP-01459":{"line":4714,"offset":838590,"length":180,"previous":"M21-GAP-01458","next":"M21-GAP-01460"},"M21-GAP-01460":{"line":4715,"offset":838770,"length":180,"previous":"M21-GAP-01459","next":"M21-GAP-01461"},"M21-GAP-01461":{"line":4716,"offset":838950,"length":180,"previous":"M21-GAP-01460","next":"M21-GAP-01462"},"M21-GAP-01462":{"line":4717,"offset":839130,"length":180,"previous":"M21-GAP-01461","next":"M21-GAP-01463"},"M21-GAP-01463":{"line":4718,"offset":839310,"length":180,"previous":"M21-GAP-01462","next":"M21-GAP-01464"},"M21-GAP-01464":{"line":4719,"offset":839490,"length":180,"previous":"M21-GAP-01463","next":"M21-GAP-01465"},"M21-GAP-01465":{"line":4720,"offset":839670,"length":180,"previous":"M21-GAP-01464","next":"M21-GAP-01466"},"M21-GAP-01466":{"line":4721,"offset":839850,"length":179,"previous":"M21-GAP-01465","next":"M21-GAP-01467"},"M21-GAP-01467":{"line":4722,"offset":840029,"length":180,"previous":"M21-GAP-01466","next":"M21-GAP-01468"},"M21-GAP-01468":{"line":4723,"offset":840209,"length":179,"previous":"M21-GAP-01467","next":"M21-GAP-01469"},"M21-GAP-01469":{"line":4724,"offset":840388,"length":179,"previous":"M21-GAP-01468","next":"M21-GAP-01470"},"M21-GAP-01470":{"line":4725,"offset":840567,"length":179,"previous":"M21-GAP-01469","next":"M21-GAP-01471"},"M21-GAP-01471":{"line":4726,"offset":840746,"length":179,"previous":"M21-GAP-01470","next":"M21-GAP-01472"},"M21-GAP-01472":{"line":4727,"offset":840925,"length":170,"previous":"M21-GAP-01471","next":"M21-GAP-01473"},"M21-GAP-01473":{"line":4728,"offset":841095,"length":170,"previous":"M21-GAP-01472","next":"M21-GAP-01474"},"M21-GAP-01474":{"line":4729,"offset":841265,"length":171,"previous":"M21-GAP-01473","next":"M21-GAP-01475"},"M21-GAP-01475":{"line":4730,"offset":841436,"length":171,"previous":"M21-GAP-01474","next":"M21-GAP-01476"},"M21-GAP-01476":{"line":4731,"offset":841607,"length":171,"previous":"M21-GAP-01475","next":"M21-GAP-01477"},"M21-GAP-01477":{"line":4732,"offset":841778,"length":171,"previous":"M21-GAP-01476","next":"M21-GAP-01478"},"M21-GAP-01478":{"line":4733,"offset":841949,"length":170,"previous":"M21-GAP-01477","next":"M21-GAP-01479"},"M21-GAP-01479":{"line":4734,"offset":842119,"length":170,"previous":"M21-GAP-01478","next":"M21-GAP-01480"},"M21-GAP-01480":{"line":4735,"offset":842289,"length":170,"previous":"M21-GAP-01479","next":"M21-GAP-01481"},"M21-GAP-01481":{"line":4736,"offset":842459,"length":170,"previous":"M21-GAP-01480","next":"M21-GAP-01482"},"M21-GAP-01482":{"line":4737,"offset":842629,"length":170,"previous":"M21-GAP-01481","next":"M21-GAP-01483"},"M21-GAP-01483":{"line":4738,"offset":842799,"length":170,"previous":"M21-GAP-01482","next":"M21-GAP-01484"},"M21-GAP-01484":{"line":4739,"offset":842969,"length":170,"previous":"M21-GAP-01483","next":"M21-GAP-01485"},"M21-GAP-01485":{"line":4740,"offset":843139,"length":170,"previous":"M21-GAP-01484","next":"M21-GAP-01486"},"M21-GAP-01486":{"line":4741,"offset":843309,"length":193,"previous":"M21-GAP-01485","next":"M21-GAP-01487"},"M21-GAP-01487":{"line":4742,"offset":843502,"length":193,"previous":"M21-GAP-01486","next":"M21-GAP-01488"},"M21-GAP-01488":{"line":4743,"offset":843695,"length":193,"previous":"M21-GAP-01487","next":"M21-GAP-01489"},"M21-GAP-01489":{"line":4744,"offset":843888,"length":193,"previous":"M21-GAP-01488","next":"M21-GAP-01490"},"M21-GAP-01490":{"line":4745,"offset":844081,"length":193,"previous":"M21-GAP-01489","next":"M21-GAP-01491"},"M21-GAP-01491":{"line":4746,"offset":844274,"length":193,"previous":"M21-GAP-01490","next":"M21-GAP-01492"},"M21-GAP-01492":{"line":4747,"offset":844467,"length":193,"previous":"M21-GAP-01491","next":"M21-GAP-01493"},"M21-GAP-01493":{"line":4748,"offset":844660,"length":187,"previous":"M21-GAP-01492","next":"M21-GAP-01494"},"M21-GAP-01494":{"line":4749,"offset":844847,"length":187,"previous":"M21-GAP-01493","next":"M21-GAP-01495"},"M21-GAP-01495":{"line":4750,"offset":845034,"length":188,"previous":"M21-GAP-01494","next":"M21-GAP-01496"},"M21-GAP-01496":{"line":4751,"offset":845222,"length":188,"previous":"M21-GAP-01495","next":"M21-GAP-01497"},"M21-GAP-01497":{"line":4752,"offset":845410,"length":188,"previous":"M21-GAP-01496","next":"M21-GAP-01498"},"M21-GAP-01498":{"line":4753,"offset":845598,"length":188,"previous":"M21-GAP-01497","next":"M21-GAP-01499"},"M21-GAP-01499":{"line":4754,"offset":845786,"length":188,"previous":"M21-GAP-01498","next":"M21-GAP-01500"},"M21-GAP-01500":{"line":4755,"offset":845974,"length":188,"previous":"M21-GAP-01499","next":"M21-GAP-01501"},"M21-GAP-01501":{"line":4756,"offset":846162,"length":188,"previous":"M21-GAP-01500","next":"M21-GAP-01502"},"M21-GAP-01502":{"line":4757,"offset":846350,"length":188,"previous":"M21-GAP-01501","next":"M21-GAP-01503"},"M21-GAP-01503":{"line":4758,"offset":846538,"length":188,"previous":"M21-GAP-01502","next":"M21-GAP-01504"},"M21-GAP-01504":{"line":4759,"offset":846726,"length":188,"previous":"M21-GAP-01503","next":"M21-GAP-01505"},"M21-GAP-01505":{"line":4760,"offset":846914,"length":187,"previous":"M21-GAP-01504","next":"M21-GAP-01506"},"M21-GAP-01506":{"line":4761,"offset":847101,"length":188,"previous":"M21-GAP-01505","next":"M21-GAP-01507"},"M21-GAP-01507":{"line":4762,"offset":847289,"length":188,"previous":"M21-GAP-01506","next":"M21-GAP-01508"},"M21-GAP-01508":{"line":4763,"offset":847477,"length":188,"previous":"M21-GAP-01507","next":"M21-GAP-01509"},"M21-GAP-01509":{"line":4764,"offset":847665,"length":188,"previous":"M21-GAP-01508","next":"M21-GAP-01510"},"M21-GAP-01510":{"line":4765,"offset":847853,"length":188,"previous":"M21-GAP-01509","next":"M21-GAP-01511"},"M21-GAP-01511":{"line":4766,"offset":848041,"length":187,"previous":"M21-GAP-01510","next":"M21-GAP-01512"},"M21-GAP-01512":{"line":4767,"offset":848228,"length":187,"previous":"M21-GAP-01511","next":"M21-GAP-01513"},"M21-GAP-01513":{"line":4768,"offset":848415,"length":187,"previous":"M21-GAP-01512","next":"M21-GAP-01514"},"M21-GAP-01514":{"line":4769,"offset":848602,"length":187,"previous":"M21-GAP-01513","next":"M21-GAP-01515"},"M21-GAP-01515":{"line":4770,"offset":848789,"length":187,"previous":"M21-GAP-01514","next":"M21-GAP-01516"},"M21-GAP-01516":{"line":4771,"offset":848976,"length":187,"previous":"M21-GAP-01515","next":"M21-GAP-01517"},"M21-GAP-01517":{"line":4772,"offset":849163,"length":187,"previous":"M21-GAP-01516","next":"M21-GAP-01518"},"M21-GAP-01518":{"line":4773,"offset":849350,"length":174,"previous":"M21-GAP-01517","next":"M21-GAP-01519"},"M21-GAP-01519":{"line":4774,"offset":849524,"length":174,"previous":"M21-GAP-01518","next":"M21-GAP-01520"},"M21-GAP-01520":{"line":4775,"offset":849698,"length":175,"previous":"M21-GAP-01519","next":"M21-GAP-01521"},"M21-GAP-01521":{"line":4776,"offset":849873,"length":175,"previous":"M21-GAP-01520","next":"M21-GAP-01522"},"M21-GAP-01522":{"line":4777,"offset":850048,"length":175,"previous":"M21-GAP-01521","next":"M21-GAP-01523"},"M21-GAP-01523":{"line":4778,"offset":850223,"length":175,"previous":"M21-GAP-01522","next":"M21-GAP-01524"},"M21-GAP-01524":{"line":4779,"offset":850398,"length":175,"previous":"M21-GAP-01523","next":"M21-GAP-01525"},"M21-GAP-01525":{"line":4780,"offset":850573,"length":175,"previous":"M21-GAP-01524","next":"M21-GAP-01526"},"M21-GAP-01526":{"line":4781,"offset":850748,"length":175,"previous":"M21-GAP-01525","next":"M21-GAP-01527"},"M21-GAP-01527":{"line":4782,"offset":850923,"length":175,"previous":"M21-GAP-01526","next":"M21-GAP-01528"},"M21-GAP-01528":{"line":4783,"offset":851098,"length":175,"previous":"M21-GAP-01527","next":"M21-GAP-01529"},"M21-GAP-01529":{"line":4784,"offset":851273,"length":175,"previous":"M21-GAP-01528","next":"M21-GAP-01530"},"M21-GAP-01530":{"line":4785,"offset":851448,"length":174,"previous":"M21-GAP-01529","next":"M21-GAP-01531"},"M21-GAP-01531":{"line":4786,"offset":851622,"length":175,"previous":"M21-GAP-01530","next":"M21-GAP-01532"},"M21-GAP-01532":{"line":4787,"offset":851797,"length":174,"previous":"M21-GAP-01531","next":"M21-GAP-01533"},"M21-GAP-01533":{"line":4788,"offset":851971,"length":174,"previous":"M21-GAP-01532","next":"M21-GAP-01534"},"M21-GAP-01534":{"line":4789,"offset":852145,"length":174,"previous":"M21-GAP-01533","next":"M21-GAP-01535"},"M21-GAP-01535":{"line":4790,"offset":852319,"length":174,"previous":"M21-GAP-01534","next":"M21-GAP-01536"},"M21-GAP-01536":{"line":4791,"offset":852493,"length":174,"previous":"M21-GAP-01535","next":"M21-GAP-01537"},"M21-GAP-01537":{"line":4792,"offset":852667,"length":174,"previous":"M21-GAP-01536","next":"M21-GAP-01538"},"M21-GAP-01538":{"line":4793,"offset":852841,"length":174,"previous":"M21-GAP-01537","next":"M21-GAP-01539"},"M21-GAP-01539":{"line":4794,"offset":853015,"length":174,"previous":"M21-GAP-01538","next":"M21-GAP-01540"},"M21-GAP-01540":{"line":4795,"offset":853189,"length":174,"previous":"M21-GAP-01539","next":"M21-GAP-01541"},"M21-GAP-01541":{"line":4796,"offset":853363,"length":175,"previous":"M21-GAP-01540","next":"M21-GAP-01542"},"M21-GAP-01542":{"line":4797,"offset":853538,"length":175,"previous":"M21-GAP-01541","next":"M21-GAP-01543"},"M21-GAP-01543":{"line":4798,"offset":853713,"length":175,"previous":"M21-GAP-01542","next":"M21-GAP-01544"},"M21-GAP-01544":{"line":4799,"offset":853888,"length":175,"previous":"M21-GAP-01543","next":"M21-GAP-01545"},"M21-GAP-01545":{"line":4800,"offset":854063,"length":175,"previous":"M21-GAP-01544","next":"M21-GAP-01546"},"M21-GAP-01546":{"line":4801,"offset":854238,"length":175,"previous":"M21-GAP-01545","next":"M21-GAP-01547"},"M21-GAP-01547":{"line":4802,"offset":854413,"length":175,"previous":"M21-GAP-01546","next":"M21-GAP-01548"},"M21-GAP-01548":{"line":4803,"offset":854588,"length":175,"previous":"M21-GAP-01547","next":"M21-GAP-01549"},"M21-GAP-01549":{"line":4804,"offset":854763,"length":175,"previous":"M21-GAP-01548","next":"M21-GAP-01550"},"M21-GAP-01550":{"line":4805,"offset":854938,"length":175,"previous":"M21-GAP-01549","next":"M21-GAP-01551"},"M21-GAP-01551":{"line":4806,"offset":855113,"length":174,"previous":"M21-GAP-01550","next":"M21-GAP-01552"},"M21-GAP-01552":{"line":4807,"offset":855287,"length":175,"previous":"M21-GAP-01551","next":"M21-GAP-01553"},"M21-GAP-01553":{"line":4808,"offset":855462,"length":175,"previous":"M21-GAP-01552","next":"M21-GAP-01554"},"M21-GAP-01554":{"line":4809,"offset":855637,"length":175,"previous":"M21-GAP-01553","next":"M21-GAP-01555"},"M21-GAP-01555":{"line":4810,"offset":855812,"length":175,"previous":"M21-GAP-01554","next":"M21-GAP-01556"},"M21-GAP-01556":{"line":4811,"offset":855987,"length":175,"previous":"M21-GAP-01555","next":"M21-GAP-01557"},"M21-GAP-01557":{"line":4812,"offset":856162,"length":174,"previous":"M21-GAP-01556","next":"M21-GAP-01558"},"M21-GAP-01558":{"line":4813,"offset":856336,"length":174,"previous":"M21-GAP-01557","next":"M21-GAP-01559"},"M21-GAP-01559":{"line":4814,"offset":856510,"length":174,"previous":"M21-GAP-01558","next":"M21-GAP-01560"},"M21-GAP-01560":{"line":4815,"offset":856684,"length":174,"previous":"M21-GAP-01559","next":"M21-GAP-01561"},"M21-GAP-01561":{"line":4816,"offset":856858,"length":174,"previous":"M21-GAP-01560","next":"M21-GAP-01562"},"M21-GAP-01562":{"line":4817,"offset":857032,"length":174,"previous":"M21-GAP-01561","next":"M21-GAP-01563"},"M21-GAP-01563":{"line":4818,"offset":857206,"length":174,"previous":"M21-GAP-01562","next":"M21-GAP-01564"},"M21-GAP-01564":{"line":4819,"offset":857380,"length":179,"previous":"M21-GAP-01563","next":"M21-GAP-01565"},"M21-GAP-01565":{"line":4820,"offset":857559,"length":179,"previous":"M21-GAP-01564","next":"M21-GAP-01566"},"M21-GAP-01566":{"line":4821,"offset":857738,"length":180,"previous":"M21-GAP-01565","next":"M21-GAP-01567"},"M21-GAP-01567":{"line":4822,"offset":857918,"length":180,"previous":"M21-GAP-01566","next":"M21-GAP-01568"},"M21-GAP-01568":{"line":4823,"offset":858098,"length":180,"previous":"M21-GAP-01567","next":"M21-GAP-01569"},"M21-GAP-01569":{"line":4824,"offset":858278,"length":180,"previous":"M21-GAP-01568","next":"M21-GAP-01570"},"M21-GAP-01570":{"line":4825,"offset":858458,"length":180,"previous":"M21-GAP-01569","next":"M21-GAP-01571"},"M21-GAP-01571":{"line":4826,"offset":858638,"length":180,"previous":"M21-GAP-01570","next":"M21-GAP-01572"},"M21-GAP-01572":{"line":4827,"offset":858818,"length":180,"previous":"M21-GAP-01571","next":"M21-GAP-01573"},"M21-GAP-01573":{"line":4828,"offset":858998,"length":180,"previous":"M21-GAP-01572","next":"M21-GAP-01574"},"M21-GAP-01574":{"line":4829,"offset":859178,"length":180,"previous":"M21-GAP-01573","next":"M21-GAP-01575"},"M21-GAP-01575":{"line":4830,"offset":859358,"length":180,"previous":"M21-GAP-01574","next":"M21-GAP-01576"},"M21-GAP-01576":{"line":4831,"offset":859538,"length":179,"previous":"M21-GAP-01575","next":"M21-GAP-01577"},"M21-GAP-01577":{"line":4832,"offset":859717,"length":180,"previous":"M21-GAP-01576","next":"M21-GAP-01578"},"M21-GAP-01578":{"line":4833,"offset":859897,"length":180,"previous":"M21-GAP-01577","next":"M21-GAP-01579"},"M21-GAP-01579":{"line":4834,"offset":860077,"length":180,"previous":"M21-GAP-01578","next":"M21-GAP-01580"},"M21-GAP-01580":{"line":4835,"offset":860257,"length":180,"previous":"M21-GAP-01579","next":"M21-GAP-01581"},"M21-GAP-01581":{"line":4836,"offset":860437,"length":180,"previous":"M21-GAP-01580","next":"M21-GAP-01582"},"M21-GAP-01582":{"line":4837,"offset":860617,"length":180,"previous":"M21-GAP-01581","next":"M21-GAP-01583"},"M21-GAP-01583":{"line":4838,"offset":860797,"length":180,"previous":"M21-GAP-01582","next":"M21-GAP-01584"},"M21-GAP-01584":{"line":4839,"offset":860977,"length":180,"previous":"M21-GAP-01583","next":"M21-GAP-01585"},"M21-GAP-01585":{"line":4840,"offset":861157,"length":180,"previous":"M21-GAP-01584","next":"M21-GAP-01586"},"M21-GAP-01586":{"line":4841,"offset":861337,"length":180,"previous":"M21-GAP-01585","next":"M21-GAP-01587"},"M21-GAP-01587":{"line":4842,"offset":861517,"length":179,"previous":"M21-GAP-01586","next":"M21-GAP-01588"},"M21-GAP-01588":{"line":4843,"offset":861696,"length":180,"previous":"M21-GAP-01587","next":"M21-GAP-01589"},"M21-GAP-01589":{"line":4844,"offset":861876,"length":180,"previous":"M21-GAP-01588","next":"M21-GAP-01590"},"M21-GAP-01590":{"line":4845,"offset":862056,"length":180,"previous":"M21-GAP-01589","next":"M21-GAP-01591"},"M21-GAP-01591":{"line":4846,"offset":862236,"length":180,"previous":"M21-GAP-01590","next":"M21-GAP-01592"},"M21-GAP-01592":{"line":4847,"offset":862416,"length":180,"previous":"M21-GAP-01591","next":"M21-GAP-01593"},"M21-GAP-01593":{"line":4848,"offset":862596,"length":180,"previous":"M21-GAP-01592","next":"M21-GAP-01594"},"M21-GAP-01594":{"line":4849,"offset":862776,"length":180,"previous":"M21-GAP-01593","next":"M21-GAP-01595"},"M21-GAP-01595":{"line":4850,"offset":862956,"length":180,"previous":"M21-GAP-01594","next":"M21-GAP-01596"},"M21-GAP-01596":{"line":4851,"offset":863136,"length":180,"previous":"M21-GAP-01595","next":"M21-GAP-01597"},"M21-GAP-01597":{"line":4852,"offset":863316,"length":180,"previous":"M21-GAP-01596","next":"M21-GAP-01598"},"M21-GAP-01598":{"line":4853,"offset":863496,"length":179,"previous":"M21-GAP-01597","next":"M21-GAP-01599"},"M21-GAP-01599":{"line":4854,"offset":863675,"length":180,"previous":"M21-GAP-01598","next":"M21-GAP-01600"},"M21-GAP-01600":{"line":4855,"offset":863855,"length":180,"previous":"M21-GAP-01599","next":"M21-GAP-01601"},"M21-GAP-01601":{"line":4856,"offset":864035,"length":180,"previous":"M21-GAP-01600","next":"M21-GAP-01602"},"M21-GAP-01602":{"line":4857,"offset":864215,"length":180,"previous":"M21-GAP-01601","next":"M21-GAP-01603"},"M21-GAP-01603":{"line":4858,"offset":864395,"length":180,"previous":"M21-GAP-01602","next":"M21-GAP-01604"},"M21-GAP-01604":{"line":4859,"offset":864575,"length":180,"previous":"M21-GAP-01603","next":"M21-GAP-01605"},"M21-GAP-01605":{"line":4860,"offset":864755,"length":180,"previous":"M21-GAP-01604","next":"M21-GAP-01606"},"M21-GAP-01606":{"line":4861,"offset":864935,"length":180,"previous":"M21-GAP-01605","next":"M21-GAP-01607"},"M21-GAP-01607":{"line":4862,"offset":865115,"length":179,"previous":"M21-GAP-01606","next":"M21-GAP-01608"},"M21-GAP-01608":{"line":4863,"offset":865294,"length":179,"previous":"M21-GAP-01607","next":"M21-GAP-01609"},"M21-GAP-01609":{"line":4864,"offset":865473,"length":179,"previous":"M21-GAP-01608","next":"M21-GAP-01610"},"M21-GAP-01610":{"line":4865,"offset":865652,"length":179,"previous":"M21-GAP-01609","next":"M21-GAP-01611"},"M21-GAP-01611":{"line":4866,"offset":865831,"length":179,"previous":"M21-GAP-01610","next":"M21-GAP-01612"},"M21-GAP-01612":{"line":4867,"offset":866010,"length":188,"previous":"M21-GAP-01611","next":"M21-GAP-01613"},"M21-GAP-01613":{"line":4868,"offset":866198,"length":188,"previous":"M21-GAP-01612","next":"M21-GAP-01614"},"M21-GAP-01614":{"line":4869,"offset":866386,"length":188,"previous":"M21-GAP-01613","next":"M21-GAP-01615"},"M21-GAP-01615":{"line":4870,"offset":866574,"length":188,"previous":"M21-GAP-01614","next":"M21-GAP-01616"},"M21-GAP-01616":{"line":4871,"offset":866762,"length":188,"previous":"M21-GAP-01615","next":"M21-GAP-01617"},"M21-GAP-01617":{"line":4872,"offset":866950,"length":188,"previous":"M21-GAP-01616","next":"M21-GAP-01618"},"M21-GAP-01618":{"line":4873,"offset":867138,"length":171,"previous":"M21-GAP-01617","next":"M21-GAP-01619"},"M21-GAP-01619":{"line":4874,"offset":867309,"length":171,"previous":"M21-GAP-01618","next":"M21-GAP-01620"},"M21-GAP-01620":{"line":4875,"offset":867480,"length":172,"previous":"M21-GAP-01619","next":"M21-GAP-01621"},"M21-GAP-01621":{"line":4876,"offset":867652,"length":172,"previous":"M21-GAP-01620","next":"M21-GAP-01622"},"M21-GAP-01622":{"line":4877,"offset":867824,"length":172,"previous":"M21-GAP-01621","next":"M21-GAP-01623"},"M21-GAP-01623":{"line":4878,"offset":867996,"length":172,"previous":"M21-GAP-01622","next":"M21-GAP-01624"},"M21-GAP-01624":{"line":4879,"offset":868168,"length":172,"previous":"M21-GAP-01623","next":"M21-GAP-01625"},"M21-GAP-01625":{"line":4880,"offset":868340,"length":172,"previous":"M21-GAP-01624","next":"M21-GAP-01626"},"M21-GAP-01626":{"line":4881,"offset":868512,"length":172,"previous":"M21-GAP-01625","next":"M21-GAP-01627"},"M21-GAP-01627":{"line":4882,"offset":868684,"length":172,"previous":"M21-GAP-01626","next":"M21-GAP-01628"},"M21-GAP-01628":{"line":4883,"offset":868856,"length":172,"previous":"M21-GAP-01627","next":"M21-GAP-01629"},"M21-GAP-01629":{"line":4884,"offset":869028,"length":172,"previous":"M21-GAP-01628","next":"M21-GAP-01630"},"M21-GAP-01630":{"line":4885,"offset":869200,"length":171,"previous":"M21-GAP-01629","next":"M21-GAP-01631"},"M21-GAP-01631":{"line":4886,"offset":869371,"length":172,"previous":"M21-GAP-01630","next":"M21-GAP-01632"},"M21-GAP-01632":{"line":4887,"offset":869543,"length":172,"previous":"M21-GAP-01631","next":"M21-GAP-01633"},"M21-GAP-01633":{"line":4888,"offset":869715,"length":172,"previous":"M21-GAP-01632","next":"M21-GAP-01634"},"M21-GAP-01634":{"line":4889,"offset":869887,"length":172,"previous":"M21-GAP-01633","next":"M21-GAP-01635"},"M21-GAP-01635":{"line":4890,"offset":870059,"length":172,"previous":"M21-GAP-01634","next":"M21-GAP-01636"},"M21-GAP-01636":{"line":4891,"offset":870231,"length":172,"previous":"M21-GAP-01635","next":"M21-GAP-01637"},"M21-GAP-01637":{"line":4892,"offset":870403,"length":172,"previous":"M21-GAP-01636","next":"M21-GAP-01638"},"M21-GAP-01638":{"line":4893,"offset":870575,"length":172,"previous":"M21-GAP-01637","next":"M21-GAP-01639"},"M21-GAP-01639":{"line":4894,"offset":870747,"length":172,"previous":"M21-GAP-01638","next":"M21-GAP-01640"},"M21-GAP-01640":{"line":4895,"offset":870919,"length":172,"previous":"M21-GAP-01639","next":"M21-GAP-01641"},"M21-GAP-01641":{"line":4896,"offset":871091,"length":171,"previous":"M21-GAP-01640","next":"M21-GAP-01642"},"M21-GAP-01642":{"line":4897,"offset":871262,"length":172,"previous":"M21-GAP-01641","next":"M21-GAP-01643"},"M21-GAP-01643":{"line":4898,"offset":871434,"length":172,"previous":"M21-GAP-01642","next":"M21-GAP-01644"},"M21-GAP-01644":{"line":4899,"offset":871606,"length":172,"previous":"M21-GAP-01643","next":"M21-GAP-01645"},"M21-GAP-01645":{"line":4900,"offset":871778,"length":172,"previous":"M21-GAP-01644","next":"M21-GAP-01646"},"M21-GAP-01646":{"line":4901,"offset":871950,"length":172,"previous":"M21-GAP-01645","next":"M21-GAP-01647"},"M21-GAP-01647":{"line":4902,"offset":872122,"length":172,"previous":"M21-GAP-01646","next":"M21-GAP-01648"},"M21-GAP-01648":{"line":4903,"offset":872294,"length":172,"previous":"M21-GAP-01647","next":"M21-GAP-01649"},"M21-GAP-01649":{"line":4904,"offset":872466,"length":172,"previous":"M21-GAP-01648","next":"M21-GAP-01650"},"M21-GAP-01650":{"line":4905,"offset":872638,"length":172,"previous":"M21-GAP-01649","next":"M21-GAP-01651"},"M21-GAP-01651":{"line":4906,"offset":872810,"length":172,"previous":"M21-GAP-01650","next":"M21-GAP-01652"},"M21-GAP-01652":{"line":4907,"offset":872982,"length":171,"previous":"M21-GAP-01651","next":"M21-GAP-01653"},"M21-GAP-01653":{"line":4908,"offset":873153,"length":172,"previous":"M21-GAP-01652","next":"M21-GAP-01654"},"M21-GAP-01654":{"line":4909,"offset":873325,"length":172,"previous":"M21-GAP-01653","next":"M21-GAP-01655"},"M21-GAP-01655":{"line":4910,"offset":873497,"length":172,"previous":"M21-GAP-01654","next":"M21-GAP-01656"},"M21-GAP-01656":{"line":4911,"offset":873669,"length":172,"previous":"M21-GAP-01655","next":"M21-GAP-01657"},"M21-GAP-01657":{"line":4912,"offset":873841,"length":172,"previous":"M21-GAP-01656","next":"M21-GAP-01658"},"M21-GAP-01658":{"line":4913,"offset":874013,"length":172,"previous":"M21-GAP-01657","next":"M21-GAP-01659"},"M21-GAP-01659":{"line":4914,"offset":874185,"length":172,"previous":"M21-GAP-01658","next":"M21-GAP-01660"},"M21-GAP-01660":{"line":4915,"offset":874357,"length":172,"previous":"M21-GAP-01659","next":"M21-GAP-01661"},"M21-GAP-01661":{"line":4916,"offset":874529,"length":172,"previous":"M21-GAP-01660","next":"M21-GAP-01662"},"M21-GAP-01662":{"line":4917,"offset":874701,"length":172,"previous":"M21-GAP-01661","next":"M21-GAP-01663"},"M21-GAP-01663":{"line":4918,"offset":874873,"length":171,"previous":"M21-GAP-01662","next":"M21-GAP-01664"},"M21-GAP-01664":{"line":4919,"offset":875044,"length":172,"previous":"M21-GAP-01663","next":"M21-GAP-01665"},"M21-GAP-01665":{"line":4920,"offset":875216,"length":172,"previous":"M21-GAP-01664","next":"M21-GAP-01666"},"M21-GAP-01666":{"line":4921,"offset":875388,"length":172,"previous":"M21-GAP-01665","next":"M21-GAP-01667"},"M21-GAP-01667":{"line":4922,"offset":875560,"length":172,"previous":"M21-GAP-01666","next":"M21-GAP-01668"},"M21-GAP-01668":{"line":4923,"offset":875732,"length":172,"previous":"M21-GAP-01667","next":"M21-GAP-01669"},"M21-GAP-01669":{"line":4924,"offset":875904,"length":172,"previous":"M21-GAP-01668","next":"M21-GAP-01670"},"M21-GAP-01670":{"line":4925,"offset":876076,"length":172,"previous":"M21-GAP-01669","next":"M21-GAP-01671"},"M21-GAP-01671":{"line":4926,"offset":876248,"length":172,"previous":"M21-GAP-01670","next":"M21-GAP-01672"},"M21-GAP-01672":{"line":4927,"offset":876420,"length":172,"previous":"M21-GAP-01671","next":"M21-GAP-01673"},"M21-GAP-01673":{"line":4928,"offset":876592,"length":172,"previous":"M21-GAP-01672","next":"M21-GAP-01674"},"M21-GAP-01674":{"line":4929,"offset":876764,"length":171,"previous":"M21-GAP-01673","next":"M21-GAP-01675"},"M21-GAP-01675":{"line":4930,"offset":876935,"length":172,"previous":"M21-GAP-01674","next":"M21-GAP-01676"},"M21-GAP-01676":{"line":4931,"offset":877107,"length":172,"previous":"M21-GAP-01675","next":"M21-GAP-01677"},"M21-GAP-01677":{"line":4932,"offset":877279,"length":172,"previous":"M21-GAP-01676","next":"M21-GAP-01678"},"M21-GAP-01678":{"line":4933,"offset":877451,"length":172,"previous":"M21-GAP-01677","next":"M21-GAP-01679"},"M21-GAP-01679":{"line":4934,"offset":877623,"length":172,"previous":"M21-GAP-01678","next":"M21-GAP-01680"},"M21-GAP-01680":{"line":4935,"offset":877795,"length":172,"previous":"M21-GAP-01679","next":"M21-GAP-01681"},"M21-GAP-01681":{"line":4936,"offset":877967,"length":172,"previous":"M21-GAP-01680","next":"M21-GAP-01682"},"M21-GAP-01682":{"line":4937,"offset":878139,"length":172,"previous":"M21-GAP-01681","next":"M21-GAP-01683"},"M21-GAP-01683":{"line":4938,"offset":878311,"length":172,"previous":"M21-GAP-01682","next":"M21-GAP-01684"},"M21-GAP-01684":{"line":4939,"offset":878483,"length":172,"previous":"M21-GAP-01683","next":"M21-GAP-01685"},"M21-GAP-01685":{"line":4940,"offset":878655,"length":171,"previous":"M21-GAP-01684","next":"M21-GAP-01686"},"M21-GAP-01686":{"line":4941,"offset":878826,"length":172,"previous":"M21-GAP-01685","next":"M21-GAP-01687"},"M21-GAP-01687":{"line":4942,"offset":878998,"length":172,"previous":"M21-GAP-01686","next":"M21-GAP-01688"},"M21-GAP-01688":{"line":4943,"offset":879170,"length":172,"previous":"M21-GAP-01687","next":"M21-GAP-01689"},"M21-GAP-01689":{"line":4944,"offset":879342,"length":172,"previous":"M21-GAP-01688","next":"M21-GAP-01690"},"M21-GAP-01690":{"line":4945,"offset":879514,"length":172,"previous":"M21-GAP-01689","next":"M21-GAP-01691"},"M21-GAP-01691":{"line":4946,"offset":879686,"length":172,"previous":"M21-GAP-01690","next":"M21-GAP-01692"},"M21-GAP-01692":{"line":4947,"offset":879858,"length":172,"previous":"M21-GAP-01691","next":"M21-GAP-01693"},"M21-GAP-01693":{"line":4948,"offset":880030,"length":172,"previous":"M21-GAP-01692","next":"M21-GAP-01694"},"M21-GAP-01694":{"line":4949,"offset":880202,"length":172,"previous":"M21-GAP-01693","next":"M21-GAP-01695"},"M21-GAP-01695":{"line":4950,"offset":880374,"length":172,"previous":"M21-GAP-01694","next":"M21-GAP-01696"},"M21-GAP-01696":{"line":4951,"offset":880546,"length":171,"previous":"M21-GAP-01695","next":"M21-GAP-01697"},"M21-GAP-01697":{"line":4952,"offset":880717,"length":172,"previous":"M21-GAP-01696","next":"M21-GAP-01698"},"M21-GAP-01698":{"line":4953,"offset":880889,"length":172,"previous":"M21-GAP-01697","next":"M21-GAP-01699"},"M21-GAP-01699":{"line":4954,"offset":881061,"length":172,"previous":"M21-GAP-01698","next":"M21-GAP-01700"},"M21-GAP-01700":{"line":4955,"offset":881233,"length":172,"previous":"M21-GAP-01699","next":"M21-GAP-01701"},"M21-GAP-01701":{"line":4956,"offset":881405,"length":172,"previous":"M21-GAP-01700","next":"M21-GAP-01702"},"M21-GAP-01702":{"line":4957,"offset":881577,"length":172,"previous":"M21-GAP-01701","next":"M21-GAP-01703"},"M21-GAP-01703":{"line":4958,"offset":881749,"length":172,"previous":"M21-GAP-01702","next":"M21-GAP-01704"},"M21-GAP-01704":{"line":4959,"offset":881921,"length":172,"previous":"M21-GAP-01703","next":"M21-GAP-01705"},"M21-GAP-01705":{"line":4960,"offset":882093,"length":172,"previous":"M21-GAP-01704","next":"M21-GAP-01706"},"M21-GAP-01706":{"line":4961,"offset":882265,"length":172,"previous":"M21-GAP-01705","next":"M21-GAP-01707"},"M21-GAP-01707":{"line":4962,"offset":882437,"length":171,"previous":"M21-GAP-01706","next":"M21-GAP-01708"},"M21-GAP-01708":{"line":4963,"offset":882608,"length":172,"previous":"M21-GAP-01707","next":"M21-GAP-01709"},"M21-GAP-01709":{"line":4964,"offset":882780,"length":172,"previous":"M21-GAP-01708","next":"M21-GAP-01710"},"M21-GAP-01710":{"line":4965,"offset":882952,"length":172,"previous":"M21-GAP-01709","next":"M21-GAP-01711"},"M21-GAP-01711":{"line":4966,"offset":883124,"length":175,"previous":"M21-GAP-01710","next":"M21-GAP-01712"},"M21-GAP-01712":{"line":4967,"offset":883299,"length":175,"previous":"M21-GAP-01711","next":"M21-GAP-01713"},"M21-GAP-01713":{"line":4968,"offset":883474,"length":176,"previous":"M21-GAP-01712","next":"M21-GAP-01714"},"M21-GAP-01714":{"line":4969,"offset":883650,"length":176,"previous":"M21-GAP-01713","next":"M21-GAP-01715"},"M21-GAP-01715":{"line":4970,"offset":883826,"length":176,"previous":"M21-GAP-01714","next":"M21-GAP-01716"},"M21-GAP-01716":{"line":4971,"offset":884002,"length":176,"previous":"M21-GAP-01715","next":"M21-GAP-01717"},"M21-GAP-01717":{"line":4972,"offset":884178,"length":176,"previous":"M21-GAP-01716","next":"M21-GAP-01718"},"M21-GAP-01718":{"line":4973,"offset":884354,"length":176,"previous":"M21-GAP-01717","next":"M21-GAP-01719"},"M21-GAP-01719":{"line":4974,"offset":884530,"length":176,"previous":"M21-GAP-01718","next":"M21-GAP-01720"},"M21-GAP-01720":{"line":4975,"offset":884706,"length":176,"previous":"M21-GAP-01719","next":"M21-GAP-01721"},"M21-GAP-01721":{"line":4976,"offset":884882,"length":176,"previous":"M21-GAP-01720","next":"M21-GAP-01722"},"M21-GAP-01722":{"line":4977,"offset":885058,"length":176,"previous":"M21-GAP-01721","next":"M21-GAP-01723"},"M21-GAP-01723":{"line":4978,"offset":885234,"length":175,"previous":"M21-GAP-01722","next":"M21-GAP-01724"},"M21-GAP-01724":{"line":4979,"offset":885409,"length":176,"previous":"M21-GAP-01723","next":"M21-GAP-01725"},"M21-GAP-01725":{"line":4980,"offset":885585,"length":176,"previous":"M21-GAP-01724","next":"M21-GAP-01726"},"M21-GAP-01726":{"line":4981,"offset":885761,"length":175,"previous":"M21-GAP-01725","next":"M21-GAP-01727"},"M21-GAP-01727":{"line":4982,"offset":885936,"length":175,"previous":"M21-GAP-01726","next":"M21-GAP-01728"},"M21-GAP-01728":{"line":4983,"offset":886111,"length":175,"previous":"M21-GAP-01727","next":"M21-GAP-01729"},"M21-GAP-01729":{"line":4984,"offset":886286,"length":175,"previous":"M21-GAP-01728","next":"M21-GAP-01730"},"M21-GAP-01730":{"line":4985,"offset":886461,"length":175,"previous":"M21-GAP-01729","next":"M21-GAP-01731"},"M21-GAP-01731":{"line":4986,"offset":886636,"length":175,"previous":"M21-GAP-01730","next":"M21-GAP-01732"},"M21-GAP-01732":{"line":4987,"offset":886811,"length":175,"previous":"M21-GAP-01731","next":"M21-GAP-01733"},"M21-GAP-01733":{"line":4988,"offset":886986,"length":182,"previous":"M21-GAP-01732","next":"M21-GAP-01734"},"M21-GAP-01734":{"line":4989,"offset":887168,"length":182,"previous":"M21-GAP-01733","next":"M21-GAP-01735"},"M21-GAP-01735":{"line":4990,"offset":887350,"length":183,"previous":"M21-GAP-01734","next":"M21-GAP-01736"},"M21-GAP-01736":{"line":4991,"offset":887533,"length":183,"previous":"M21-GAP-01735","next":"M21-GAP-01737"},"M21-GAP-01737":{"line":4992,"offset":887716,"length":183,"previous":"M21-GAP-01736","next":"M21-GAP-01738"},"M21-GAP-01738":{"line":4993,"offset":887899,"length":183,"previous":"M21-GAP-01737","next":"M21-GAP-01739"},"M21-GAP-01739":{"line":4994,"offset":888082,"length":183,"previous":"M21-GAP-01738","next":"M21-GAP-01740"},"M21-GAP-01740":{"line":4995,"offset":888265,"length":183,"previous":"M21-GAP-01739","next":"M21-GAP-01741"},"M21-GAP-01741":{"line":4996,"offset":888448,"length":183,"previous":"M21-GAP-01740","next":"M21-GAP-01742"},"M21-GAP-01742":{"line":4997,"offset":888631,"length":183,"previous":"M21-GAP-01741","next":"M21-GAP-01743"},"M21-GAP-01743":{"line":4998,"offset":888814,"length":183,"previous":"M21-GAP-01742","next":"M21-GAP-01744"},"M21-GAP-01744":{"line":4999,"offset":888997,"length":183,"previous":"M21-GAP-01743","next":"M21-GAP-01745"},"M21-GAP-01745":{"line":5000,"offset":889180,"length":182,"previous":"M21-GAP-01744","next":"M21-GAP-01746"},"M21-GAP-01746":{"line":5001,"offset":889362,"length":183,"previous":"M21-GAP-01745","next":"M21-GAP-01747"},"M21-GAP-01747":{"line":5002,"offset":889545,"length":183,"previous":"M21-GAP-01746","next":"M21-GAP-01748"},"M21-GAP-01748":{"line":5003,"offset":889728,"length":183,"previous":"M21-GAP-01747","next":"M21-GAP-01749"},"M21-GAP-01749":{"line":5004,"offset":889911,"length":183,"previous":"M21-GAP-01748","next":"M21-GAP-01750"},"M21-GAP-01750":{"line":5005,"offset":890094,"length":183,"previous":"M21-GAP-01749","next":"M21-GAP-01751"},"M21-GAP-01751":{"line":5006,"offset":890277,"length":183,"previous":"M21-GAP-01750","next":"M21-GAP-01752"},"M21-GAP-01752":{"line":5007,"offset":890460,"length":183,"previous":"M21-GAP-01751","next":"M21-GAP-01753"},"M21-GAP-01753":{"line":5008,"offset":890643,"length":183,"previous":"M21-GAP-01752","next":"M21-GAP-01754"},"M21-GAP-01754":{"line":5009,"offset":890826,"length":183,"previous":"M21-GAP-01753","next":"M21-GAP-01755"},"M21-GAP-01755":{"line":5010,"offset":891009,"length":183,"previous":"M21-GAP-01754","next":"M21-GAP-01756"},"M21-GAP-01756":{"line":5011,"offset":891192,"length":182,"previous":"M21-GAP-01755","next":"M21-GAP-01757"},"M21-GAP-01757":{"line":5012,"offset":891374,"length":183,"previous":"M21-GAP-01756","next":"M21-GAP-01758"},"M21-GAP-01758":{"line":5013,"offset":891557,"length":183,"previous":"M21-GAP-01757","next":"M21-GAP-01759"},"M21-GAP-01759":{"line":5014,"offset":891740,"length":183,"previous":"M21-GAP-01758","next":"M21-GAP-01760"},"M21-GAP-01760":{"line":5015,"offset":891923,"length":183,"previous":"M21-GAP-01759","next":"M21-GAP-01761"},"M21-GAP-01761":{"line":5016,"offset":892106,"length":183,"previous":"M21-GAP-01760","next":"M21-GAP-01762"},"M21-GAP-01762":{"line":5017,"offset":892289,"length":183,"previous":"M21-GAP-01761","next":"M21-GAP-01763"},"M21-GAP-01763":{"line":5018,"offset":892472,"length":183,"previous":"M21-GAP-01762","next":"M21-GAP-01764"},"M21-GAP-01764":{"line":5019,"offset":892655,"length":183,"previous":"M21-GAP-01763","next":"M21-GAP-01765"},"M21-GAP-01765":{"line":5020,"offset":892838,"length":183,"previous":"M21-GAP-01764","next":"M21-GAP-01766"},"M21-GAP-01766":{"line":5021,"offset":893021,"length":183,"previous":"M21-GAP-01765","next":"M21-GAP-01767"},"M21-GAP-01767":{"line":5022,"offset":893204,"length":182,"previous":"M21-GAP-01766","next":"M21-GAP-01768"},"M21-GAP-01768":{"line":5023,"offset":893386,"length":183,"previous":"M21-GAP-01767","next":"M21-GAP-01769"},"M21-GAP-01769":{"line":5024,"offset":893569,"length":183,"previous":"M21-GAP-01768","next":"M21-GAP-01770"},"M21-GAP-01770":{"line":5025,"offset":893752,"length":183,"previous":"M21-GAP-01769","next":"M21-GAP-01771"},"M21-GAP-01771":{"line":5026,"offset":893935,"length":183,"previous":"M21-GAP-01770","next":"M21-GAP-01772"},"M21-GAP-01772":{"line":5027,"offset":894118,"length":183,"previous":"M21-GAP-01771","next":"M21-GAP-01773"},"M21-GAP-01773":{"line":5028,"offset":894301,"length":183,"previous":"M21-GAP-01772","next":"M21-GAP-01774"},"M21-GAP-01774":{"line":5029,"offset":894484,"length":183,"previous":"M21-GAP-01773","next":"M21-GAP-01775"},"M21-GAP-01775":{"line":5030,"offset":894667,"length":183,"previous":"M21-GAP-01774","next":"M21-GAP-01776"},"M21-GAP-01776":{"line":5031,"offset":894850,"length":183,"previous":"M21-GAP-01775","next":"M21-GAP-01777"},"M21-GAP-01777":{"line":5032,"offset":895033,"length":182,"previous":"M21-GAP-01776","next":"M21-GAP-01778"},"M21-GAP-01778":{"line":5033,"offset":895215,"length":182,"previous":"M21-GAP-01777","next":"M21-GAP-01779"},"M21-GAP-01779":{"line":5034,"offset":895397,"length":182,"previous":"M21-GAP-01778","next":"M21-GAP-01780"},"M21-GAP-01780":{"line":5035,"offset":895579,"length":182,"previous":"M21-GAP-01779","next":"M21-GAP-01781"},"M21-GAP-01781":{"line":5036,"offset":895761,"length":182,"previous":"M21-GAP-01780","next":"M21-GAP-01782"},"M21-GAP-01782":{"line":5037,"offset":895943,"length":183,"previous":"M21-GAP-01781","next":"M21-GAP-01783"},"M21-GAP-01783":{"line":5038,"offset":896126,"length":183,"previous":"M21-GAP-01782","next":"M21-GAP-01784"},"M21-GAP-01784":{"line":5039,"offset":896309,"length":183,"previous":"M21-GAP-01783","next":"M21-GAP-01785"},"M21-GAP-01785":{"line":5040,"offset":896492,"length":183,"previous":"M21-GAP-01784","next":"M21-GAP-01786"},"M21-GAP-01786":{"line":5041,"offset":896675,"length":183,"previous":"M21-GAP-01785","next":"M21-GAP-01787"},"M21-GAP-01787":{"line":5042,"offset":896858,"length":183,"previous":"M21-GAP-01786","next":"M21-GAP-01788"},"M21-GAP-01788":{"line":5043,"offset":897041,"length":182,"previous":"M21-GAP-01787","next":"M21-GAP-01789"},"M21-GAP-01789":{"line":5044,"offset":897223,"length":182,"previous":"M21-GAP-01788","next":"M21-GAP-01790"},"M21-GAP-01790":{"line":5045,"offset":897405,"length":182,"previous":"M21-GAP-01789","next":"M21-GAP-01791"},"M21-GAP-01791":{"line":5046,"offset":897587,"length":182,"previous":"M21-GAP-01790","next":"M21-GAP-01792"},"M21-GAP-01792":{"line":5047,"offset":897769,"length":182,"previous":"M21-GAP-01791","next":"M21-GAP-01793"},"M21-GAP-01793":{"line":5048,"offset":897951,"length":182,"previous":"M21-GAP-01792","next":"M21-GAP-01794"},"M21-GAP-01794":{"line":5049,"offset":898133,"length":182,"previous":"M21-GAP-01793","next":"M21-GAP-01795"},"M21-GAP-01795":{"line":5050,"offset":898315,"length":182,"previous":"M21-GAP-01794","next":"M21-GAP-01796"},"M21-GAP-01796":{"line":5051,"offset":898497,"length":184,"previous":"M21-GAP-01795","next":"M21-GAP-01797"},"M21-GAP-01797":{"line":5052,"offset":898681,"length":184,"previous":"M21-GAP-01796","next":"M21-GAP-01798"},"M21-GAP-01798":{"line":5053,"offset":898865,"length":185,"previous":"M21-GAP-01797","next":"M21-GAP-01799"},"M21-GAP-01799":{"line":5054,"offset":899050,"length":186,"previous":"M21-GAP-01798","next":"M21-GAP-01800"},"M21-GAP-01800":{"line":5055,"offset":899236,"length":186,"previous":"M21-GAP-01799","next":"M21-GAP-01801"},"M21-GAP-01801":{"line":5056,"offset":899422,"length":186,"previous":"M21-GAP-01800","next":"M21-GAP-01802"},"M21-GAP-01802":{"line":5057,"offset":899608,"length":186,"previous":"M21-GAP-01801","next":"M21-GAP-01803"},"M21-GAP-01803":{"line":5058,"offset":899794,"length":185,"previous":"M21-GAP-01802","next":"M21-GAP-01804"},"M21-GAP-01804":{"line":5059,"offset":899979,"length":185,"previous":"M21-GAP-01803","next":"M21-GAP-01805"},"M21-GAP-01805":{"line":5060,"offset":900164,"length":185,"previous":"M21-GAP-01804","next":"M21-GAP-01806"},"M21-GAP-01806":{"line":5061,"offset":900349,"length":185,"previous":"M21-GAP-01805","next":"M21-GAP-01807"},"M21-GAP-01807":{"line":5062,"offset":900534,"length":185,"previous":"M21-GAP-01806","next":"M21-GAP-01808"},"M21-GAP-01808":{"line":5063,"offset":900719,"length":185,"previous":"M21-GAP-01807","next":"M21-GAP-01809"},"M21-GAP-01809":{"line":5064,"offset":900904,"length":185,"previous":"M21-GAP-01808","next":"M21-GAP-01810"},"M21-GAP-01810":{"line":5065,"offset":901089,"length":185,"previous":"M21-GAP-01809","next":"M21-GAP-01811"},"M21-GAP-01811":{"line":5066,"offset":901274,"length":185,"previous":"M21-GAP-01810","next":"M21-GAP-01812"},"M21-GAP-01812":{"line":5067,"offset":901459,"length":184,"previous":"M21-GAP-01811","next":"M21-GAP-01813"},"M21-GAP-01813":{"line":5068,"offset":901643,"length":185,"previous":"M21-GAP-01812","next":"M21-GAP-01814"},"M21-GAP-01814":{"line":5069,"offset":901828,"length":185,"previous":"M21-GAP-01813","next":"M21-GAP-01815"},"M21-GAP-01815":{"line":5070,"offset":902013,"length":185,"previous":"M21-GAP-01814","next":"M21-GAP-01816"},"M21-GAP-01816":{"line":5071,"offset":902198,"length":185,"previous":"M21-GAP-01815","next":"M21-GAP-01817"},"M21-GAP-01817":{"line":5072,"offset":902383,"length":185,"previous":"M21-GAP-01816","next":"M21-GAP-01818"},"M21-GAP-01818":{"line":5073,"offset":902568,"length":185,"previous":"M21-GAP-01817","next":"M21-GAP-01819"},"M21-GAP-01819":{"line":5074,"offset":902753,"length":185,"previous":"M21-GAP-01818","next":"M21-GAP-01820"},"M21-GAP-01820":{"line":5075,"offset":902938,"length":185,"previous":"M21-GAP-01819","next":"M21-GAP-01821"},"M21-GAP-01821":{"line":5076,"offset":903123,"length":185,"previous":"M21-GAP-01820","next":"M21-GAP-01822"},"M21-GAP-01822":{"line":5077,"offset":903308,"length":185,"previous":"M21-GAP-01821","next":"M21-GAP-01823"},"M21-GAP-01823":{"line":5078,"offset":903493,"length":184,"previous":"M21-GAP-01822","next":"M21-GAP-01824"},"M21-GAP-01824":{"line":5079,"offset":903677,"length":185,"previous":"M21-GAP-01823","next":"M21-GAP-01825"},"M21-GAP-01825":{"line":5080,"offset":903862,"length":185,"previous":"M21-GAP-01824","next":"M21-GAP-01826"},"M21-GAP-01826":{"line":5081,"offset":904047,"length":185,"previous":"M21-GAP-01825","next":"M21-GAP-01827"},"M21-GAP-01827":{"line":5082,"offset":904232,"length":185,"previous":"M21-GAP-01826","next":"M21-GAP-01828"},"M21-GAP-01828":{"line":5083,"offset":904417,"length":185,"previous":"M21-GAP-01827","next":"M21-GAP-01829"},"M21-GAP-01829":{"line":5084,"offset":904602,"length":185,"previous":"M21-GAP-01828","next":"M21-GAP-01830"},"M21-GAP-01830":{"line":5085,"offset":904787,"length":185,"previous":"M21-GAP-01829","next":"M21-GAP-01831"},"M21-GAP-01831":{"line":5086,"offset":904972,"length":185,"previous":"M21-GAP-01830","next":"M21-GAP-01832"},"M21-GAP-01832":{"line":5087,"offset":905157,"length":185,"previous":"M21-GAP-01831","next":"M21-GAP-01833"},"M21-GAP-01833":{"line":5088,"offset":905342,"length":185,"previous":"M21-GAP-01832","next":"M21-GAP-01834"},"M21-GAP-01834":{"line":5089,"offset":905527,"length":184,"previous":"M21-GAP-01833","next":"M21-GAP-01835"},"M21-GAP-01835":{"line":5090,"offset":905711,"length":185,"previous":"M21-GAP-01834","next":"M21-GAP-01836"},"M21-GAP-01836":{"line":5091,"offset":905896,"length":185,"previous":"M21-GAP-01835","next":"M21-GAP-01837"},"M21-GAP-01837":{"line":5092,"offset":906081,"length":185,"previous":"M21-GAP-01836","next":"M21-GAP-01838"},"M21-GAP-01838":{"line":5093,"offset":906266,"length":185,"previous":"M21-GAP-01837","next":"M21-GAP-01839"},"M21-GAP-01839":{"line":5094,"offset":906451,"length":185,"previous":"M21-GAP-01838","next":"M21-GAP-01840"},"M21-GAP-01840":{"line":5095,"offset":906636,"length":185,"previous":"M21-GAP-01839","next":"M21-GAP-01841"},"M21-GAP-01841":{"line":5096,"offset":906821,"length":185,"previous":"M21-GAP-01840","next":"M21-GAP-01842"},"M21-GAP-01842":{"line":5097,"offset":907006,"length":185,"previous":"M21-GAP-01841","next":"M21-GAP-01843"},"M21-GAP-01843":{"line":5098,"offset":907191,"length":185,"previous":"M21-GAP-01842","next":"M21-GAP-01844"},"M21-GAP-01844":{"line":5099,"offset":907376,"length":185,"previous":"M21-GAP-01843","next":"M21-GAP-01845"},"M21-GAP-01845":{"line":5100,"offset":907561,"length":184,"previous":"M21-GAP-01844","next":"M21-GAP-01846"},"M21-GAP-01846":{"line":5101,"offset":907745,"length":185,"previous":"M21-GAP-01845","next":"M21-GAP-01847"},"M21-GAP-01847":{"line":5102,"offset":907930,"length":185,"previous":"M21-GAP-01846","next":"M21-GAP-01848"},"M21-GAP-01848":{"line":5103,"offset":908115,"length":185,"previous":"M21-GAP-01847","next":"M21-GAP-01849"},"M21-GAP-01849":{"line":5104,"offset":908300,"length":185,"previous":"M21-GAP-01848","next":"M21-GAP-01850"},"M21-GAP-01850":{"line":5105,"offset":908485,"length":185,"previous":"M21-GAP-01849","next":"M21-GAP-01851"},"M21-GAP-01851":{"line":5106,"offset":908670,"length":185,"previous":"M21-GAP-01850","next":"M21-GAP-01852"},"M21-GAP-01852":{"line":5107,"offset":908855,"length":185,"previous":"M21-GAP-01851","next":"M21-GAP-01853"},"M21-GAP-01853":{"line":5108,"offset":909040,"length":185,"previous":"M21-GAP-01852","next":"M21-GAP-01854"},"M21-GAP-01854":{"line":5109,"offset":909225,"length":185,"previous":"M21-GAP-01853","next":"M21-GAP-01855"},"M21-GAP-01855":{"line":5110,"offset":909410,"length":185,"previous":"M21-GAP-01854","next":"M21-GAP-01856"},"M21-GAP-01856":{"line":5111,"offset":909595,"length":184,"previous":"M21-GAP-01855","next":"M21-GAP-01857"},"M21-GAP-01857":{"line":5112,"offset":909779,"length":185,"previous":"M21-GAP-01856","next":"M21-GAP-01858"},"M21-GAP-01858":{"line":5113,"offset":909964,"length":185,"previous":"M21-GAP-01857","next":"M21-GAP-01859"},"M21-GAP-01859":{"line":5114,"offset":910149,"length":185,"previous":"M21-GAP-01858","next":"M21-GAP-01860"},"M21-GAP-01860":{"line":5115,"offset":910334,"length":185,"previous":"M21-GAP-01859","next":"M21-GAP-01861"},"M21-GAP-01861":{"line":5116,"offset":910519,"length":185,"previous":"M21-GAP-01860","next":"M21-GAP-01862"},"M21-GAP-01862":{"line":5117,"offset":910704,"length":185,"previous":"M21-GAP-01861","next":"M21-GAP-01863"},"M21-GAP-01863":{"line":5118,"offset":910889,"length":185,"previous":"M21-GAP-01862","next":"M21-GAP-01864"},"M21-GAP-01864":{"line":5119,"offset":911074,"length":185,"previous":"M21-GAP-01863","next":"M21-GAP-01865"},"M21-GAP-01865":{"line":5120,"offset":911259,"length":185,"previous":"M21-GAP-01864","next":"M21-GAP-01866"},"M21-GAP-01866":{"line":5121,"offset":911444,"length":185,"previous":"M21-GAP-01865","next":"M21-GAP-01867"},"M21-GAP-01867":{"line":5122,"offset":911629,"length":184,"previous":"M21-GAP-01866","next":"M21-GAP-01868"},"M21-GAP-01868":{"line":5123,"offset":911813,"length":185,"previous":"M21-GAP-01867","next":"M21-GAP-01869"},"M21-GAP-01869":{"line":5124,"offset":911998,"length":185,"previous":"M21-GAP-01868","next":"M21-GAP-01870"},"M21-GAP-01870":{"line":5125,"offset":912183,"length":185,"previous":"M21-GAP-01869","next":"M21-GAP-01871"},"M21-GAP-01871":{"line":5126,"offset":912368,"length":185,"previous":"M21-GAP-01870","next":"M21-GAP-01872"},"M21-GAP-01872":{"line":5127,"offset":912553,"length":185,"previous":"M21-GAP-01871","next":"M21-GAP-01873"},"M21-GAP-01873":{"line":5128,"offset":912738,"length":185,"previous":"M21-GAP-01872","next":"M21-GAP-01874"},"M21-GAP-01874":{"line":5129,"offset":912923,"length":185,"previous":"M21-GAP-01873","next":"M21-GAP-01875"},"M21-GAP-01875":{"line":5130,"offset":913108,"length":185,"previous":"M21-GAP-01874","next":"M21-GAP-01876"},"M21-GAP-01876":{"line":5131,"offset":913293,"length":185,"previous":"M21-GAP-01875","next":"M21-GAP-01877"},"M21-GAP-01877":{"line":5132,"offset":913478,"length":185,"previous":"M21-GAP-01876","next":"M21-GAP-01878"},"M21-GAP-01878":{"line":5133,"offset":913663,"length":184,"previous":"M21-GAP-01877","next":"M21-GAP-01879"},"M21-GAP-01879":{"line":5134,"offset":913847,"length":185,"previous":"M21-GAP-01878","next":"M21-GAP-01880"},"M21-GAP-01880":{"line":5135,"offset":914032,"length":185,"previous":"M21-GAP-01879","next":"M21-GAP-01881"},"M21-GAP-01881":{"line":5136,"offset":914217,"length":185,"previous":"M21-GAP-01880","next":"M21-GAP-01882"},"M21-GAP-01882":{"line":5137,"offset":914402,"length":185,"previous":"M21-GAP-01881","next":"M21-GAP-01883"},"M21-GAP-01883":{"line":5138,"offset":914587,"length":185,"previous":"M21-GAP-01882","next":"M21-GAP-01884"},"M21-GAP-01884":{"line":5139,"offset":914772,"length":185,"previous":"M21-GAP-01883","next":"M21-GAP-01885"},"M21-GAP-01885":{"line":5140,"offset":914957,"length":185,"previous":"M21-GAP-01884","next":"M21-GAP-01886"},"M21-GAP-01886":{"line":5141,"offset":915142,"length":185,"previous":"M21-GAP-01885","next":"M21-GAP-01887"},"M21-GAP-01887":{"line":5142,"offset":915327,"length":185,"previous":"M21-GAP-01886","next":"M21-GAP-01888"},"M21-GAP-01888":{"line":5143,"offset":915512,"length":185,"previous":"M21-GAP-01887","next":"M21-GAP-01889"},"M21-GAP-01889":{"line":5144,"offset":915697,"length":184,"previous":"M21-GAP-01888","next":"M21-GAP-01890"},"M21-GAP-01890":{"line":5145,"offset":915881,"length":185,"previous":"M21-GAP-01889","next":"M21-GAP-01891"},"M21-GAP-01891":{"line":5146,"offset":916066,"length":185,"previous":"M21-GAP-01890","next":"M21-GAP-01892"},"M21-GAP-01892":{"line":5147,"offset":916251,"length":185,"previous":"M21-GAP-01891","next":"M21-GAP-01893"},"M21-GAP-01893":{"line":5148,"offset":916436,"length":185,"previous":"M21-GAP-01892","next":"M21-GAP-01894"},"M21-GAP-01894":{"line":5149,"offset":916621,"length":185,"previous":"M21-GAP-01893","next":"M21-GAP-01895"},"M21-GAP-01895":{"line":5150,"offset":916806,"length":185,"previous":"M21-GAP-01894","next":"M21-GAP-01896"},"M21-GAP-01896":{"line":5151,"offset":916991,"length":185,"previous":"M21-GAP-01895","next":"M21-GAP-01897"},"M21-GAP-01897":{"line":5152,"offset":917176,"length":185,"previous":"M21-GAP-01896","next":"M21-GAP-01898"},"M21-GAP-01898":{"line":5153,"offset":917361,"length":185,"previous":"M21-GAP-01897","next":"M21-GAP-01899"},"M21-GAP-01899":{"line":5154,"offset":917546,"length":185,"previous":"M21-GAP-01898","next":"M21-GAP-01900"},"M21-GAP-01900":{"line":5155,"offset":917731,"length":185,"previous":"M21-GAP-01899","next":"M21-GAP-01901"},"M21-GAP-01901":{"line":5156,"offset":917916,"length":185,"previous":"M21-GAP-01900","next":"M21-GAP-01902"},"M21-GAP-01902":{"line":5157,"offset":918101,"length":186,"previous":"M21-GAP-01901","next":"M21-GAP-01903"},"M21-GAP-01903":{"line":5158,"offset":918287,"length":186,"previous":"M21-GAP-01902","next":"M21-GAP-01904"},"M21-GAP-01904":{"line":5159,"offset":918473,"length":186,"previous":"M21-GAP-01903","next":"M21-GAP-01905"},"M21-GAP-01905":{"line":5160,"offset":918659,"length":186,"previous":"M21-GAP-01904","next":"M21-GAP-01906"},"M21-GAP-01906":{"line":5161,"offset":918845,"length":186,"previous":"M21-GAP-01905","next":"M21-GAP-01907"},"M21-GAP-01907":{"line":5162,"offset":919031,"length":186,"previous":"M21-GAP-01906","next":"M21-GAP-01908"},"M21-GAP-01908":{"line":5163,"offset":919217,"length":188,"previous":"M21-GAP-01907","next":"M21-GAP-01909"},"M21-GAP-01909":{"line":5164,"offset":919405,"length":188,"previous":"M21-GAP-01908","next":"M21-GAP-01910"},"M21-GAP-01910":{"line":5165,"offset":919593,"length":188,"previous":"M21-GAP-01909","next":"M21-GAP-01911"},"M21-GAP-01911":{"line":5166,"offset":919781,"length":188,"previous":"M21-GAP-01910","next":"M21-GAP-01912"},"M21-GAP-01912":{"line":5167,"offset":919969,"length":188,"previous":"M21-GAP-01911","next":"M21-GAP-01913"},"M21-GAP-01913":{"line":5168,"offset":920157,"length":188,"previous":"M21-GAP-01912","next":"M21-GAP-01914"},"M21-GAP-01914":{"line":5169,"offset":920345,"length":188,"previous":"M21-GAP-01913","next":"M21-GAP-01915"},"M21-GAP-01915":{"line":5170,"offset":920533,"length":195,"previous":"M21-GAP-01914","next":"M21-GAP-01916"},"M21-GAP-01916":{"line":5171,"offset":920728,"length":193,"previous":"M21-GAP-01915","next":"M21-GAP-01917"},"M21-GAP-01917":{"line":5172,"offset":920921,"length":194,"previous":"M21-GAP-01916","next":"M21-GAP-01918"},"M21-GAP-01918":{"line":5173,"offset":921115,"length":205,"previous":"M21-GAP-01917","next":"M21-GAP-01919"},"M21-GAP-01919":{"line":5174,"offset":921320,"length":205,"previous":"M21-GAP-01918","next":"M21-GAP-01920"},"M21-GAP-01920":{"line":5175,"offset":921525,"length":206,"previous":"M21-GAP-01919","next":"M21-GAP-01921"},"M21-GAP-01921":{"line":5176,"offset":921731,"length":206,"previous":"M21-GAP-01920","next":"M21-GAP-01922"},"M21-GAP-01922":{"line":5177,"offset":921937,"length":205,"previous":"M21-GAP-01921","next":"M21-GAP-01923"},"M21-GAP-01923":{"line":5178,"offset":922142,"length":205,"previous":"M21-GAP-01922","next":"M21-GAP-01924"},"M21-GAP-01924":{"line":5179,"offset":922347,"length":205,"previous":"M21-GAP-01923","next":"M21-GAP-01925"},"M21-GAP-01925":{"line":5180,"offset":922552,"length":205,"previous":"M21-GAP-01924","next":"M21-GAP-01926"},"M21-GAP-01926":{"line":5181,"offset":922757,"length":205,"previous":"M21-GAP-01925","next":"M21-GAP-01927"},"M21-GAP-01927":{"line":5182,"offset":922962,"length":205,"previous":"M21-GAP-01926","next":"M21-GAP-01928"},"M21-GAP-01928":{"line":5183,"offset":923167,"length":205,"previous":"M21-GAP-01927","next":"M21-GAP-01929"},"M21-GAP-01929":{"line":5184,"offset":923372,"length":205,"previous":"M21-GAP-01928","next":"M21-GAP-01930"},"M21-GAP-01930":{"line":5185,"offset":923577,"length":194,"previous":"M21-GAP-01929","next":"M21-GAP-01931"},"M21-GAP-01931":{"line":5186,"offset":923771,"length":194,"previous":"M21-GAP-01930","next":"M21-GAP-01932"},"M21-GAP-01932":{"line":5187,"offset":923965,"length":195,"previous":"M21-GAP-01931","next":"M21-GAP-01933"},"M21-GAP-01933":{"line":5188,"offset":924160,"length":195,"previous":"M21-GAP-01932","next":"M21-GAP-01934"},"M21-GAP-01934":{"line":5189,"offset":924355,"length":194,"previous":"M21-GAP-01933","next":"M21-GAP-01935"},"M21-GAP-01935":{"line":5190,"offset":924549,"length":194,"previous":"M21-GAP-01934","next":"M21-GAP-01936"},"M21-GAP-01936":{"line":5191,"offset":924743,"length":194,"previous":"M21-GAP-01935","next":"M21-GAP-01937"},"M21-GAP-01937":{"line":5192,"offset":924937,"length":194,"previous":"M21-GAP-01936","next":"M21-GAP-01938"},"M21-GAP-01938":{"line":5193,"offset":925131,"length":194,"previous":"M21-GAP-01937","next":"M21-GAP-01939"},"M21-GAP-01939":{"line":5194,"offset":925325,"length":194,"previous":"M21-GAP-01938","next":"M21-GAP-01940"},"M21-GAP-01940":{"line":5195,"offset":925519,"length":194,"previous":"M21-GAP-01939","next":"M21-GAP-01941"},"M21-GAP-01941":{"line":5196,"offset":925713,"length":194,"previous":"M21-GAP-01940","next":"M21-GAP-01942"},"M21-GAP-01942":{"line":5197,"offset":925907,"length":208,"previous":"M21-GAP-01941","next":"M21-GAP-01943"},"M21-GAP-01943":{"line":5198,"offset":926115,"length":208,"previous":"M21-GAP-01942","next":"M21-GAP-01944"},"M21-GAP-01944":{"line":5199,"offset":926323,"length":208,"previous":"M21-GAP-01943","next":"M21-GAP-01945"},"M21-GAP-01945":{"line":5200,"offset":926531,"length":197,"previous":"M21-GAP-01944","next":"M21-GAP-01946"},"M21-GAP-01946":{"line":5201,"offset":926728,"length":197,"previous":"M21-GAP-01945","next":"M21-GAP-01947"},"M21-GAP-01947":{"line":5202,"offset":926925,"length":197,"previous":"M21-GAP-01946","next":"M21-GAP-01948"},"M21-GAP-01948":{"line":5203,"offset":927122,"length":207,"previous":"M21-GAP-01947","next":"M21-GAP-01949"},"M21-GAP-01949":{"line":5204,"offset":927329,"length":207,"previous":"M21-GAP-01948","next":"M21-GAP-01950"},"M21-GAP-01950":{"line":5205,"offset":927536,"length":207,"previous":"M21-GAP-01949","next":"M21-GAP-01951"},"M21-GAP-01951":{"line":5206,"offset":927743,"length":196,"previous":"M21-GAP-01950","next":"M21-GAP-01952"},"M21-GAP-01952":{"line":5207,"offset":927939,"length":196,"previous":"M21-GAP-01951","next":"M21-GAP-01953"},"M21-GAP-01953":{"line":5208,"offset":928135,"length":196,"previous":"M21-GAP-01952","next":"M21-GAP-01954"},"M21-GAP-01954":{"line":5209,"offset":928331,"length":200,"previous":"M21-GAP-01953","next":"M21-GAP-01955"},"M21-GAP-01955":{"line":5210,"offset":928531,"length":200,"previous":"M21-GAP-01954","next":"M21-GAP-01956"},"M21-GAP-01956":{"line":5211,"offset":928731,"length":200,"previous":"M21-GAP-01955","next":"M21-GAP-01957"},"M21-GAP-01957":{"line":5212,"offset":928931,"length":200,"previous":"M21-GAP-01956","next":"M21-GAP-01958"},"M21-GAP-01958":{"line":5213,"offset":929131,"length":200,"previous":"M21-GAP-01957","next":"M21-GAP-01959"},"M21-GAP-01959":{"line":5214,"offset":929331,"length":200,"previous":"M21-GAP-01958","next":"M21-GAP-01960"},"M21-GAP-01960":{"line":5215,"offset":929531,"length":200,"previous":"M21-GAP-01959","next":"M21-GAP-01961"},"M21-GAP-01961":{"line":5216,"offset":929731,"length":200,"previous":"M21-GAP-01960","next":"M21-GAP-01962"},"M21-GAP-01962":{"line":5217,"offset":929931,"length":200,"previous":"M21-GAP-01961","next":"M21-GAP-01963"},"M21-GAP-01963":{"line":5218,"offset":930131,"length":189,"previous":"M21-GAP-01962","next":"M21-GAP-01964"},"M21-GAP-01964":{"line":5219,"offset":930320,"length":189,"previous":"M21-GAP-01963","next":"M21-GAP-01965"},"M21-GAP-01965":{"line":5220,"offset":930509,"length":189,"previous":"M21-GAP-01964","next":"M21-GAP-01966"},"M21-GAP-01966":{"line":5221,"offset":930698,"length":189,"previous":"M21-GAP-01965","next":"M21-GAP-01967"},"M21-GAP-01967":{"line":5222,"offset":930887,"length":189,"previous":"M21-GAP-01966","next":"M21-GAP-01968"},"M21-GAP-01968":{"line":5223,"offset":931076,"length":189,"previous":"M21-GAP-01967","next":"M21-GAP-01969"},"M21-GAP-01969":{"line":5224,"offset":931265,"length":189,"previous":"M21-GAP-01968","next":"M21-GAP-01970"},"M21-GAP-01970":{"line":5225,"offset":931454,"length":189,"previous":"M21-GAP-01969","next":"M21-GAP-01971"},"M21-GAP-01971":{"line":5226,"offset":931643,"length":189,"previous":"M21-GAP-01970","next":"M21-GAP-01972"},"M21-GAP-01972":{"line":5227,"offset":931832,"length":178,"previous":"M21-GAP-01971","next":"M21-GAP-01973"},"M21-GAP-01973":{"line":5228,"offset":932010,"length":178,"previous":"M21-GAP-01972","next":"M21-GAP-01974"},"M21-GAP-01974":{"line":5229,"offset":932188,"length":179,"previous":"M21-GAP-01973","next":"M21-GAP-01975"},"M21-GAP-01975":{"line":5230,"offset":932367,"length":179,"previous":"M21-GAP-01974","next":"M21-GAP-01976"},"M21-GAP-01976":{"line":5231,"offset":932546,"length":179,"previous":"M21-GAP-01975","next":"M21-GAP-01977"},"M21-GAP-01977":{"line":5232,"offset":932725,"length":179,"previous":"M21-GAP-01976","next":"M21-GAP-01978"},"M21-GAP-01978":{"line":5233,"offset":932904,"length":179,"previous":"M21-GAP-01977","next":"M21-GAP-01979"},"M21-GAP-01979":{"line":5234,"offset":933083,"length":179,"previous":"M21-GAP-01978","next":"M21-GAP-01980"},"M21-GAP-01980":{"line":5235,"offset":933262,"length":179,"previous":"M21-GAP-01979","next":"M21-GAP-01981"},"M21-GAP-01981":{"line":5236,"offset":933441,"length":179,"previous":"M21-GAP-01980","next":"M21-GAP-01982"},"M21-GAP-01982":{"line":5237,"offset":933620,"length":179,"previous":"M21-GAP-01981","next":"M21-GAP-01983"},"M21-GAP-01983":{"line":5238,"offset":933799,"length":179,"previous":"M21-GAP-01982","next":"M21-GAP-01984"},"M21-GAP-01984":{"line":5239,"offset":933978,"length":178,"previous":"M21-GAP-01983","next":"M21-GAP-01985"},"M21-GAP-01985":{"line":5240,"offset":934156,"length":179,"previous":"M21-GAP-01984","next":"M21-GAP-01986"},"M21-GAP-01986":{"line":5241,"offset":934335,"length":179,"previous":"M21-GAP-01985","next":"M21-GAP-01987"},"M21-GAP-01987":{"line":5242,"offset":934514,"length":179,"previous":"M21-GAP-01986","next":"M21-GAP-01988"},"M21-GAP-01988":{"line":5243,"offset":934693,"length":179,"previous":"M21-GAP-01987","next":"M21-GAP-01989"},"M21-GAP-01989":{"line":5244,"offset":934872,"length":179,"previous":"M21-GAP-01988","next":"M21-GAP-01990"},"M21-GAP-01990":{"line":5245,"offset":935051,"length":179,"previous":"M21-GAP-01989","next":"M21-GAP-01991"},"M21-GAP-01991":{"line":5246,"offset":935230,"length":179,"previous":"M21-GAP-01990","next":"M21-GAP-01992"},"M21-GAP-01992":{"line":5247,"offset":935409,"length":179,"previous":"M21-GAP-01991","next":"M21-GAP-01993"},"M21-GAP-01993":{"line":5248,"offset":935588,"length":179,"previous":"M21-GAP-01992","next":"M21-GAP-01994"},"M21-GAP-01994":{"line":5249,"offset":935767,"length":179,"previous":"M21-GAP-01993","next":"M21-GAP-01995"},"M21-GAP-01995":{"line":5250,"offset":935946,"length":178,"previous":"M21-GAP-01994","next":"M21-GAP-01996"},"M21-GAP-01996":{"line":5251,"offset":936124,"length":179,"previous":"M21-GAP-01995","next":"M21-GAP-01997"},"M21-GAP-01997":{"line":5252,"offset":936303,"length":179,"previous":"M21-GAP-01996","next":"M21-GAP-01998"},"M21-GAP-01998":{"line":5253,"offset":936482,"length":179,"previous":"M21-GAP-01997","next":"M21-GAP-01999"},"M21-GAP-01999":{"line":5254,"offset":936661,"length":179,"previous":"M21-GAP-01998","next":"M21-GAP-02000"},"M21-GAP-02000":{"line":5255,"offset":936840,"length":179,"previous":"M21-GAP-01999","next":"M21-GAP-02001"},"M21-GAP-02001":{"line":5256,"offset":937019,"length":179,"previous":"M21-GAP-02000","next":"M21-GAP-02002"},"M21-GAP-02002":{"line":5257,"offset":937198,"length":179,"previous":"M21-GAP-02001","next":"M21-GAP-02003"},"M21-GAP-02003":{"line":5258,"offset":937377,"length":179,"previous":"M21-GAP-02002","next":"M21-GAP-02004"},"M21-GAP-02004":{"line":5259,"offset":937556,"length":179,"previous":"M21-GAP-02003","next":"M21-GAP-02005"},"M21-GAP-02005":{"line":5260,"offset":937735,"length":179,"previous":"M21-GAP-02004","next":"M21-GAP-02006"},"M21-GAP-02006":{"line":5261,"offset":937914,"length":178,"previous":"M21-GAP-02005","next":"M21-GAP-02007"},"M21-GAP-02007":{"line":5262,"offset":938092,"length":179,"previous":"M21-GAP-02006","next":"M21-GAP-02008"},"M21-GAP-02008":{"line":5263,"offset":938271,"length":179,"previous":"M21-GAP-02007","next":"M21-GAP-02009"},"M21-GAP-02009":{"line":5264,"offset":938450,"length":179,"previous":"M21-GAP-02008","next":"M21-GAP-02010"},"M21-GAP-02010":{"line":5265,"offset":938629,"length":179,"previous":"M21-GAP-02009","next":"M21-GAP-02011"},"M21-GAP-02011":{"line":5266,"offset":938808,"length":179,"previous":"M21-GAP-02010","next":"M21-GAP-02012"},"M21-GAP-02012":{"line":5267,"offset":938987,"length":179,"previous":"M21-GAP-02011","next":"M21-GAP-02013"},"M21-GAP-02013":{"line":5268,"offset":939166,"length":179,"previous":"M21-GAP-02012","next":"M21-GAP-02014"},"M21-GAP-02014":{"line":5269,"offset":939345,"length":179,"previous":"M21-GAP-02013","next":"M21-GAP-02015"},"M21-GAP-02015":{"line":5270,"offset":939524,"length":179,"previous":"M21-GAP-02014","next":"M21-GAP-02016"},"M21-GAP-02016":{"line":5271,"offset":939703,"length":179,"previous":"M21-GAP-02015","next":"M21-GAP-02017"},"M21-GAP-02017":{"line":5272,"offset":939882,"length":178,"previous":"M21-GAP-02016","next":"M21-GAP-02018"},"M21-GAP-02018":{"line":5273,"offset":940060,"length":179,"previous":"M21-GAP-02017","next":"M21-GAP-02019"},"M21-GAP-02019":{"line":5274,"offset":940239,"length":179,"previous":"M21-GAP-02018","next":"M21-GAP-02020"},"M21-GAP-02020":{"line":5275,"offset":940418,"length":179,"previous":"M21-GAP-02019","next":"M21-GAP-02021"},"M21-GAP-02021":{"line":5276,"offset":940597,"length":179,"previous":"M21-GAP-02020","next":"M21-GAP-02022"},"M21-GAP-02022":{"line":5277,"offset":940776,"length":179,"previous":"M21-GAP-02021","next":"M21-GAP-02023"},"M21-GAP-02023":{"line":5278,"offset":940955,"length":179,"previous":"M21-GAP-02022","next":"M21-GAP-02024"},"M21-GAP-02024":{"line":5279,"offset":941134,"length":179,"previous":"M21-GAP-02023","next":"M21-GAP-02025"},"M21-GAP-02025":{"line":5280,"offset":941313,"length":179,"previous":"M21-GAP-02024","next":"M21-GAP-02026"},"M21-GAP-02026":{"line":5281,"offset":941492,"length":179,"previous":"M21-GAP-02025","next":"M21-GAP-02027"},"M21-GAP-02027":{"line":5282,"offset":941671,"length":178,"previous":"M21-GAP-02026","next":"M21-GAP-02028"},"M21-GAP-02028":{"line":5283,"offset":941849,"length":178,"previous":"M21-GAP-02027","next":"M21-GAP-02029"},"M21-GAP-02029":{"line":5284,"offset":942027,"length":178,"previous":"M21-GAP-02028","next":"M21-GAP-02030"},"M21-GAP-02030":{"line":5285,"offset":942205,"length":178,"previous":"M21-GAP-02029","next":"M21-GAP-02031"},"M21-GAP-02031":{"line":5286,"offset":942383,"length":183,"previous":"M21-GAP-02030","next":"M21-GAP-02032"},"M21-GAP-02032":{"line":5287,"offset":942566,"length":183,"previous":"M21-GAP-02031","next":"M21-GAP-02033"},"M21-GAP-02033":{"line":5288,"offset":942749,"length":183,"previous":"M21-GAP-02032","next":"M21-GAP-02034"},"M21-GAP-02034":{"line":5289,"offset":942932,"length":178,"previous":"M21-GAP-02033","next":"M21-GAP-02035"},"M21-GAP-02035":{"line":5290,"offset":943110,"length":178,"previous":"M21-GAP-02034","next":"M21-GAP-02036"},"M21-GAP-02036":{"line":5291,"offset":943288,"length":179,"previous":"M21-GAP-02035","next":"M21-GAP-02037"},"M21-GAP-02037":{"line":5292,"offset":943467,"length":180,"previous":"M21-GAP-02036","next":"M21-GAP-02038"},"M21-GAP-02038":{"line":5293,"offset":943647,"length":180,"previous":"M21-GAP-02037","next":"M21-GAP-02039"},"M21-GAP-02039":{"line":5294,"offset":943827,"length":180,"previous":"M21-GAP-02038","next":"M21-GAP-02040"},"M21-GAP-02040":{"line":5295,"offset":944007,"length":179,"previous":"M21-GAP-02039","next":"M21-GAP-02041"},"M21-GAP-02041":{"line":5296,"offset":944186,"length":179,"previous":"M21-GAP-02040","next":"M21-GAP-02042"},"M21-GAP-02042":{"line":5297,"offset":944365,"length":179,"previous":"M21-GAP-02041","next":"M21-GAP-02043"},"M21-GAP-02043":{"line":5298,"offset":944544,"length":179,"previous":"M21-GAP-02042","next":"M21-GAP-02044"},"M21-GAP-02044":{"line":5299,"offset":944723,"length":179,"previous":"M21-GAP-02043","next":"M21-GAP-02045"},"M21-GAP-02045":{"line":5300,"offset":944902,"length":179,"previous":"M21-GAP-02044","next":"M21-GAP-02046"},"M21-GAP-02046":{"line":5301,"offset":945081,"length":179,"previous":"M21-GAP-02045","next":"M21-GAP-02047"},"M21-GAP-02047":{"line":5302,"offset":945260,"length":179,"previous":"M21-GAP-02046","next":"M21-GAP-02048"},"M21-GAP-02048":{"line":5303,"offset":945439,"length":179,"previous":"M21-GAP-02047","next":"M21-GAP-02049"},"M21-GAP-02049":{"line":5304,"offset":945618,"length":178,"previous":"M21-GAP-02048","next":"M21-GAP-02050"},"M21-GAP-02050":{"line":5305,"offset":945796,"length":179,"previous":"M21-GAP-02049","next":"M21-GAP-02051"},"M21-GAP-02051":{"line":5306,"offset":945975,"length":179,"previous":"M21-GAP-02050","next":"M21-GAP-02052"},"M21-GAP-02052":{"line":5307,"offset":946154,"length":179,"previous":"M21-GAP-02051","next":"M21-GAP-02053"},"M21-GAP-02053":{"line":5308,"offset":946333,"length":179,"previous":"M21-GAP-02052","next":"M21-GAP-02054"},"M21-GAP-02054":{"line":5309,"offset":946512,"length":179,"previous":"M21-GAP-02053","next":"M21-GAP-02055"},"M21-GAP-02055":{"line":5310,"offset":946691,"length":179,"previous":"M21-GAP-02054","next":"M21-GAP-02056"},"M21-GAP-02056":{"line":5311,"offset":946870,"length":179,"previous":"M21-GAP-02055","next":"M21-GAP-02057"},"M21-GAP-02057":{"line":5312,"offset":947049,"length":179,"previous":"M21-GAP-02056","next":"M21-GAP-02058"},"M21-GAP-02058":{"line":5313,"offset":947228,"length":179,"previous":"M21-GAP-02057","next":"M21-GAP-02059"},"M21-GAP-02059":{"line":5314,"offset":947407,"length":179,"previous":"M21-GAP-02058","next":"M21-GAP-02060"},"M21-GAP-02060":{"line":5315,"offset":947586,"length":178,"previous":"M21-GAP-02059","next":"M21-GAP-02061"},"M21-GAP-02061":{"line":5316,"offset":947764,"length":179,"previous":"M21-GAP-02060","next":"M21-GAP-02062"},"M21-GAP-02062":{"line":5317,"offset":947943,"length":179,"previous":"M21-GAP-02061","next":"M21-GAP-02063"},"M21-GAP-02063":{"line":5318,"offset":948122,"length":179,"previous":"M21-GAP-02062","next":"M21-GAP-02064"},"M21-GAP-02064":{"line":5319,"offset":948301,"length":179,"previous":"M21-GAP-02063","next":"M21-GAP-02065"},"M21-GAP-02065":{"line":5320,"offset":948480,"length":179,"previous":"M21-GAP-02064","next":"M21-GAP-02066"},"M21-GAP-02066":{"line":5321,"offset":948659,"length":179,"previous":"M21-GAP-02065","next":"M21-GAP-02067"},"M21-GAP-02067":{"line":5322,"offset":948838,"length":179,"previous":"M21-GAP-02066","next":"M21-GAP-02068"},"M21-GAP-02068":{"line":5323,"offset":949017,"length":179,"previous":"M21-GAP-02067","next":"M21-GAP-02069"},"M21-GAP-02069":{"line":5324,"offset":949196,"length":179,"previous":"M21-GAP-02068","next":"M21-GAP-02070"},"M21-GAP-02070":{"line":5325,"offset":949375,"length":179,"previous":"M21-GAP-02069","next":"M21-GAP-02071"},"M21-GAP-02071":{"line":5326,"offset":949554,"length":178,"previous":"M21-GAP-02070","next":"M21-GAP-02072"},"M21-GAP-02072":{"line":5327,"offset":949732,"length":179,"previous":"M21-GAP-02071","next":"M21-GAP-02073"},"M21-GAP-02073":{"line":5328,"offset":949911,"length":179,"previous":"M21-GAP-02072","next":"M21-GAP-02074"},"M21-GAP-02074":{"line":5329,"offset":950090,"length":179,"previous":"M21-GAP-02073","next":"M21-GAP-02075"},"M21-GAP-02075":{"line":5330,"offset":950269,"length":179,"previous":"M21-GAP-02074","next":"M21-GAP-02076"},"M21-GAP-02076":{"line":5331,"offset":950448,"length":179,"previous":"M21-GAP-02075","next":"M21-GAP-02077"},"M21-GAP-02077":{"line":5332,"offset":950627,"length":179,"previous":"M21-GAP-02076","next":"M21-GAP-02078"},"M21-GAP-02078":{"line":5333,"offset":950806,"length":179,"previous":"M21-GAP-02077","next":"M21-GAP-02079"},"M21-GAP-02079":{"line":5334,"offset":950985,"length":179,"previous":"M21-GAP-02078","next":"M21-GAP-02080"},"M21-GAP-02080":{"line":5335,"offset":951164,"length":179,"previous":"M21-GAP-02079","next":"M21-GAP-02081"},"M21-GAP-02081":{"line":5336,"offset":951343,"length":179,"previous":"M21-GAP-02080","next":"M21-GAP-02082"},"M21-GAP-02082":{"line":5337,"offset":951522,"length":178,"previous":"M21-GAP-02081","next":"M21-GAP-02083"},"M21-GAP-02083":{"line":5338,"offset":951700,"length":179,"previous":"M21-GAP-02082","next":"M21-GAP-02084"},"M21-GAP-02084":{"line":5339,"offset":951879,"length":179,"previous":"M21-GAP-02083","next":"M21-GAP-02085"},"M21-GAP-02085":{"line":5340,"offset":952058,"length":179,"previous":"M21-GAP-02084","next":"M21-GAP-02086"},"M21-GAP-02086":{"line":5341,"offset":952237,"length":179,"previous":"M21-GAP-02085","next":"M21-GAP-02087"},"M21-GAP-02087":{"line":5342,"offset":952416,"length":179,"previous":"M21-GAP-02086","next":"M21-GAP-02088"},"M21-GAP-02088":{"line":5343,"offset":952595,"length":179,"previous":"M21-GAP-02087","next":"M21-GAP-02089"},"M21-GAP-02089":{"line":5344,"offset":952774,"length":179,"previous":"M21-GAP-02088","next":"M21-GAP-02090"},"M21-GAP-02090":{"line":5345,"offset":952953,"length":179,"previous":"M21-GAP-02089","next":"M21-GAP-02091"},"M21-GAP-02091":{"line":5346,"offset":953132,"length":179,"previous":"M21-GAP-02090","next":"M21-GAP-02092"},"M21-GAP-02092":{"line":5347,"offset":953311,"length":179,"previous":"M21-GAP-02091","next":"M21-GAP-02093"},"M21-GAP-02093":{"line":5348,"offset":953490,"length":178,"previous":"M21-GAP-02092","next":"M21-GAP-02094"},"M21-GAP-02094":{"line":5349,"offset":953668,"length":179,"previous":"M21-GAP-02093","next":"M21-GAP-02095"},"M21-GAP-02095":{"line":5350,"offset":953847,"length":179,"previous":"M21-GAP-02094","next":"M21-GAP-02096"},"M21-GAP-02096":{"line":5351,"offset":954026,"length":179,"previous":"M21-GAP-02095","next":"M21-GAP-02097"},"M21-GAP-02097":{"line":5352,"offset":954205,"length":179,"previous":"M21-GAP-02096","next":"M21-GAP-02098"},"M21-GAP-02098":{"line":5353,"offset":954384,"length":179,"previous":"M21-GAP-02097","next":"M21-GAP-02099"},"M21-GAP-02099":{"line":5354,"offset":954563,"length":179,"previous":"M21-GAP-02098","next":"M21-GAP-02100"},"M21-GAP-02100":{"line":5355,"offset":954742,"length":179,"previous":"M21-GAP-02099","next":"M21-GAP-02101"},"M21-GAP-02101":{"line":5356,"offset":954921,"length":179,"previous":"M21-GAP-02100","next":"M21-GAP-02102"},"M21-GAP-02102":{"line":5357,"offset":955100,"length":179,"previous":"M21-GAP-02101","next":"M21-GAP-02103"},"M21-GAP-02103":{"line":5358,"offset":955279,"length":179,"previous":"M21-GAP-02102","next":"M21-GAP-02104"},"M21-GAP-02104":{"line":5359,"offset":955458,"length":178,"previous":"M21-GAP-02103","next":"M21-GAP-02105"},"M21-GAP-02105":{"line":5360,"offset":955636,"length":179,"previous":"M21-GAP-02104","next":"M21-GAP-02106"},"M21-GAP-02106":{"line":5361,"offset":955815,"length":179,"previous":"M21-GAP-02105","next":"M21-GAP-02107"},"M21-GAP-02107":{"line":5362,"offset":955994,"length":179,"previous":"M21-GAP-02106","next":"M21-GAP-02108"},"M21-GAP-02108":{"line":5363,"offset":956173,"length":179,"previous":"M21-GAP-02107","next":"M21-GAP-02109"},"M21-GAP-02109":{"line":5364,"offset":956352,"length":179,"previous":"M21-GAP-02108","next":"M21-GAP-02110"},"M21-GAP-02110":{"line":5365,"offset":956531,"length":179,"previous":"M21-GAP-02109","next":"M21-GAP-02111"},"M21-GAP-02111":{"line":5366,"offset":956710,"length":179,"previous":"M21-GAP-02110","next":"M21-GAP-02112"},"M21-GAP-02112":{"line":5367,"offset":956889,"length":179,"previous":"M21-GAP-02111","next":"M21-GAP-02113"},"M21-GAP-02113":{"line":5368,"offset":957068,"length":179,"previous":"M21-GAP-02112","next":"M21-GAP-02114"},"M21-GAP-02114":{"line":5369,"offset":957247,"length":179,"previous":"M21-GAP-02113","next":"M21-GAP-02115"},"M21-GAP-02115":{"line":5370,"offset":957426,"length":178,"previous":"M21-GAP-02114","next":"M21-GAP-02116"},"M21-GAP-02116":{"line":5371,"offset":957604,"length":179,"previous":"M21-GAP-02115","next":"M21-GAP-02117"},"M21-GAP-02117":{"line":5372,"offset":957783,"length":179,"previous":"M21-GAP-02116","next":"M21-GAP-02118"},"M21-GAP-02118":{"line":5373,"offset":957962,"length":179,"previous":"M21-GAP-02117","next":"M21-GAP-02119"},"M21-GAP-02119":{"line":5374,"offset":958141,"length":179,"previous":"M21-GAP-02118","next":"M21-GAP-02120"},"M21-GAP-02120":{"line":5375,"offset":958320,"length":179,"previous":"M21-GAP-02119","next":"M21-GAP-02121"},"M21-GAP-02121":{"line":5376,"offset":958499,"length":179,"previous":"M21-GAP-02120","next":"M21-GAP-02122"},"M21-GAP-02122":{"line":5377,"offset":958678,"length":179,"previous":"M21-GAP-02121","next":"M21-GAP-02123"},"M21-GAP-02123":{"line":5378,"offset":958857,"length":179,"previous":"M21-GAP-02122","next":"M21-GAP-02124"},"M21-GAP-02124":{"line":5379,"offset":959036,"length":179,"previous":"M21-GAP-02123","next":"M21-GAP-02125"},"M21-GAP-02125":{"line":5380,"offset":959215,"length":179,"previous":"M21-GAP-02124","next":"M21-GAP-02126"},"M21-GAP-02126":{"line":5381,"offset":959394,"length":178,"previous":"M21-GAP-02125","next":"M21-GAP-02127"},"M21-GAP-02127":{"line":5382,"offset":959572,"length":179,"previous":"M21-GAP-02126","next":"M21-GAP-02128"},"M21-GAP-02128":{"line":5383,"offset":959751,"length":179,"previous":"M21-GAP-02127","next":"M21-GAP-02129"},"M21-GAP-02129":{"line":5384,"offset":959930,"length":179,"previous":"M21-GAP-02128","next":"M21-GAP-02130"},"M21-GAP-02130":{"line":5385,"offset":960109,"length":179,"previous":"M21-GAP-02129","next":"M21-GAP-02131"},"M21-GAP-02131":{"line":5386,"offset":960288,"length":179,"previous":"M21-GAP-02130","next":"M21-GAP-02132"},"M21-GAP-02132":{"line":5387,"offset":960467,"length":179,"previous":"M21-GAP-02131","next":"M21-GAP-02133"},"M21-GAP-02133":{"line":5388,"offset":960646,"length":179,"previous":"M21-GAP-02132","next":"M21-GAP-02134"},"M21-GAP-02134":{"line":5389,"offset":960825,"length":179,"previous":"M21-GAP-02133","next":"M21-GAP-02135"},"M21-GAP-02135":{"line":5390,"offset":961004,"length":179,"previous":"M21-GAP-02134","next":"M21-GAP-02136"},"M21-GAP-02136":{"line":5391,"offset":961183,"length":179,"previous":"M21-GAP-02135","next":"M21-GAP-02137"},"M21-GAP-02137":{"line":5392,"offset":961362,"length":178,"previous":"M21-GAP-02136","next":"M21-GAP-02138"},"M21-GAP-02138":{"line":5393,"offset":961540,"length":178,"previous":"M21-GAP-02137","next":"M21-GAP-02139"},"M21-GAP-02139":{"line":5394,"offset":961718,"length":179,"previous":"M21-GAP-02138","next":"M21-GAP-02140"},"M21-GAP-02140":{"line":5395,"offset":961897,"length":179,"previous":"M21-GAP-02139","next":"M21-GAP-02141"},"M21-GAP-02141":{"line":5396,"offset":962076,"length":179,"previous":"M21-GAP-02140","next":"M21-GAP-02142"},"M21-GAP-02142":{"line":5397,"offset":962255,"length":179,"previous":"M21-GAP-02141","next":"M21-GAP-02143"},"M21-GAP-02143":{"line":5398,"offset":962434,"length":179,"previous":"M21-GAP-02142","next":"M21-GAP-02144"},"M21-GAP-02144":{"line":5399,"offset":962613,"length":178,"previous":"M21-GAP-02143","next":"M21-GAP-02145"},"M21-GAP-02145":{"line":5400,"offset":962791,"length":178,"previous":"M21-GAP-02144","next":"M21-GAP-02146"},"M21-GAP-02146":{"line":5401,"offset":962969,"length":178,"previous":"M21-GAP-02145","next":"M21-GAP-02147"},"M21-GAP-02147":{"line":5402,"offset":963147,"length":178,"previous":"M21-GAP-02146","next":"M21-GAP-02148"},"M21-GAP-02148":{"line":5403,"offset":963325,"length":178,"previous":"M21-GAP-02147","next":"M21-GAP-02149"},"M21-GAP-02149":{"line":5404,"offset":963503,"length":178,"previous":"M21-GAP-02148","next":"M21-GAP-02150"},"M21-GAP-02150":{"line":5405,"offset":963681,"length":178,"previous":"M21-GAP-02149","next":"M21-GAP-02151"},"M21-GAP-02151":{"line":5406,"offset":963859,"length":178,"previous":"M21-GAP-02150","next":"M21-GAP-02152"},"M21-GAP-02152":{"line":5407,"offset":964037,"length":208,"previous":"M21-GAP-02151","next":"M21-GAP-02153"},"M21-GAP-02153":{"line":5408,"offset":964245,"length":208,"previous":"M21-GAP-02152","next":"M21-GAP-02154"},"M21-GAP-02154":{"line":5409,"offset":964453,"length":209,"previous":"M21-GAP-02153","next":"M21-GAP-02155"},"M21-GAP-02155":{"line":5410,"offset":964662,"length":209,"previous":"M21-GAP-02154","next":"M21-GAP-02156"},"M21-GAP-02156":{"line":5411,"offset":964871,"length":209,"previous":"M21-GAP-02155","next":"M21-GAP-02157"},"M21-GAP-02157":{"line":5412,"offset":965080,"length":209,"previous":"M21-GAP-02156","next":"M21-GAP-02158"},"M21-GAP-02158":{"line":5413,"offset":965289,"length":208,"previous":"M21-GAP-02157","next":"M21-GAP-02159"},"M21-GAP-02159":{"line":5414,"offset":965497,"length":208,"previous":"M21-GAP-02158","next":"M21-GAP-02160"},"M21-GAP-02160":{"line":5415,"offset":965705,"length":208,"previous":"M21-GAP-02159","next":"M21-GAP-02161"},"M21-GAP-02161":{"line":5416,"offset":965913,"length":208,"previous":"M21-GAP-02160","next":"M21-GAP-02162"},"M21-GAP-02162":{"line":5417,"offset":966121,"length":208,"previous":"M21-GAP-02161","next":"M21-GAP-02163"},"M21-GAP-02163":{"line":5418,"offset":966329,"length":208,"previous":"M21-GAP-02162","next":"M21-GAP-02164"},"M21-GAP-02164":{"line":5419,"offset":966537,"length":208,"previous":"M21-GAP-02163","next":"M21-GAP-02165"},"M21-GAP-02165":{"line":5420,"offset":966745,"length":208,"previous":"M21-GAP-02164","next":"M21-GAP-02166"},"M21-GAP-02166":{"line":5421,"offset":966953,"length":185,"previous":"M21-GAP-02165","next":"M21-GAP-02167"},"M21-GAP-02167":{"line":5422,"offset":967138,"length":206,"previous":"M21-GAP-02166","next":"M21-GAP-02168"},"M21-GAP-02168":{"line":5423,"offset":967344,"length":206,"previous":"M21-GAP-02167","next":"M21-GAP-02169"},"M21-GAP-02169":{"line":5424,"offset":967550,"length":207,"previous":"M21-GAP-02168","next":"M21-GAP-02170"},"M21-GAP-02170":{"line":5425,"offset":967757,"length":207,"previous":"M21-GAP-02169","next":"M21-GAP-02171"},"M21-GAP-02171":{"line":5426,"offset":967964,"length":207,"previous":"M21-GAP-02170","next":"M21-GAP-02172"},"M21-GAP-02172":{"line":5427,"offset":968171,"length":207,"previous":"M21-GAP-02171","next":"M21-GAP-02173"},"M21-GAP-02173":{"line":5428,"offset":968378,"length":207,"previous":"M21-GAP-02172","next":"M21-GAP-02174"},"M21-GAP-02174":{"line":5429,"offset":968585,"length":207,"previous":"M21-GAP-02173","next":"M21-GAP-02175"},"M21-GAP-02175":{"line":5430,"offset":968792,"length":206,"previous":"M21-GAP-02174","next":"M21-GAP-02176"},"M21-GAP-02176":{"line":5431,"offset":968998,"length":206,"previous":"M21-GAP-02175","next":"M21-GAP-02177"},"M21-GAP-02177":{"line":5432,"offset":969204,"length":206,"previous":"M21-GAP-02176","next":"M21-GAP-02178"},"M21-GAP-02178":{"line":5433,"offset":969410,"length":206,"previous":"M21-GAP-02177","next":"M21-GAP-02179"},"M21-GAP-02179":{"line":5434,"offset":969616,"length":206,"previous":"M21-GAP-02178","next":"M21-GAP-02180"},"M21-GAP-02180":{"line":5435,"offset":969822,"length":206,"previous":"M21-GAP-02179","next":"M21-GAP-02181"},"M21-GAP-02181":{"line":5436,"offset":970028,"length":206,"previous":"M21-GAP-02180","next":"M21-GAP-02182"},"M21-GAP-02182":{"line":5437,"offset":970234,"length":206,"previous":"M21-GAP-02181","next":"M21-GAP-02183"},"M21-GAP-02183":{"line":5438,"offset":970440,"length":175,"previous":"M21-GAP-02182","next":"M21-GAP-02184"},"M21-GAP-02184":{"line":5439,"offset":970615,"length":175,"previous":"M21-GAP-02183","next":"M21-GAP-02185"},"M21-GAP-02185":{"line":5440,"offset":970790,"length":176,"previous":"M21-GAP-02184","next":"M21-GAP-02186"},"M21-GAP-02186":{"line":5441,"offset":970966,"length":176,"previous":"M21-GAP-02185","next":"M21-GAP-02187"},"M21-GAP-02187":{"line":5442,"offset":971142,"length":176,"previous":"M21-GAP-02186","next":"M21-GAP-02188"},"M21-GAP-02188":{"line":5443,"offset":971318,"length":176,"previous":"M21-GAP-02187","next":"M21-GAP-02189"},"M21-GAP-02189":{"line":5444,"offset":971494,"length":176,"previous":"M21-GAP-02188","next":"M21-GAP-02190"},"M21-GAP-02190":{"line":5445,"offset":971670,"length":176,"previous":"M21-GAP-02189","next":"M21-GAP-02191"},"M21-GAP-02191":{"line":5446,"offset":971846,"length":176,"previous":"M21-GAP-02190","next":"M21-GAP-02192"},"M21-GAP-02192":{"line":5447,"offset":972022,"length":176,"previous":"M21-GAP-02191","next":"M21-GAP-02193"},"M21-GAP-02193":{"line":5448,"offset":972198,"length":176,"previous":"M21-GAP-02192","next":"M21-GAP-02194"},"M21-GAP-02194":{"line":5449,"offset":972374,"length":176,"previous":"M21-GAP-02193","next":"M21-GAP-02195"},"M21-GAP-02195":{"line":5450,"offset":972550,"length":175,"previous":"M21-GAP-02194","next":"M21-GAP-02196"},"M21-GAP-02196":{"line":5451,"offset":972725,"length":176,"previous":"M21-GAP-02195","next":"M21-GAP-02197"},"M21-GAP-02197":{"line":5452,"offset":972901,"length":176,"previous":"M21-GAP-02196","next":"M21-GAP-02198"},"M21-GAP-02198":{"line":5453,"offset":973077,"length":176,"previous":"M21-GAP-02197","next":"M21-GAP-02199"},"M21-GAP-02199":{"line":5454,"offset":973253,"length":176,"previous":"M21-GAP-02198","next":"M21-GAP-02200"},"M21-GAP-02200":{"line":5455,"offset":973429,"length":176,"previous":"M21-GAP-02199","next":"M21-GAP-02201"},"M21-GAP-02201":{"line":5456,"offset":973605,"length":176,"previous":"M21-GAP-02200","next":"M21-GAP-02202"},"M21-GAP-02202":{"line":5457,"offset":973781,"length":176,"previous":"M21-GAP-02201","next":"M21-GAP-02203"},"M21-GAP-02203":{"line":5458,"offset":973957,"length":176,"previous":"M21-GAP-02202","next":"M21-GAP-02204"},"M21-GAP-02204":{"line":5459,"offset":974133,"length":176,"previous":"M21-GAP-02203","next":"M21-GAP-02205"},"M21-GAP-02205":{"line":5460,"offset":974309,"length":176,"previous":"M21-GAP-02204","next":"M21-GAP-02206"},"M21-GAP-02206":{"line":5461,"offset":974485,"length":175,"previous":"M21-GAP-02205","next":"M21-GAP-02207"},"M21-GAP-02207":{"line":5462,"offset":974660,"length":175,"previous":"M21-GAP-02206","next":"M21-GAP-02208"},"M21-GAP-02208":{"line":5463,"offset":974835,"length":175,"previous":"M21-GAP-02207","next":"M21-GAP-02209"},"M21-GAP-02209":{"line":5464,"offset":975010,"length":175,"previous":"M21-GAP-02208","next":"M21-GAP-02210"},"M21-GAP-02210":{"line":5465,"offset":975185,"length":175,"previous":"M21-GAP-02209","next":"M21-GAP-02211"},"M21-GAP-02211":{"line":5466,"offset":975360,"length":175,"previous":"M21-GAP-02210","next":"M21-GAP-02212"},"M21-GAP-02212":{"line":5467,"offset":975535,"length":175,"previous":"M21-GAP-02211","next":"M21-GAP-02213"},"M21-GAP-02213":{"line":5468,"offset":975710,"length":185,"previous":"M21-GAP-02212","next":"M21-GAP-02214"},"M21-GAP-02214":{"line":5469,"offset":975895,"length":185,"previous":"M21-GAP-02213","next":"M21-GAP-02215"},"M21-GAP-02215":{"line":5470,"offset":976080,"length":185,"previous":"M21-GAP-02214","next":"M21-GAP-02216"},"M21-GAP-02216":{"line":5471,"offset":976265,"length":178,"previous":"M21-GAP-02215","next":"M21-GAP-02217"},"M21-GAP-02217":{"line":5472,"offset":976443,"length":178,"previous":"M21-GAP-02216","next":"M21-GAP-02218"},"M21-GAP-02218":{"line":5473,"offset":976621,"length":179,"previous":"M21-GAP-02217","next":"M21-GAP-02219"},"M21-GAP-02219":{"line":5474,"offset":976800,"length":179,"previous":"M21-GAP-02218","next":"M21-GAP-02220"},"M21-GAP-02220":{"line":5475,"offset":976979,"length":179,"previous":"M21-GAP-02219","next":"M21-GAP-02221"},"M21-GAP-02221":{"line":5476,"offset":977158,"length":179,"previous":"M21-GAP-02220","next":"M21-GAP-02222"},"M21-GAP-02222":{"line":5477,"offset":977337,"length":179,"previous":"M21-GAP-02221","next":"M21-GAP-02223"},"M21-GAP-02223":{"line":5478,"offset":977516,"length":179,"previous":"M21-GAP-02222","next":"M21-GAP-02224"},"M21-GAP-02224":{"line":5479,"offset":977695,"length":179,"previous":"M21-GAP-02223","next":"M21-GAP-02225"},"M21-GAP-02225":{"line":5480,"offset":977874,"length":179,"previous":"M21-GAP-02224","next":"M21-GAP-02226"},"M21-GAP-02226":{"line":5481,"offset":978053,"length":178,"previous":"M21-GAP-02225","next":"M21-GAP-02227"},"M21-GAP-02227":{"line":5482,"offset":978231,"length":178,"previous":"M21-GAP-02226","next":"M21-GAP-02228"},"M21-GAP-02228":{"line":5483,"offset":978409,"length":178,"previous":"M21-GAP-02227","next":"M21-GAP-02229"},"M21-GAP-02229":{"line":5484,"offset":978587,"length":178,"previous":"M21-GAP-02228","next":"M21-GAP-02230"},"M21-GAP-02230":{"line":5485,"offset":978765,"length":178,"previous":"M21-GAP-02229","next":"M21-GAP-02231"},"M21-GAP-02231":{"line":5486,"offset":978943,"length":178,"previous":"M21-GAP-02230","next":"M21-GAP-02232"},"M21-GAP-02232":{"line":5487,"offset":979121,"length":178,"previous":"M21-GAP-02231","next":"M21-GAP-02233"},"M21-GAP-02233":{"line":5488,"offset":979299,"length":178,"previous":"M21-GAP-02232","next":"M21-GAP-02234"},"M21-GAP-02234":{"line":5489,"offset":979477,"length":171,"previous":"M21-GAP-02233","next":"M21-GAP-02235"},"M21-GAP-02235":{"line":5490,"offset":979648,"length":171,"previous":"M21-GAP-02234","next":"M21-GAP-02236"},"M21-GAP-02236":{"line":5491,"offset":979819,"length":172,"previous":"M21-GAP-02235","next":"M21-GAP-02237"},"M21-GAP-02237":{"line":5492,"offset":979991,"length":172,"previous":"M21-GAP-02236","next":"M21-GAP-02238"},"M21-GAP-02238":{"line":5493,"offset":980163,"length":172,"previous":"M21-GAP-02237","next":"M21-GAP-02239"},"M21-GAP-02239":{"line":5494,"offset":980335,"length":172,"previous":"M21-GAP-02238","next":"M21-GAP-02240"},"M21-GAP-02240":{"line":5495,"offset":980507,"length":172,"previous":"M21-GAP-02239","next":"M21-GAP-02241"},"M21-GAP-02241":{"line":5496,"offset":980679,"length":172,"previous":"M21-GAP-02240","next":"M21-GAP-02242"},"M21-GAP-02242":{"line":5497,"offset":980851,"length":172,"previous":"M21-GAP-02241","next":"M21-GAP-02243"},"M21-GAP-02243":{"line":5498,"offset":981023,"length":172,"previous":"M21-GAP-02242","next":"M21-GAP-02244"},"M21-GAP-02244":{"line":5499,"offset":981195,"length":172,"previous":"M21-GAP-02243","next":"M21-GAP-02245"},"M21-GAP-02245":{"line":5500,"offset":981367,"length":172,"previous":"M21-GAP-02244","next":"M21-GAP-02246"},"M21-GAP-02246":{"line":5501,"offset":981539,"length":171,"previous":"M21-GAP-02245","next":"M21-GAP-02247"},"M21-GAP-02247":{"line":5502,"offset":981710,"length":172,"previous":"M21-GAP-02246","next":"M21-GAP-02248"},"M21-GAP-02248":{"line":5503,"offset":981882,"length":172,"previous":"M21-GAP-02247","next":"M21-GAP-02249"},"M21-GAP-02249":{"line":5504,"offset":982054,"length":172,"previous":"M21-GAP-02248","next":"M21-GAP-02250"},"M21-GAP-02250":{"line":5505,"offset":982226,"length":172,"previous":"M21-GAP-02249","next":"M21-GAP-02251"},"M21-GAP-02251":{"line":5506,"offset":982398,"length":172,"previous":"M21-GAP-02250","next":"M21-GAP-02252"},"M21-GAP-02252":{"line":5507,"offset":982570,"length":172,"previous":"M21-GAP-02251","next":"M21-GAP-02253"},"M21-GAP-02253":{"line":5508,"offset":982742,"length":172,"previous":"M21-GAP-02252","next":"M21-GAP-02254"},"M21-GAP-02254":{"line":5509,"offset":982914,"length":172,"previous":"M21-GAP-02253","next":"M21-GAP-02255"},"M21-GAP-02255":{"line":5510,"offset":983086,"length":172,"previous":"M21-GAP-02254","next":"M21-GAP-02256"},"M21-GAP-02256":{"line":5511,"offset":983258,"length":172,"previous":"M21-GAP-02255","next":"M21-GAP-02257"},"M21-GAP-02257":{"line":5512,"offset":983430,"length":171,"previous":"M21-GAP-02256","next":"M21-GAP-02258"},"M21-GAP-02258":{"line":5513,"offset":983601,"length":172,"previous":"M21-GAP-02257","next":"M21-GAP-02259"},"M21-GAP-02259":{"line":5514,"offset":983773,"length":172,"previous":"M21-GAP-02258","next":"M21-GAP-02260"},"M21-GAP-02260":{"line":5515,"offset":983945,"length":172,"previous":"M21-GAP-02259","next":"M21-GAP-02261"},"M21-GAP-02261":{"line":5516,"offset":984117,"length":172,"previous":"M21-GAP-02260","next":"M21-GAP-02262"},"M21-GAP-02262":{"line":5517,"offset":984289,"length":172,"previous":"M21-GAP-02261","next":"M21-GAP-02263"},"M21-GAP-02263":{"line":5518,"offset":984461,"length":172,"previous":"M21-GAP-02262","next":"M21-GAP-02264"},"M21-GAP-02264":{"line":5519,"offset":984633,"length":172,"previous":"M21-GAP-02263","next":"M21-GAP-02265"},"M21-GAP-02265":{"line":5520,"offset":984805,"length":172,"previous":"M21-GAP-02264","next":"M21-GAP-02266"},"M21-GAP-02266":{"line":5521,"offset":984977,"length":172,"previous":"M21-GAP-02265","next":"M21-GAP-02267"},"M21-GAP-02267":{"line":5522,"offset":985149,"length":172,"previous":"M21-GAP-02266","next":"M21-GAP-02268"},"M21-GAP-02268":{"line":5523,"offset":985321,"length":171,"previous":"M21-GAP-02267","next":"M21-GAP-02269"},"M21-GAP-02269":{"line":5524,"offset":985492,"length":172,"previous":"M21-GAP-02268","next":"M21-GAP-02270"},"M21-GAP-02270":{"line":5525,"offset":985664,"length":172,"previous":"M21-GAP-02269","next":"M21-GAP-02271"},"M21-GAP-02271":{"line":5526,"offset":985836,"length":172,"previous":"M21-GAP-02270","next":"M21-GAP-02272"},"M21-GAP-02272":{"line":5527,"offset":986008,"length":172,"previous":"M21-GAP-02271","next":"M21-GAP-02273"},"M21-GAP-02273":{"line":5528,"offset":986180,"length":172,"previous":"M21-GAP-02272","next":"M21-GAP-02274"},"M21-GAP-02274":{"line":5529,"offset":986352,"length":172,"previous":"M21-GAP-02273","next":"M21-GAP-02275"},"M21-GAP-02275":{"line":5530,"offset":986524,"length":172,"previous":"M21-GAP-02274","next":"M21-GAP-02276"},"M21-GAP-02276":{"line":5531,"offset":986696,"length":172,"previous":"M21-GAP-02275","next":"M21-GAP-02277"},"M21-GAP-02277":{"line":5532,"offset":986868,"length":172,"previous":"M21-GAP-02276","next":"M21-GAP-02278"},"M21-GAP-02278":{"line":5533,"offset":987040,"length":172,"previous":"M21-GAP-02277","next":"M21-GAP-02279"},"M21-GAP-02279":{"line":5534,"offset":987212,"length":171,"previous":"M21-GAP-02278","next":"M21-GAP-02280"},"M21-GAP-02280":{"line":5535,"offset":987383,"length":172,"previous":"M21-GAP-02279","next":"M21-GAP-02281"},"M21-GAP-02281":{"line":5536,"offset":987555,"length":172,"previous":"M21-GAP-02280","next":"M21-GAP-02282"},"M21-GAP-02282":{"line":5537,"offset":987727,"length":172,"previous":"M21-GAP-02281","next":"M21-GAP-02283"},"M21-GAP-02283":{"line":5538,"offset":987899,"length":171,"previous":"M21-GAP-02282","next":"M21-GAP-02284"},"M21-GAP-02284":{"line":5539,"offset":988070,"length":171,"previous":"M21-GAP-02283","next":"M21-GAP-02285"},"M21-GAP-02285":{"line":5540,"offset":988241,"length":171,"previous":"M21-GAP-02284","next":"M21-GAP-02286"},"M21-GAP-02286":{"line":5541,"offset":988412,"length":171,"previous":"M21-GAP-02285","next":"M21-GAP-02287"},"M21-GAP-02287":{"line":5542,"offset":988583,"length":184,"previous":"M21-GAP-02286","next":"M21-GAP-02288"},"M21-GAP-02288":{"line":5543,"offset":988767,"length":184,"previous":"M21-GAP-02287","next":"M21-GAP-02289"},"M21-GAP-02289":{"line":5544,"offset":988951,"length":184,"previous":"M21-GAP-02288","next":"M21-GAP-02290"},"M21-GAP-02290":{"line":5545,"offset":989135,"length":184,"previous":"M21-GAP-02289","next":"M21-GAP-02291"},"M21-GAP-02291":{"line":5546,"offset":989319,"length":197,"previous":"M21-GAP-02290","next":"M21-GAP-02292"},"M21-GAP-02292":{"line":5547,"offset":989516,"length":197,"previous":"M21-GAP-02291","next":"M21-GAP-02293"},"M21-GAP-02293":{"line":5548,"offset":989713,"length":195,"previous":"M21-GAP-02292","next":"M21-GAP-02294"},"M21-GAP-02294":{"line":5549,"offset":989908,"length":197,"previous":"M21-GAP-02293","next":"M21-GAP-02295"},"M21-GAP-02295":{"line":5550,"offset":990105,"length":197,"previous":"M21-GAP-02294","next":"M21-GAP-02296"},"M21-GAP-02296":{"line":5551,"offset":990302,"length":196,"previous":"M21-GAP-02295","next":"M21-GAP-02297"},"M21-GAP-02297":{"line":5552,"offset":990498,"length":212,"previous":"M21-GAP-02296","next":"M21-GAP-02298"},"M21-GAP-02298":{"line":5553,"offset":990710,"length":212,"previous":"M21-GAP-02297","next":"M21-GAP-02299"},"M21-GAP-02299":{"line":5554,"offset":990922,"length":212,"previous":"M21-GAP-02298","next":"M21-GAP-02300"},"M21-GAP-02300":{"line":5555,"offset":991134,"length":212,"previous":"M21-GAP-02299","next":"M21-GAP-02301"},"M21-GAP-02301":{"line":5556,"offset":991346,"length":212,"previous":"M21-GAP-02300","next":"M21-GAP-02302"},"M21-GAP-02302":{"line":5557,"offset":991558,"length":201,"previous":"M21-GAP-02301","next":"M21-GAP-02303"},"M21-GAP-02303":{"line":5558,"offset":991759,"length":201,"previous":"M21-GAP-02302","next":"M21-GAP-02304"},"M21-GAP-02304":{"line":5559,"offset":991960,"length":201,"previous":"M21-GAP-02303","next":"M21-GAP-02305"},"M21-GAP-02305":{"line":5560,"offset":992161,"length":201,"previous":"M21-GAP-02304","next":"M21-GAP-02306"},"M21-GAP-02306":{"line":5561,"offset":992362,"length":201,"previous":"M21-GAP-02305","next":"M21-GAP-02307"},"M21-GAP-02307":{"line":5562,"offset":992563,"length":215,"previous":"M21-GAP-02306","next":"M21-GAP-02308"},"M21-GAP-02308":{"line":5563,"offset":992778,"length":215,"previous":"M21-GAP-02307","next":"M21-GAP-02309"},"M21-GAP-02309":{"line":5564,"offset":992993,"length":215,"previous":"M21-GAP-02308","next":"M21-GAP-02310"},"M21-GAP-02310":{"line":5565,"offset":993208,"length":204,"previous":"M21-GAP-02309","next":"M21-GAP-02311"},"M21-GAP-02311":{"line":5566,"offset":993412,"length":204,"previous":"M21-GAP-02310","next":"M21-GAP-02312"},"M21-GAP-02312":{"line":5567,"offset":993616,"length":204,"previous":"M21-GAP-02311","next":"M21-GAP-02313"},"M21-GAP-02313":{"line":5568,"offset":993820,"length":214,"previous":"M21-GAP-02312","next":"M21-GAP-02314"},"M21-GAP-02314":{"line":5569,"offset":994034,"length":214,"previous":"M21-GAP-02313","next":"M21-GAP-02315"},"M21-GAP-02315":{"line":5570,"offset":994248,"length":214,"previous":"M21-GAP-02314","next":"M21-GAP-02316"},"M21-GAP-02316":{"line":5571,"offset":994462,"length":203,"previous":"M21-GAP-02315","next":"M21-GAP-02317"},"M21-GAP-02317":{"line":5572,"offset":994665,"length":203,"previous":"M21-GAP-02316","next":"M21-GAP-02318"},"M21-GAP-02318":{"line":5573,"offset":994868,"length":203,"previous":"M21-GAP-02317","next":"M21-GAP-02319"},"M21-GAP-02319":{"line":5574,"offset":995071,"length":207,"previous":"M21-GAP-02318","next":"M21-GAP-02320"},"M21-GAP-02320":{"line":5575,"offset":995278,"length":207,"previous":"M21-GAP-02319","next":"M21-GAP-02321"},"M21-GAP-02321":{"line":5576,"offset":995485,"length":207,"previous":"M21-GAP-02320","next":"M21-GAP-02322"},"M21-GAP-02322":{"line":5577,"offset":995692,"length":207,"previous":"M21-GAP-02321","next":"M21-GAP-02323"},"M21-GAP-02323":{"line":5578,"offset":995899,"length":207,"previous":"M21-GAP-02322","next":"M21-GAP-02324"},"M21-GAP-02324":{"line":5579,"offset":996106,"length":196,"previous":"M21-GAP-02323","next":"M21-GAP-02325"},"M21-GAP-02325":{"line":5580,"offset":996302,"length":196,"previous":"M21-GAP-02324","next":"M21-GAP-02326"},"M21-GAP-02326":{"line":5581,"offset":996498,"length":196,"previous":"M21-GAP-02325","next":"M21-GAP-02327"},"M21-GAP-02327":{"line":5582,"offset":996694,"length":196,"previous":"M21-GAP-02326","next":"M21-GAP-02328"},"M21-GAP-02328":{"line":5583,"offset":996890,"length":196,"previous":"M21-GAP-02327","next":"M21-GAP-02329"},"M21-GAP-02329":{"line":5584,"offset":997086,"length":184,"previous":"M21-GAP-02328","next":"M21-GAP-02330"},"M21-GAP-02330":{"line":5585,"offset":997270,"length":184,"previous":"M21-GAP-02329","next":"M21-GAP-02331"},"M21-GAP-02331":{"line":5586,"offset":997454,"length":185,"previous":"M21-GAP-02330","next":"M21-GAP-02332"},"M21-GAP-02332":{"line":5587,"offset":997639,"length":185,"previous":"M21-GAP-02331","next":"M21-GAP-02333"},"M21-GAP-02333":{"line":5588,"offset":997824,"length":185,"previous":"M21-GAP-02332","next":"M21-GAP-02334"},"M21-GAP-02334":{"line":5589,"offset":998009,"length":185,"previous":"M21-GAP-02333","next":"M21-GAP-02335"},"M21-GAP-02335":{"line":5590,"offset":998194,"length":185,"previous":"M21-GAP-02334","next":"M21-GAP-02336"},"M21-GAP-02336":{"line":5591,"offset":998379,"length":185,"previous":"M21-GAP-02335","next":"M21-GAP-02337"},"M21-GAP-02337":{"line":5592,"offset":998564,"length":185,"previous":"M21-GAP-02336","next":"M21-GAP-02338"},"M21-GAP-02338":{"line":5593,"offset":998749,"length":185,"previous":"M21-GAP-02337","next":"M21-GAP-02339"},"M21-GAP-02339":{"line":5594,"offset":998934,"length":185,"previous":"M21-GAP-02338","next":"M21-GAP-02340"},"M21-GAP-02340":{"line":5595,"offset":999119,"length":185,"previous":"M21-GAP-02339","next":"M21-GAP-02341"},"M21-GAP-02341":{"line":5596,"offset":999304,"length":184,"previous":"M21-GAP-02340","next":"M21-GAP-02342"},"M21-GAP-02342":{"line":5597,"offset":999488,"length":185,"previous":"M21-GAP-02341","next":"M21-GAP-02343"},"M21-GAP-02343":{"line":5598,"offset":999673,"length":185,"previous":"M21-GAP-02342","next":"M21-GAP-02344"},"M21-GAP-02344":{"line":5599,"offset":999858,"length":185,"previous":"M21-GAP-02343","next":"M21-GAP-02345"},"M21-GAP-02345":{"line":5600,"offset":1000043,"length":185,"previous":"M21-GAP-02344","next":"M21-GAP-02346"},"M21-GAP-02346":{"line":5601,"offset":1000228,"length":185,"previous":"M21-GAP-02345","next":"M21-GAP-02347"},"M21-GAP-02347":{"line":5602,"offset":1000413,"length":185,"previous":"M21-GAP-02346","next":"M21-GAP-02348"},"M21-GAP-02348":{"line":5603,"offset":1000598,"length":185,"previous":"M21-GAP-02347","next":"M21-GAP-02349"},"M21-GAP-02349":{"line":5604,"offset":1000783,"length":185,"previous":"M21-GAP-02348","next":"M21-GAP-02350"},"M21-GAP-02350":{"line":5605,"offset":1000968,"length":185,"previous":"M21-GAP-02349","next":"M21-GAP-02351"},"M21-GAP-02351":{"line":5606,"offset":1001153,"length":185,"previous":"M21-GAP-02350","next":"M21-GAP-02352"},"M21-GAP-02352":{"line":5607,"offset":1001338,"length":184,"previous":"M21-GAP-02351","next":"M21-GAP-02353"},"M21-GAP-02353":{"line":5608,"offset":1001522,"length":185,"previous":"M21-GAP-02352","next":"M21-GAP-02354"},"M21-GAP-02354":{"line":5609,"offset":1001707,"length":185,"previous":"M21-GAP-02353","next":"M21-GAP-02355"},"M21-GAP-02355":{"line":5610,"offset":1001892,"length":185,"previous":"M21-GAP-02354","next":"M21-GAP-02356"},"M21-GAP-02356":{"line":5611,"offset":1002077,"length":185,"previous":"M21-GAP-02355","next":"M21-GAP-02357"},"M21-GAP-02357":{"line":5612,"offset":1002262,"length":185,"previous":"M21-GAP-02356","next":"M21-GAP-02358"},"M21-GAP-02358":{"line":5613,"offset":1002447,"length":185,"previous":"M21-GAP-02357","next":"M21-GAP-02359"},"M21-GAP-02359":{"line":5614,"offset":1002632,"length":185,"previous":"M21-GAP-02358","next":"M21-GAP-02360"},"M21-GAP-02360":{"line":5615,"offset":1002817,"length":185,"previous":"M21-GAP-02359","next":"M21-GAP-02361"},"M21-GAP-02361":{"line":5616,"offset":1003002,"length":185,"previous":"M21-GAP-02360","next":"M21-GAP-02362"},"M21-GAP-02362":{"line":5617,"offset":1003187,"length":185,"previous":"M21-GAP-02361","next":"M21-GAP-02363"},"M21-GAP-02363":{"line":5618,"offset":1003372,"length":184,"previous":"M21-GAP-02362","next":"M21-GAP-02364"},"M21-GAP-02364":{"line":5619,"offset":1003556,"length":185,"previous":"M21-GAP-02363","next":"M21-GAP-02365"},"M21-GAP-02365":{"line":5620,"offset":1003741,"length":185,"previous":"M21-GAP-02364","next":"M21-GAP-02366"},"M21-GAP-02366":{"line":5621,"offset":1003926,"length":185,"previous":"M21-GAP-02365","next":"M21-GAP-02367"},"M21-GAP-02367":{"line":5622,"offset":1004111,"length":185,"previous":"M21-GAP-02366","next":"M21-GAP-02368"},"M21-GAP-02368":{"line":5623,"offset":1004296,"length":185,"previous":"M21-GAP-02367","next":"M21-GAP-02369"},"M21-GAP-02369":{"line":5624,"offset":1004481,"length":185,"previous":"M21-GAP-02368","next":"M21-GAP-02370"},"M21-GAP-02370":{"line":5625,"offset":1004666,"length":185,"previous":"M21-GAP-02369","next":"M21-GAP-02371"},"M21-GAP-02371":{"line":5626,"offset":1004851,"length":185,"previous":"M21-GAP-02370","next":"M21-GAP-02372"},"M21-GAP-02372":{"line":5627,"offset":1005036,"length":185,"previous":"M21-GAP-02371","next":"M21-GAP-02373"},"M21-GAP-02373":{"line":5628,"offset":1005221,"length":185,"previous":"M21-GAP-02372","next":"M21-GAP-02374"},"M21-GAP-02374":{"line":5629,"offset":1005406,"length":184,"previous":"M21-GAP-02373","next":"M21-GAP-02375"},"M21-GAP-02375":{"line":5630,"offset":1005590,"length":185,"previous":"M21-GAP-02374","next":"M21-GAP-02376"},"M21-GAP-02376":{"line":5631,"offset":1005775,"length":185,"previous":"M21-GAP-02375","next":"M21-GAP-02377"},"M21-GAP-02377":{"line":5632,"offset":1005960,"length":185,"previous":"M21-GAP-02376","next":"M21-GAP-02378"},"M21-GAP-02378":{"line":5633,"offset":1006145,"length":185,"previous":"M21-GAP-02377","next":"M21-GAP-02379"},"M21-GAP-02379":{"line":5634,"offset":1006330,"length":185,"previous":"M21-GAP-02378","next":"M21-GAP-02380"},"M21-GAP-02380":{"line":5635,"offset":1006515,"length":185,"previous":"M21-GAP-02379","next":"M21-GAP-02381"},"M21-GAP-02381":{"line":5636,"offset":1006700,"length":185,"previous":"M21-GAP-02380","next":"M21-GAP-02382"},"M21-GAP-02382":{"line":5637,"offset":1006885,"length":185,"previous":"M21-GAP-02381","next":"M21-GAP-02383"},"M21-GAP-02383":{"line":5638,"offset":1007070,"length":185,"previous":"M21-GAP-02382","next":"M21-GAP-02384"},"M21-GAP-02384":{"line":5639,"offset":1007255,"length":185,"previous":"M21-GAP-02383","next":"M21-GAP-02385"},"M21-GAP-02385":{"line":5640,"offset":1007440,"length":184,"previous":"M21-GAP-02384","next":"M21-GAP-02386"},"M21-GAP-02386":{"line":5641,"offset":1007624,"length":185,"previous":"M21-GAP-02385","next":"M21-GAP-02387"},"M21-GAP-02387":{"line":5642,"offset":1007809,"length":185,"previous":"M21-GAP-02386","next":"M21-GAP-02388"},"M21-GAP-02388":{"line":5643,"offset":1007994,"length":185,"previous":"M21-GAP-02387","next":"M21-GAP-02389"},"M21-GAP-02389":{"line":5644,"offset":1008179,"length":185,"previous":"M21-GAP-02388","next":"M21-GAP-02390"},"M21-GAP-02390":{"line":5645,"offset":1008364,"length":185,"previous":"M21-GAP-02389","next":"M21-GAP-02391"},"M21-GAP-02391":{"line":5646,"offset":1008549,"length":185,"previous":"M21-GAP-02390","next":"M21-GAP-02392"},"M21-GAP-02392":{"line":5647,"offset":1008734,"length":185,"previous":"M21-GAP-02391","next":"M21-GAP-02393"},"M21-GAP-02393":{"line":5648,"offset":1008919,"length":185,"previous":"M21-GAP-02392","next":"M21-GAP-02394"},"M21-GAP-02394":{"line":5649,"offset":1009104,"length":185,"previous":"M21-GAP-02393","next":"M21-GAP-02395"},"M21-GAP-02395":{"line":5650,"offset":1009289,"length":185,"previous":"M21-GAP-02394","next":"M21-GAP-02396"},"M21-GAP-02396":{"line":5651,"offset":1009474,"length":184,"previous":"M21-GAP-02395","next":"M21-GAP-02397"},"M21-GAP-02397":{"line":5652,"offset":1009658,"length":185,"previous":"M21-GAP-02396","next":"M21-GAP-02398"},"M21-GAP-02398":{"line":5653,"offset":1009843,"length":185,"previous":"M21-GAP-02397","next":"M21-GAP-02399"},"M21-GAP-02399":{"line":5654,"offset":1010028,"length":185,"previous":"M21-GAP-02398","next":"M21-GAP-02400"},"M21-GAP-02400":{"line":5655,"offset":1010213,"length":185,"previous":"M21-GAP-02399","next":"M21-GAP-02401"},"M21-GAP-02401":{"line":5656,"offset":1010398,"length":185,"previous":"M21-GAP-02400","next":"M21-GAP-02402"},"M21-GAP-02402":{"line":5657,"offset":1010583,"length":185,"previous":"M21-GAP-02401","next":"M21-GAP-02403"},"M21-GAP-02403":{"line":5658,"offset":1010768,"length":185,"previous":"M21-GAP-02402","next":"M21-GAP-02404"},"M21-GAP-02404":{"line":5659,"offset":1010953,"length":185,"previous":"M21-GAP-02403","next":"M21-GAP-02405"},"M21-GAP-02405":{"line":5660,"offset":1011138,"length":185,"previous":"M21-GAP-02404","next":"M21-GAP-02406"},"M21-GAP-02406":{"line":5661,"offset":1011323,"length":185,"previous":"M21-GAP-02405","next":"M21-GAP-02407"},"M21-GAP-02407":{"line":5662,"offset":1011508,"length":184,"previous":"M21-GAP-02406","next":"M21-GAP-02408"},"M21-GAP-02408":{"line":5663,"offset":1011692,"length":185,"previous":"M21-GAP-02407","next":"M21-GAP-02409"},"M21-GAP-02409":{"line":5664,"offset":1011877,"length":185,"previous":"M21-GAP-02408","next":"M21-GAP-02410"},"M21-GAP-02410":{"line":5665,"offset":1012062,"length":185,"previous":"M21-GAP-02409","next":"M21-GAP-02411"},"M21-GAP-02411":{"line":5666,"offset":1012247,"length":185,"previous":"M21-GAP-02410","next":"M21-GAP-02412"},"M21-GAP-02412":{"line":5667,"offset":1012432,"length":185,"previous":"M21-GAP-02411","next":"M21-GAP-02413"},"M21-GAP-02413":{"line":5668,"offset":1012617,"length":185,"previous":"M21-GAP-02412","next":"M21-GAP-02414"},"M21-GAP-02414":{"line":5669,"offset":1012802,"length":185,"previous":"M21-GAP-02413","next":"M21-GAP-02415"},"M21-GAP-02415":{"line":5670,"offset":1012987,"length":185,"previous":"M21-GAP-02414","next":"M21-GAP-02416"},"M21-GAP-02416":{"line":5671,"offset":1013172,"length":184,"previous":"M21-GAP-02415","next":"M21-GAP-02417"},"M21-GAP-02417":{"line":5672,"offset":1013356,"length":191,"previous":"M21-GAP-02416","next":"M21-GAP-02418"},"M21-GAP-02418":{"line":5673,"offset":1013547,"length":191,"previous":"M21-GAP-02417","next":"M21-GAP-02419"},"M21-GAP-02419":{"line":5674,"offset":1013738,"length":192,"previous":"M21-GAP-02418","next":"M21-GAP-02420"},"M21-GAP-02420":{"line":5675,"offset":1013930,"length":192,"previous":"M21-GAP-02419","next":"M21-GAP-02421"},"M21-GAP-02421":{"line":5676,"offset":1014122,"length":192,"previous":"M21-GAP-02420","next":"M21-GAP-02422"},"M21-GAP-02422":{"line":5677,"offset":1014314,"length":192,"previous":"M21-GAP-02421","next":"M21-GAP-02423"},"M21-GAP-02423":{"line":5678,"offset":1014506,"length":191,"previous":"M21-GAP-02422","next":"M21-GAP-02424"},"M21-GAP-02424":{"line":5679,"offset":1014697,"length":191,"previous":"M21-GAP-02423","next":"M21-GAP-02425"},"M21-GAP-02425":{"line":5680,"offset":1014888,"length":191,"previous":"M21-GAP-02424","next":"M21-GAP-02426"},"M21-GAP-02426":{"line":5681,"offset":1015079,"length":191,"previous":"M21-GAP-02425","next":"M21-GAP-02427"},"M21-GAP-02427":{"line":5682,"offset":1015270,"length":191,"previous":"M21-GAP-02426","next":"M21-GAP-02428"},"M21-GAP-02428":{"line":5683,"offset":1015461,"length":191,"previous":"M21-GAP-02427","next":"M21-GAP-02429"},"M21-GAP-02429":{"line":5684,"offset":1015652,"length":191,"previous":"M21-GAP-02428","next":"M21-GAP-02430"},"M21-GAP-02430":{"line":5685,"offset":1015843,"length":191,"previous":"M21-GAP-02429","next":"M21-GAP-02431"},"M21-GAP-02431":{"line":5686,"offset":1016034,"length":187,"previous":"M21-GAP-02430","next":"M21-GAP-02432"},"M21-GAP-02432":{"line":5687,"offset":1016221,"length":187,"previous":"M21-GAP-02431","next":"M21-GAP-02433"},"M21-GAP-02433":{"line":5688,"offset":1016408,"length":188,"previous":"M21-GAP-02432","next":"M21-GAP-02434"},"M21-GAP-02434":{"line":5689,"offset":1016596,"length":188,"previous":"M21-GAP-02433","next":"M21-GAP-02435"},"M21-GAP-02435":{"line":5690,"offset":1016784,"length":188,"previous":"M21-GAP-02434","next":"M21-GAP-02436"},"M21-GAP-02436":{"line":5691,"offset":1016972,"length":188,"previous":"M21-GAP-02435","next":"M21-GAP-02437"},"M21-GAP-02437":{"line":5692,"offset":1017160,"length":188,"previous":"M21-GAP-02436","next":"M21-GAP-02438"},"M21-GAP-02438":{"line":5693,"offset":1017348,"length":188,"previous":"M21-GAP-02437","next":"M21-GAP-02439"},"M21-GAP-02439":{"line":5694,"offset":1017536,"length":188,"previous":"M21-GAP-02438","next":"M21-GAP-02440"},"M21-GAP-02440":{"line":5695,"offset":1017724,"length":188,"previous":"M21-GAP-02439","next":"M21-GAP-02441"},"M21-GAP-02441":{"line":5696,"offset":1017912,"length":188,"previous":"M21-GAP-02440","next":"M21-GAP-02442"},"M21-GAP-02442":{"line":5697,"offset":1018100,"length":188,"previous":"M21-GAP-02441","next":"M21-GAP-02443"},"M21-GAP-02443":{"line":5698,"offset":1018288,"length":187,"previous":"M21-GAP-02442","next":"M21-GAP-02444"},"M21-GAP-02444":{"line":5699,"offset":1018475,"length":187,"previous":"M21-GAP-02443","next":"M21-GAP-02445"},"M21-GAP-02445":{"line":5700,"offset":1018662,"length":187,"previous":"M21-GAP-02444","next":"M21-GAP-02446"},"M21-GAP-02446":{"line":5701,"offset":1018849,"length":187,"previous":"M21-GAP-02445","next":"M21-GAP-02447"},"M21-GAP-02447":{"line":5702,"offset":1019036,"length":187,"previous":"M21-GAP-02446","next":"M21-GAP-02448"},"M21-GAP-02448":{"line":5703,"offset":1019223,"length":187,"previous":"M21-GAP-02447","next":"M21-GAP-02449"},"M21-GAP-02449":{"line":5704,"offset":1019410,"length":187,"previous":"M21-GAP-02448","next":"M21-GAP-02450"},"M21-GAP-02450":{"line":5705,"offset":1019597,"length":187,"previous":"M21-GAP-02449","next":"M21-GAP-02451"},"M21-GAP-02451":{"line":5706,"offset":1019784,"length":186,"previous":"M21-GAP-02450","next":"M21-GAP-02452"},"M21-GAP-02452":{"line":5707,"offset":1019970,"length":181,"previous":"M21-GAP-02451","next":"M21-GAP-02453"},"M21-GAP-02453":{"line":5708,"offset":1020151,"length":181,"previous":"M21-GAP-02452","next":"M21-GAP-02454"},"M21-GAP-02454":{"line":5709,"offset":1020332,"length":182,"previous":"M21-GAP-02453","next":"M21-GAP-02455"},"M21-GAP-02455":{"line":5710,"offset":1020514,"length":182,"previous":"M21-GAP-02454","next":"M21-GAP-02456"},"M21-GAP-02456":{"line":5711,"offset":1020696,"length":182,"previous":"M21-GAP-02455","next":"M21-GAP-02457"},"M21-GAP-02457":{"line":5712,"offset":1020878,"length":182,"previous":"M21-GAP-02456","next":"M21-GAP-02458"},"M21-GAP-02458":{"line":5713,"offset":1021060,"length":181,"previous":"M21-GAP-02457","next":"M21-GAP-02459"},"M21-GAP-02459":{"line":5714,"offset":1021241,"length":181,"previous":"M21-GAP-02458","next":"M21-GAP-02460"},"M21-GAP-02460":{"line":5715,"offset":1021422,"length":181,"previous":"M21-GAP-02459","next":"M21-GAP-02461"},"M21-GAP-02461":{"line":5716,"offset":1021603,"length":181,"previous":"M21-GAP-02460","next":"M21-GAP-02462"},"M21-GAP-02462":{"line":5717,"offset":1021784,"length":181,"previous":"M21-GAP-02461","next":"M21-GAP-02463"},"M21-GAP-02463":{"line":5718,"offset":1021965,"length":181,"previous":"M21-GAP-02462","next":"M21-GAP-02464"},"M21-GAP-02464":{"line":5719,"offset":1022146,"length":181,"previous":"M21-GAP-02463","next":"M21-GAP-02465"},"M21-GAP-02465":{"line":5720,"offset":1022327,"length":181,"previous":"M21-GAP-02464","next":"M21-GAP-02466"},"M21-GAP-02466":{"line":5721,"offset":1022508,"length":173,"previous":"M21-GAP-02465","next":"M21-GAP-02467"},"M21-GAP-02467":{"line":5722,"offset":1022681,"length":173,"previous":"M21-GAP-02466","next":"M21-GAP-02468"},"M21-GAP-02468":{"line":5723,"offset":1022854,"length":174,"previous":"M21-GAP-02467","next":"M21-GAP-02469"},"M21-GAP-02469":{"line":5724,"offset":1023028,"length":174,"previous":"M21-GAP-02468","next":"M21-GAP-02470"},"M21-GAP-02470":{"line":5725,"offset":1023202,"length":174,"previous":"M21-GAP-02469","next":"M21-GAP-02471"},"M21-GAP-02471":{"line":5726,"offset":1023376,"length":174,"previous":"M21-GAP-02470","next":"M21-GAP-02472"},"M21-GAP-02472":{"line":5727,"offset":1023550,"length":174,"previous":"M21-GAP-02471","next":"M21-GAP-02473"},"M21-GAP-02473":{"line":5728,"offset":1023724,"length":174,"previous":"M21-GAP-02472","next":"M21-GAP-02474"},"M21-GAP-02474":{"line":5729,"offset":1023898,"length":174,"previous":"M21-GAP-02473","next":"M21-GAP-02475"},"M21-GAP-02475":{"line":5730,"offset":1024072,"length":174,"previous":"M21-GAP-02474","next":"M21-GAP-02476"},"M21-GAP-02476":{"line":5731,"offset":1024246,"length":174,"previous":"M21-GAP-02475","next":"M21-GAP-02477"},"M21-GAP-02477":{"line":5732,"offset":1024420,"length":174,"previous":"M21-GAP-02476","next":"M21-GAP-02478"},"M21-GAP-02478":{"line":5733,"offset":1024594,"length":173,"previous":"M21-GAP-02477","next":"M21-GAP-02479"},"M21-GAP-02479":{"line":5734,"offset":1024767,"length":174,"previous":"M21-GAP-02478","next":"M21-GAP-02480"},"M21-GAP-02480":{"line":5735,"offset":1024941,"length":174,"previous":"M21-GAP-02479","next":"M21-GAP-02481"},"M21-GAP-02481":{"line":5736,"offset":1025115,"length":174,"previous":"M21-GAP-02480","next":"M21-GAP-02482"},"M21-GAP-02482":{"line":5737,"offset":1025289,"length":174,"previous":"M21-GAP-02481","next":"M21-GAP-02483"},"M21-GAP-02483":{"line":5738,"offset":1025463,"length":174,"previous":"M21-GAP-02482","next":"M21-GAP-02484"},"M21-GAP-02484":{"line":5739,"offset":1025637,"length":174,"previous":"M21-GAP-02483","next":"M21-GAP-02485"},"M21-GAP-02485":{"line":5740,"offset":1025811,"length":173,"previous":"M21-GAP-02484","next":"M21-GAP-02486"},"M21-GAP-02486":{"line":5741,"offset":1025984,"length":173,"previous":"M21-GAP-02485","next":"M21-GAP-02487"},"M21-GAP-02487":{"line":5742,"offset":1026157,"length":173,"previous":"M21-GAP-02486","next":"M21-GAP-02488"},"M21-GAP-02488":{"line":5743,"offset":1026330,"length":173,"previous":"M21-GAP-02487","next":"M21-GAP-02489"},"M21-GAP-02489":{"line":5744,"offset":1026503,"length":173,"previous":"M21-GAP-02488","next":"M21-GAP-02490"},"M21-GAP-02490":{"line":5745,"offset":1026676,"length":173,"previous":"M21-GAP-02489","next":"M21-GAP-02491"},"M21-GAP-02491":{"line":5746,"offset":1026849,"length":173,"previous":"M21-GAP-02490","next":"M21-GAP-02492"},"M21-GAP-02492":{"line":5747,"offset":1027022,"length":180,"previous":"M21-GAP-02491","next":"M21-GAP-02493"},"M21-GAP-02493":{"line":5748,"offset":1027202,"length":180,"previous":"M21-GAP-02492","next":"M21-GAP-02494"},"M21-GAP-02494":{"line":5749,"offset":1027382,"length":181,"previous":"M21-GAP-02493","next":"M21-GAP-02495"},"M21-GAP-02495":{"line":5750,"offset":1027563,"length":181,"previous":"M21-GAP-02494","next":"M21-GAP-02496"},"M21-GAP-02496":{"line":5751,"offset":1027744,"length":181,"previous":"M21-GAP-02495","next":"M21-GAP-02497"},"M21-GAP-02497":{"line":5752,"offset":1027925,"length":181,"previous":"M21-GAP-02496","next":"M21-GAP-02498"},"M21-GAP-02498":{"line":5753,"offset":1028106,"length":181,"previous":"M21-GAP-02497","next":"M21-GAP-02499"},"M21-GAP-02499":{"line":5754,"offset":1028287,"length":181,"previous":"M21-GAP-02498","next":"M21-GAP-02500"},"M21-GAP-02500":{"line":5755,"offset":1028468,"length":180,"previous":"M21-GAP-02499","next":"M21-GAP-02501"},"M21-GAP-02501":{"line":5756,"offset":1028648,"length":180,"previous":"M21-GAP-02500","next":"M21-GAP-02502"},"M21-GAP-02502":{"line":5757,"offset":1028828,"length":180,"previous":"M21-GAP-02501","next":"M21-GAP-02503"},"M21-GAP-02503":{"line":5758,"offset":1029008,"length":180,"previous":"M21-GAP-02502","next":"M21-GAP-02504"},"M21-GAP-02504":{"line":5759,"offset":1029188,"length":180,"previous":"M21-GAP-02503","next":"M21-GAP-02505"},"M21-GAP-02505":{"line":5760,"offset":1029368,"length":180,"previous":"M21-GAP-02504","next":"M21-GAP-02506"},"M21-GAP-02506":{"line":5761,"offset":1029548,"length":180,"previous":"M21-GAP-02505","next":"M21-GAP-02507"},"M21-GAP-02507":{"line":5762,"offset":1029728,"length":180,"previous":"M21-GAP-02506","next":"M21-GAP-02508"},"M21-GAP-02508":{"line":5763,"offset":1029908,"length":186,"previous":"M21-GAP-02507","next":"M21-GAP-02509"},"M21-GAP-02509":{"line":5764,"offset":1030094,"length":186,"previous":"M21-GAP-02508","next":"M21-GAP-02510"},"M21-GAP-02510":{"line":5765,"offset":1030280,"length":187,"previous":"M21-GAP-02509","next":"M21-GAP-02511"},"M21-GAP-02511":{"line":5766,"offset":1030467,"length":187,"previous":"M21-GAP-02510","next":"M21-GAP-02512"},"M21-GAP-02512":{"line":5767,"offset":1030654,"length":187,"previous":"M21-GAP-02511","next":"M21-GAP-02513"},"M21-GAP-02513":{"line":5768,"offset":1030841,"length":187,"previous":"M21-GAP-02512","next":"M21-GAP-02514"},"M21-GAP-02514":{"line":5769,"offset":1031028,"length":187,"previous":"M21-GAP-02513","next":"M21-GAP-02515"},"M21-GAP-02515":{"line":5770,"offset":1031215,"length":187,"previous":"M21-GAP-02514","next":"M21-GAP-02516"},"M21-GAP-02516":{"line":5771,"offset":1031402,"length":187,"previous":"M21-GAP-02515","next":"M21-GAP-02517"},"M21-GAP-02517":{"line":5772,"offset":1031589,"length":187,"previous":"M21-GAP-02516","next":"M21-GAP-02518"},"M21-GAP-02518":{"line":5773,"offset":1031776,"length":187,"previous":"M21-GAP-02517","next":"M21-GAP-02519"},"M21-GAP-02519":{"line":5774,"offset":1031963,"length":187,"previous":"M21-GAP-02518","next":"M21-GAP-02520"},"M21-GAP-02520":{"line":5775,"offset":1032150,"length":186,"previous":"M21-GAP-02519","next":"M21-GAP-02521"},"M21-GAP-02521":{"line":5776,"offset":1032336,"length":187,"previous":"M21-GAP-02520","next":"M21-GAP-02522"},"M21-GAP-02522":{"line":5777,"offset":1032523,"length":187,"previous":"M21-GAP-02521","next":"M21-GAP-02523"},"M21-GAP-02523":{"line":5778,"offset":1032710,"length":187,"previous":"M21-GAP-02522","next":"M21-GAP-02524"},"M21-GAP-02524":{"line":5779,"offset":1032897,"length":187,"previous":"M21-GAP-02523","next":"M21-GAP-02525"},"M21-GAP-02525":{"line":5780,"offset":1033084,"length":187,"previous":"M21-GAP-02524","next":"M21-GAP-02526"},"M21-GAP-02526":{"line":5781,"offset":1033271,"length":186,"previous":"M21-GAP-02525","next":"M21-GAP-02527"},"M21-GAP-02527":{"line":5782,"offset":1033457,"length":186,"previous":"M21-GAP-02526","next":"M21-GAP-02528"},"M21-GAP-02528":{"line":5783,"offset":1033643,"length":186,"previous":"M21-GAP-02527","next":"M21-GAP-02529"},"M21-GAP-02529":{"line":5784,"offset":1033829,"length":186,"previous":"M21-GAP-02528","next":"M21-GAP-02530"},"M21-GAP-02530":{"line":5785,"offset":1034015,"length":186,"previous":"M21-GAP-02529","next":"M21-GAP-02531"},"M21-GAP-02531":{"line":5786,"offset":1034201,"length":186,"previous":"M21-GAP-02530","next":"M21-GAP-02532"},"M21-GAP-02532":{"line":5787,"offset":1034387,"length":186,"previous":"M21-GAP-02531","next":"M21-GAP-02533"},"M21-GAP-02533":{"line":5788,"offset":1034573,"length":173,"previous":"M21-GAP-02532","next":"M21-GAP-02534"},"M21-GAP-02534":{"line":5789,"offset":1034746,"length":173,"previous":"M21-GAP-02533","next":"M21-GAP-02535"},"M21-GAP-02535":{"line":5790,"offset":1034919,"length":174,"previous":"M21-GAP-02534","next":"M21-GAP-02536"},"M21-GAP-02536":{"line":5791,"offset":1035093,"length":174,"previous":"M21-GAP-02535","next":"M21-GAP-02537"},"M21-GAP-02537":{"line":5792,"offset":1035267,"length":174,"previous":"M21-GAP-02536","next":"M21-GAP-02538"},"M21-GAP-02538":{"line":5793,"offset":1035441,"length":174,"previous":"M21-GAP-02537","next":"M21-GAP-02539"},"M21-GAP-02539":{"line":5794,"offset":1035615,"length":174,"previous":"M21-GAP-02538","next":"M21-GAP-02540"},"M21-GAP-02540":{"line":5795,"offset":1035789,"length":174,"previous":"M21-GAP-02539","next":"M21-GAP-02541"},"M21-GAP-02541":{"line":5796,"offset":1035963,"length":174,"previous":"M21-GAP-02540","next":"M21-GAP-02542"},"M21-GAP-02542":{"line":5797,"offset":1036137,"length":174,"previous":"M21-GAP-02541","next":"M21-GAP-02543"},"M21-GAP-02543":{"line":5798,"offset":1036311,"length":174,"previous":"M21-GAP-02542","next":"M21-GAP-02544"},"M21-GAP-02544":{"line":5799,"offset":1036485,"length":174,"previous":"M21-GAP-02543","next":"M21-GAP-02545"},"M21-GAP-02545":{"line":5800,"offset":1036659,"length":173,"previous":"M21-GAP-02544","next":"M21-GAP-02546"},"M21-GAP-02546":{"line":5801,"offset":1036832,"length":174,"previous":"M21-GAP-02545","next":"M21-GAP-02547"},"M21-GAP-02547":{"line":5802,"offset":1037006,"length":174,"previous":"M21-GAP-02546","next":"M21-GAP-02548"},"M21-GAP-02548":{"line":5803,"offset":1037180,"length":174,"previous":"M21-GAP-02547","next":"M21-GAP-02549"},"M21-GAP-02549":{"line":5804,"offset":1037354,"length":174,"previous":"M21-GAP-02548","next":"M21-GAP-02550"},"M21-GAP-02550":{"line":5805,"offset":1037528,"length":174,"previous":"M21-GAP-02549","next":"M21-GAP-02551"},"M21-GAP-02551":{"line":5806,"offset":1037702,"length":174,"previous":"M21-GAP-02550","next":"M21-GAP-02552"},"M21-GAP-02552":{"line":5807,"offset":1037876,"length":174,"previous":"M21-GAP-02551","next":"M21-GAP-02553"},"M21-GAP-02553":{"line":5808,"offset":1038050,"length":174,"previous":"M21-GAP-02552","next":"M21-GAP-02554"},"M21-GAP-02554":{"line":5809,"offset":1038224,"length":174,"previous":"M21-GAP-02553","next":"M21-GAP-02555"},"M21-GAP-02555":{"line":5810,"offset":1038398,"length":174,"previous":"M21-GAP-02554","next":"M21-GAP-02556"},"M21-GAP-02556":{"line":5811,"offset":1038572,"length":173,"previous":"M21-GAP-02555","next":"M21-GAP-02557"},"M21-GAP-02557":{"line":5812,"offset":1038745,"length":174,"previous":"M21-GAP-02556","next":"M21-GAP-02558"},"M21-GAP-02558":{"line":5813,"offset":1038919,"length":174,"previous":"M21-GAP-02557","next":"M21-GAP-02559"},"M21-GAP-02559":{"line":5814,"offset":1039093,"length":174,"previous":"M21-GAP-02558","next":"M21-GAP-02560"},"M21-GAP-02560":{"line":5815,"offset":1039267,"length":174,"previous":"M21-GAP-02559","next":"M21-GAP-02561"},"M21-GAP-02561":{"line":5816,"offset":1039441,"length":174,"previous":"M21-GAP-02560","next":"M21-GAP-02562"},"M21-GAP-02562":{"line":5817,"offset":1039615,"length":174,"previous":"M21-GAP-02561","next":"M21-GAP-02563"},"M21-GAP-02563":{"line":5818,"offset":1039789,"length":174,"previous":"M21-GAP-02562","next":"M21-GAP-02564"},"M21-GAP-02564":{"line":5819,"offset":1039963,"length":174,"previous":"M21-GAP-02563","next":"M21-GAP-02565"},"M21-GAP-02565":{"line":5820,"offset":1040137,"length":174,"previous":"M21-GAP-02564","next":"M21-GAP-02566"},"M21-GAP-02566":{"line":5821,"offset":1040311,"length":174,"previous":"M21-GAP-02565","next":"M21-GAP-02567"},"M21-GAP-02567":{"line":5822,"offset":1040485,"length":173,"previous":"M21-GAP-02566","next":"M21-GAP-02568"},"M21-GAP-02568":{"line":5823,"offset":1040658,"length":174,"previous":"M21-GAP-02567","next":"M21-GAP-02569"},"M21-GAP-02569":{"line":5824,"offset":1040832,"length":174,"previous":"M21-GAP-02568","next":"M21-GAP-02570"},"M21-GAP-02570":{"line":5825,"offset":1041006,"length":174,"previous":"M21-GAP-02569","next":"M21-GAP-02571"},"M21-GAP-02571":{"line":5826,"offset":1041180,"length":174,"previous":"M21-GAP-02570","next":"M21-GAP-02572"},"M21-GAP-02572":{"line":5827,"offset":1041354,"length":174,"previous":"M21-GAP-02571","next":"M21-GAP-02573"},"M21-GAP-02573":{"line":5828,"offset":1041528,"length":174,"previous":"M21-GAP-02572","next":"M21-GAP-02574"},"M21-GAP-02574":{"line":5829,"offset":1041702,"length":174,"previous":"M21-GAP-02573","next":"M21-GAP-02575"},"M21-GAP-02575":{"line":5830,"offset":1041876,"length":174,"previous":"M21-GAP-02574","next":"M21-GAP-02576"},"M21-GAP-02576":{"line":5831,"offset":1042050,"length":174,"previous":"M21-GAP-02575","next":"M21-GAP-02577"},"M21-GAP-02577":{"line":5832,"offset":1042224,"length":174,"previous":"M21-GAP-02576","next":"M21-GAP-02578"},"M21-GAP-02578":{"line":5833,"offset":1042398,"length":173,"previous":"M21-GAP-02577","next":"M21-GAP-02579"},"M21-GAP-02579":{"line":5834,"offset":1042571,"length":174,"previous":"M21-GAP-02578","next":"M21-GAP-02580"},"M21-GAP-02580":{"line":5835,"offset":1042745,"length":174,"previous":"M21-GAP-02579","next":"M21-GAP-02581"},"M21-GAP-02581":{"line":5836,"offset":1042919,"length":174,"previous":"M21-GAP-02580","next":"M21-GAP-02582"},"M21-GAP-02582":{"line":5837,"offset":1043093,"length":174,"previous":"M21-GAP-02581","next":"M21-GAP-02583"},"M21-GAP-02583":{"line":5838,"offset":1043267,"length":174,"previous":"M21-GAP-02582","next":"M21-GAP-02584"},"M21-GAP-02584":{"line":5839,"offset":1043441,"length":174,"previous":"M21-GAP-02583","next":"M21-GAP-02585"},"M21-GAP-02585":{"line":5840,"offset":1043615,"length":174,"previous":"M21-GAP-02584","next":"M21-GAP-02586"},"M21-GAP-02586":{"line":5841,"offset":1043789,"length":174,"previous":"M21-GAP-02585","next":"M21-GAP-02587"},"M21-GAP-02587":{"line":5842,"offset":1043963,"length":174,"previous":"M21-GAP-02586","next":"M21-GAP-02588"},"M21-GAP-02588":{"line":5843,"offset":1044137,"length":174,"previous":"M21-GAP-02587","next":"M21-GAP-02589"},"M21-GAP-02589":{"line":5844,"offset":1044311,"length":173,"previous":"M21-GAP-02588","next":"M21-GAP-02590"},"M21-GAP-02590":{"line":5845,"offset":1044484,"length":174,"previous":"M21-GAP-02589","next":"M21-GAP-02591"},"M21-GAP-02591":{"line":5846,"offset":1044658,"length":174,"previous":"M21-GAP-02590","next":"M21-GAP-02592"},"M21-GAP-02592":{"line":5847,"offset":1044832,"length":174,"previous":"M21-GAP-02591","next":"M21-GAP-02593"},"M21-GAP-02593":{"line":5848,"offset":1045006,"length":174,"previous":"M21-GAP-02592","next":"M21-GAP-02594"},"M21-GAP-02594":{"line":5849,"offset":1045180,"length":174,"previous":"M21-GAP-02593","next":"M21-GAP-02595"},"M21-GAP-02595":{"line":5850,"offset":1045354,"length":174,"previous":"M21-GAP-02594","next":"M21-GAP-02596"},"M21-GAP-02596":{"line":5851,"offset":1045528,"length":174,"previous":"M21-GAP-02595","next":"M21-GAP-02597"},"M21-GAP-02597":{"line":5852,"offset":1045702,"length":173,"previous":"M21-GAP-02596","next":"M21-GAP-02598"},"M21-GAP-02598":{"line":5853,"offset":1045875,"length":173,"previous":"M21-GAP-02597","next":"M21-GAP-02599"},"M21-GAP-02599":{"line":5854,"offset":1046048,"length":173,"previous":"M21-GAP-02598","next":"M21-GAP-02600"},"M21-GAP-02600":{"line":5855,"offset":1046221,"length":195,"previous":"M21-GAP-02599","next":"M21-GAP-02601"},"M21-GAP-02601":{"line":5856,"offset":1046416,"length":195,"previous":"M21-GAP-02600","next":"M21-GAP-02602"},"M21-GAP-02602":{"line":5857,"offset":1046611,"length":198,"previous":"M21-GAP-02601","next":"M21-GAP-02603"},"M21-GAP-02603":{"line":5858,"offset":1046809,"length":198,"previous":"M21-GAP-02602","next":"M21-GAP-02604"},"M21-GAP-02604":{"line":5859,"offset":1047007,"length":198,"previous":"M21-GAP-02603","next":"M21-GAP-02605"},"M21-GAP-02605":{"line":5860,"offset":1047205,"length":198,"previous":"M21-GAP-02604","next":"M21-GAP-02606"},"M21-GAP-02606":{"line":5861,"offset":1047403,"length":198,"previous":"M21-GAP-02605","next":"M21-GAP-02607"},"M21-GAP-02607":{"line":5862,"offset":1047601,"length":198,"previous":"M21-GAP-02606","next":"M21-GAP-02608"},"M21-GAP-02608":{"line":5863,"offset":1047799,"length":214,"previous":"M21-GAP-02607","next":"M21-GAP-02609"},"M21-GAP-02609":{"line":5864,"offset":1048013,"length":214,"previous":"M21-GAP-02608","next":"M21-GAP-02610"},"M21-GAP-02610":{"line":5865,"offset":1048227,"length":214,"previous":"M21-GAP-02609","next":"M21-GAP-02611"},"M21-GAP-02611":{"line":5866,"offset":1048441,"length":214,"previous":"M21-GAP-02610","next":"M21-GAP-02612"},"M21-GAP-02612":{"line":5867,"offset":1048655,"length":214,"previous":"M21-GAP-02611","next":"M21-GAP-02613"},"M21-GAP-02613":{"line":5868,"offset":1048869,"length":214,"previous":"M21-GAP-02612","next":"M21-GAP-02614"},"M21-GAP-02614":{"line":5869,"offset":1049083,"length":203,"previous":"M21-GAP-02613","next":"M21-GAP-02615"},"M21-GAP-02615":{"line":5870,"offset":1049286,"length":203,"previous":"M21-GAP-02614","next":"M21-GAP-02616"},"M21-GAP-02616":{"line":5871,"offset":1049489,"length":203,"previous":"M21-GAP-02615","next":"M21-GAP-02617"},"M21-GAP-02617":{"line":5872,"offset":1049692,"length":203,"previous":"M21-GAP-02616","next":"M21-GAP-02618"},"M21-GAP-02618":{"line":5873,"offset":1049895,"length":203,"previous":"M21-GAP-02617","next":"M21-GAP-02619"},"M21-GAP-02619":{"line":5874,"offset":1050098,"length":203,"previous":"M21-GAP-02618","next":"M21-GAP-02620"},"M21-GAP-02620":{"line":5875,"offset":1050301,"length":217,"previous":"M21-GAP-02619","next":"M21-GAP-02621"},"M21-GAP-02621":{"line":5876,"offset":1050518,"length":217,"previous":"M21-GAP-02620","next":"M21-GAP-02622"},"M21-GAP-02622":{"line":5877,"offset":1050735,"length":217,"previous":"M21-GAP-02621","next":"M21-GAP-02623"},"M21-GAP-02623":{"line":5878,"offset":1050952,"length":206,"previous":"M21-GAP-02622","next":"M21-GAP-02624"},"M21-GAP-02624":{"line":5879,"offset":1051158,"length":206,"previous":"M21-GAP-02623","next":"M21-GAP-02625"},"M21-GAP-02625":{"line":5880,"offset":1051364,"length":206,"previous":"M21-GAP-02624","next":"M21-GAP-02626"},"M21-GAP-02626":{"line":5881,"offset":1051570,"length":216,"previous":"M21-GAP-02625","next":"M21-GAP-02627"},"M21-GAP-02627":{"line":5882,"offset":1051786,"length":216,"previous":"M21-GAP-02626","next":"M21-GAP-02628"},"M21-GAP-02628":{"line":5883,"offset":1052002,"length":216,"previous":"M21-GAP-02627","next":"M21-GAP-02629"},"M21-GAP-02629":{"line":5884,"offset":1052218,"length":205,"previous":"M21-GAP-02628","next":"M21-GAP-02630"},"M21-GAP-02630":{"line":5885,"offset":1052423,"length":205,"previous":"M21-GAP-02629","next":"M21-GAP-02631"},"M21-GAP-02631":{"line":5886,"offset":1052628,"length":205,"previous":"M21-GAP-02630","next":"M21-GAP-02632"},"M21-GAP-02632":{"line":5887,"offset":1052833,"length":197,"previous":"M21-GAP-02631","next":"M21-GAP-02633"},"M21-GAP-02633":{"line":5888,"offset":1053030,"length":197,"previous":"M21-GAP-02632","next":"M21-GAP-02634"},"M21-GAP-02634":{"line":5889,"offset":1053227,"length":186,"previous":"M21-GAP-02633","next":"M21-GAP-02635"},"M21-GAP-02635":{"line":5890,"offset":1053413,"length":186,"previous":"M21-GAP-02634","next":"M21-GAP-02636"},"M21-GAP-02636":{"line":5891,"offset":1053599,"length":187,"previous":"M21-GAP-02635","next":"M21-GAP-02637"},"M21-GAP-02637":{"line":5892,"offset":1053786,"length":187,"previous":"M21-GAP-02636","next":"M21-GAP-02638"},"M21-GAP-02638":{"line":5893,"offset":1053973,"length":187,"previous":"M21-GAP-02637","next":"M21-GAP-02639"},"M21-GAP-02639":{"line":5894,"offset":1054160,"length":187,"previous":"M21-GAP-02638","next":"M21-GAP-02640"},"M21-GAP-02640":{"line":5895,"offset":1054347,"length":187,"previous":"M21-GAP-02639","next":"M21-GAP-02641"},"M21-GAP-02641":{"line":5896,"offset":1054534,"length":187,"previous":"M21-GAP-02640","next":"M21-GAP-02642"},"M21-GAP-02642":{"line":5897,"offset":1054721,"length":187,"previous":"M21-GAP-02641","next":"M21-GAP-02643"},"M21-GAP-02643":{"line":5898,"offset":1054908,"length":187,"previous":"M21-GAP-02642","next":"M21-GAP-02644"},"M21-GAP-02644":{"line":5899,"offset":1055095,"length":187,"previous":"M21-GAP-02643","next":"M21-GAP-02645"},"M21-GAP-02645":{"line":5900,"offset":1055282,"length":187,"previous":"M21-GAP-02644","next":"M21-GAP-02646"},"M21-GAP-02646":{"line":5901,"offset":1055469,"length":186,"previous":"M21-GAP-02645","next":"M21-GAP-02647"},"M21-GAP-02647":{"line":5902,"offset":1055655,"length":187,"previous":"M21-GAP-02646","next":"M21-GAP-02648"},"M21-GAP-02648":{"line":5903,"offset":1055842,"length":187,"previous":"M21-GAP-02647","next":"M21-GAP-02649"},"M21-GAP-02649":{"line":5904,"offset":1056029,"length":187,"previous":"M21-GAP-02648","next":"M21-GAP-02650"},"M21-GAP-02650":{"line":5905,"offset":1056216,"length":187,"previous":"M21-GAP-02649","next":"M21-GAP-02651"},"M21-GAP-02651":{"line":5906,"offset":1056403,"length":187,"previous":"M21-GAP-02650","next":"M21-GAP-02652"},"M21-GAP-02652":{"line":5907,"offset":1056590,"length":187,"previous":"M21-GAP-02651","next":"M21-GAP-02653"},"M21-GAP-02653":{"line":5908,"offset":1056777,"length":187,"previous":"M21-GAP-02652","next":"M21-GAP-02654"},"M21-GAP-02654":{"line":5909,"offset":1056964,"length":187,"previous":"M21-GAP-02653","next":"M21-GAP-02655"},"M21-GAP-02655":{"line":5910,"offset":1057151,"length":187,"previous":"M21-GAP-02654","next":"M21-GAP-02656"},"M21-GAP-02656":{"line":5911,"offset":1057338,"length":187,"previous":"M21-GAP-02655","next":"M21-GAP-02657"},"M21-GAP-02657":{"line":5912,"offset":1057525,"length":186,"previous":"M21-GAP-02656","next":"M21-GAP-02658"},"M21-GAP-02658":{"line":5913,"offset":1057711,"length":187,"previous":"M21-GAP-02657","next":"M21-GAP-02659"},"M21-GAP-02659":{"line":5914,"offset":1057898,"length":187,"previous":"M21-GAP-02658","next":"M21-GAP-02660"},"M21-GAP-02660":{"line":5915,"offset":1058085,"length":187,"previous":"M21-GAP-02659","next":"M21-GAP-02661"},"M21-GAP-02661":{"line":5916,"offset":1058272,"length":187,"previous":"M21-GAP-02660","next":"M21-GAP-02662"},"M21-GAP-02662":{"line":5917,"offset":1058459,"length":187,"previous":"M21-GAP-02661","next":"M21-GAP-02663"},"M21-GAP-02663":{"line":5918,"offset":1058646,"length":187,"previous":"M21-GAP-02662","next":"M21-GAP-02664"},"M21-GAP-02664":{"line":5919,"offset":1058833,"length":187,"previous":"M21-GAP-02663","next":"M21-GAP-02665"},"M21-GAP-02665":{"line":5920,"offset":1059020,"length":187,"previous":"M21-GAP-02664","next":"M21-GAP-02666"},"M21-GAP-02666":{"line":5921,"offset":1059207,"length":187,"previous":"M21-GAP-02665","next":"M21-GAP-02667"},"M21-GAP-02667":{"line":5922,"offset":1059394,"length":187,"previous":"M21-GAP-02666","next":"M21-GAP-02668"},"M21-GAP-02668":{"line":5923,"offset":1059581,"length":186,"previous":"M21-GAP-02667","next":"M21-GAP-02669"},"M21-GAP-02669":{"line":5924,"offset":1059767,"length":187,"previous":"M21-GAP-02668","next":"M21-GAP-02670"},"M21-GAP-02670":{"line":5925,"offset":1059954,"length":187,"previous":"M21-GAP-02669","next":"M21-GAP-02671"},"M21-GAP-02671":{"line":5926,"offset":1060141,"length":187,"previous":"M21-GAP-02670","next":"M21-GAP-02672"},"M21-GAP-02672":{"line":5927,"offset":1060328,"length":187,"previous":"M21-GAP-02671","next":"M21-GAP-02673"},"M21-GAP-02673":{"line":5928,"offset":1060515,"length":187,"previous":"M21-GAP-02672","next":"M21-GAP-02674"},"M21-GAP-02674":{"line":5929,"offset":1060702,"length":187,"previous":"M21-GAP-02673","next":"M21-GAP-02675"},"M21-GAP-02675":{"line":5930,"offset":1060889,"length":187,"previous":"M21-GAP-02674","next":"M21-GAP-02676"},"M21-GAP-02676":{"line":5931,"offset":1061076,"length":187,"previous":"M21-GAP-02675","next":"M21-GAP-02677"},"M21-GAP-02677":{"line":5932,"offset":1061263,"length":187,"previous":"M21-GAP-02676","next":"M21-GAP-02678"},"M21-GAP-02678":{"line":5933,"offset":1061450,"length":187,"previous":"M21-GAP-02677","next":"M21-GAP-02679"},"M21-GAP-02679":{"line":5934,"offset":1061637,"length":186,"previous":"M21-GAP-02678","next":"M21-GAP-02680"},"M21-GAP-02680":{"line":5935,"offset":1061823,"length":187,"previous":"M21-GAP-02679","next":"M21-GAP-02681"},"M21-GAP-02681":{"line":5936,"offset":1062010,"length":187,"previous":"M21-GAP-02680","next":"M21-GAP-02682"},"M21-GAP-02682":{"line":5937,"offset":1062197,"length":187,"previous":"M21-GAP-02681","next":"M21-GAP-02683"},"M21-GAP-02683":{"line":5938,"offset":1062384,"length":187,"previous":"M21-GAP-02682","next":"M21-GAP-02684"},"M21-GAP-02684":{"line":5939,"offset":1062571,"length":187,"previous":"M21-GAP-02683","next":"M21-GAP-02685"},"M21-GAP-02685":{"line":5940,"offset":1062758,"length":187,"previous":"M21-GAP-02684","next":"M21-GAP-02686"},"M21-GAP-02686":{"line":5941,"offset":1062945,"length":187,"previous":"M21-GAP-02685","next":"M21-GAP-02687"},"M21-GAP-02687":{"line":5942,"offset":1063132,"length":187,"previous":"M21-GAP-02686","next":"M21-GAP-02688"},"M21-GAP-02688":{"line":5943,"offset":1063319,"length":187,"previous":"M21-GAP-02687","next":"M21-GAP-02689"},"M21-GAP-02689":{"line":5944,"offset":1063506,"length":187,"previous":"M21-GAP-02688","next":"M21-GAP-02690"},"M21-GAP-02690":{"line":5945,"offset":1063693,"length":186,"previous":"M21-GAP-02689","next":"M21-GAP-02691"},"M21-GAP-02691":{"line":5946,"offset":1063879,"length":187,"previous":"M21-GAP-02690","next":"M21-GAP-02692"},"M21-GAP-02692":{"line":5947,"offset":1064066,"length":187,"previous":"M21-GAP-02691","next":"M21-GAP-02693"},"M21-GAP-02693":{"line":5948,"offset":1064253,"length":187,"previous":"M21-GAP-02692","next":"M21-GAP-02694"},"M21-GAP-02694":{"line":5949,"offset":1064440,"length":187,"previous":"M21-GAP-02693","next":"M21-GAP-02695"},"M21-GAP-02695":{"line":5950,"offset":1064627,"length":187,"previous":"M21-GAP-02694","next":"M21-GAP-02696"},"M21-GAP-02696":{"line":5951,"offset":1064814,"length":187,"previous":"M21-GAP-02695","next":"M21-GAP-02697"},"M21-GAP-02697":{"line":5952,"offset":1065001,"length":187,"previous":"M21-GAP-02696","next":"M21-GAP-02698"},"M21-GAP-02698":{"line":5953,"offset":1065188,"length":187,"previous":"M21-GAP-02697","next":"M21-GAP-02699"},"M21-GAP-02699":{"line":5954,"offset":1065375,"length":187,"previous":"M21-GAP-02698","next":"M21-GAP-02700"},"M21-GAP-02700":{"line":5955,"offset":1065562,"length":187,"previous":"M21-GAP-02699","next":"M21-GAP-02701"},"M21-GAP-02701":{"line":5956,"offset":1065749,"length":186,"previous":"M21-GAP-02700","next":"M21-GAP-02702"},"M21-GAP-02702":{"line":5957,"offset":1065935,"length":187,"previous":"M21-GAP-02701","next":"M21-GAP-02703"},"M21-GAP-02703":{"line":5958,"offset":1066122,"length":187,"previous":"M21-GAP-02702","next":"M21-GAP-02704"},"M21-GAP-02704":{"line":5959,"offset":1066309,"length":187,"previous":"M21-GAP-02703","next":"M21-GAP-02705"},"M21-GAP-02705":{"line":5960,"offset":1066496,"length":187,"previous":"M21-GAP-02704","next":"M21-GAP-02706"},"M21-GAP-02706":{"line":5961,"offset":1066683,"length":187,"previous":"M21-GAP-02705","next":"M21-GAP-02707"},"M21-GAP-02707":{"line":5962,"offset":1066870,"length":187,"previous":"M21-GAP-02706","next":"M21-GAP-02708"},"M21-GAP-02708":{"line":5963,"offset":1067057,"length":187,"previous":"M21-GAP-02707","next":"M21-GAP-02709"},"M21-GAP-02709":{"line":5964,"offset":1067244,"length":187,"previous":"M21-GAP-02708","next":"M21-GAP-02710"},"M21-GAP-02710":{"line":5965,"offset":1067431,"length":187,"previous":"M21-GAP-02709","next":"M21-GAP-02711"},"M21-GAP-02711":{"line":5966,"offset":1067618,"length":187,"previous":"M21-GAP-02710","next":"M21-GAP-02712"},"M21-GAP-02712":{"line":5967,"offset":1067805,"length":186,"previous":"M21-GAP-02711","next":"M21-GAP-02713"},"M21-GAP-02713":{"line":5968,"offset":1067991,"length":187,"previous":"M21-GAP-02712","next":"M21-GAP-02714"},"M21-GAP-02714":{"line":5969,"offset":1068178,"length":187,"previous":"M21-GAP-02713","next":"M21-GAP-02715"},"M21-GAP-02715":{"line":5970,"offset":1068365,"length":187,"previous":"M21-GAP-02714","next":"M21-GAP-02716"},"M21-GAP-02716":{"line":5971,"offset":1068552,"length":187,"previous":"M21-GAP-02715","next":"M21-GAP-02717"},"M21-GAP-02717":{"line":5972,"offset":1068739,"length":187,"previous":"M21-GAP-02716","next":"M21-GAP-02718"},"M21-GAP-02718":{"line":5973,"offset":1068926,"length":187,"previous":"M21-GAP-02717","next":"M21-GAP-02719"},"M21-GAP-02719":{"line":5974,"offset":1069113,"length":187,"previous":"M21-GAP-02718","next":"M21-GAP-02720"},"M21-GAP-02720":{"line":5975,"offset":1069300,"length":187,"previous":"M21-GAP-02719","next":"M21-GAP-02721"},"M21-GAP-02721":{"line":5976,"offset":1069487,"length":187,"previous":"M21-GAP-02720","next":"M21-GAP-02722"},"M21-GAP-02722":{"line":5977,"offset":1069674,"length":187,"previous":"M21-GAP-02721","next":"M21-GAP-02723"},"M21-GAP-02723":{"line":5978,"offset":1069861,"length":186,"previous":"M21-GAP-02722","next":"M21-GAP-02724"},"M21-GAP-02724":{"line":5979,"offset":1070047,"length":187,"previous":"M21-GAP-02723","next":"M21-GAP-02725"},"M21-GAP-02725":{"line":5980,"offset":1070234,"length":187,"previous":"M21-GAP-02724","next":"M21-GAP-02726"},"M21-GAP-02726":{"line":5981,"offset":1070421,"length":187,"previous":"M21-GAP-02725","next":"M21-GAP-02727"},"M21-GAP-02727":{"line":5982,"offset":1070608,"length":187,"previous":"M21-GAP-02726","next":"M21-GAP-02728"},"M21-GAP-02728":{"line":5983,"offset":1070795,"length":187,"previous":"M21-GAP-02727","next":"M21-GAP-02729"},"M21-GAP-02729":{"line":5984,"offset":1070982,"length":177,"previous":"M21-GAP-02728","next":"M21-GAP-02730"},"M21-GAP-02730":{"line":5985,"offset":1071159,"length":177,"previous":"M21-GAP-02729","next":"M21-GAP-02731"},"M21-GAP-02731":{"line":5986,"offset":1071336,"length":178,"previous":"M21-GAP-02730","next":"M21-GAP-02732"},"M21-GAP-02732":{"line":5987,"offset":1071514,"length":178,"previous":"M21-GAP-02731","next":"M21-GAP-02733"},"M21-GAP-02733":{"line":5988,"offset":1071692,"length":177,"previous":"M21-GAP-02732","next":"M21-GAP-02734"},"M21-GAP-02734":{"line":5989,"offset":1071869,"length":177,"previous":"M21-GAP-02733","next":"M21-GAP-02735"},"M21-GAP-02735":{"line":5990,"offset":1072046,"length":177,"previous":"M21-GAP-02734","next":"M21-GAP-02736"},"M21-GAP-02736":{"line":5991,"offset":1072223,"length":177,"previous":"M21-GAP-02735","next":"M21-GAP-02737"},"M21-GAP-02737":{"line":5992,"offset":1072400,"length":177,"previous":"M21-GAP-02736","next":"M21-GAP-02738"},"M21-GAP-02738":{"line":5993,"offset":1072577,"length":177,"previous":"M21-GAP-02737","next":"M21-GAP-02739"},"M21-GAP-02739":{"line":5994,"offset":1072754,"length":177,"previous":"M21-GAP-02738","next":"M21-GAP-02740"},"M21-GAP-02740":{"line":5995,"offset":1072931,"length":177,"previous":"M21-GAP-02739","next":"M21-GAP-02741"},"M21-GAP-02741":{"line":5996,"offset":1073108,"length":192,"previous":"M21-GAP-02740","next":"M21-GAP-02742"},"M21-GAP-02742":{"line":5997,"offset":1073300,"length":192,"previous":"M21-GAP-02741","next":"M21-GAP-02743"},"M21-GAP-02743":{"line":5998,"offset":1073492,"length":192,"previous":"M21-GAP-02742","next":"M21-GAP-02744"},"M21-GAP-02744":{"line":5999,"offset":1073684,"length":192,"previous":"M21-GAP-02743","next":"M21-GAP-02745"},"M21-GAP-02745":{"line":6000,"offset":1073876,"length":192,"previous":"M21-GAP-02744","next":"M21-GAP-02746"},"M21-GAP-02746":{"line":6001,"offset":1074068,"length":185,"previous":"M21-GAP-02745","next":"M21-GAP-02747"},"M21-GAP-02747":{"line":6002,"offset":1074253,"length":185,"previous":"M21-GAP-02746","next":"M21-GAP-02748"},"M21-GAP-02748":{"line":6003,"offset":1074438,"length":185,"previous":"M21-GAP-02747","next":"M21-GAP-02749"},"M21-GAP-02749":{"line":6004,"offset":1074623,"length":185,"previous":"M21-GAP-02748","next":"M21-GAP-02750"},"M21-GAP-02750":{"line":6005,"offset":1074808,"length":185,"previous":"M21-GAP-02749","next":"M21-GAP-02751"},"M21-GAP-02751":{"line":6006,"offset":1074993,"length":185,"previous":"M21-GAP-02750","next":"M21-GAP-02752"},"M21-GAP-02752":{"line":6007,"offset":1075178,"length":185,"previous":"M21-GAP-02751","next":"M21-GAP-02753"},"M21-GAP-02753":{"line":6008,"offset":1075363,"length":185,"previous":"M21-GAP-02752","next":"M21-GAP-02754"},"M21-GAP-02754":{"line":6009,"offset":1075548,"length":185,"previous":"M21-GAP-02753","next":"M21-GAP-02755"},"M21-GAP-02755":{"line":6010,"offset":1075733,"length":185,"previous":"M21-GAP-02754","next":"M21-GAP-02756"},"M21-GAP-02756":{"line":6011,"offset":1075918,"length":185,"previous":"M21-GAP-02755","next":"M21-GAP-02757"},"M21-GAP-02757":{"line":6012,"offset":1076103,"length":185,"previous":"M21-GAP-02756","next":"M21-GAP-02758"},"M21-GAP-02758":{"line":6013,"offset":1076288,"length":185,"previous":"M21-GAP-02757","next":"M21-GAP-02759"},"M21-GAP-02759":{"line":6014,"offset":1076473,"length":177,"previous":"M21-GAP-02758","next":"M21-GAP-02760"},"M21-GAP-02760":{"line":6015,"offset":1076650,"length":177,"previous":"M21-GAP-02759","next":"M21-GAP-02761"},"M21-GAP-02761":{"line":6016,"offset":1076827,"length":178,"previous":"M21-GAP-02760","next":"M21-GAP-02762"},"M21-GAP-02762":{"line":6017,"offset":1077005,"length":178,"previous":"M21-GAP-02761","next":"M21-GAP-02763"},"M21-GAP-02763":{"line":6018,"offset":1077183,"length":178,"previous":"M21-GAP-02762","next":"M21-GAP-02764"},"M21-GAP-02764":{"line":6019,"offset":1077361,"length":178,"previous":"M21-GAP-02763","next":"M21-GAP-02765"},"M21-GAP-02765":{"line":6020,"offset":1077539,"length":178,"previous":"M21-GAP-02764","next":"M21-GAP-02766"},"M21-GAP-02766":{"line":6021,"offset":1077717,"length":178,"previous":"M21-GAP-02765","next":"M21-GAP-02767"},"M21-GAP-02767":{"line":6022,"offset":1077895,"length":178,"previous":"M21-GAP-02766","next":"M21-GAP-02768"},"M21-GAP-02768":{"line":6023,"offset":1078073,"length":178,"previous":"M21-GAP-02767","next":"M21-GAP-02769"},"M21-GAP-02769":{"line":6024,"offset":1078251,"length":178,"previous":"M21-GAP-02768","next":"M21-GAP-02770"},"M21-GAP-02770":{"line":6025,"offset":1078429,"length":178,"previous":"M21-GAP-02769","next":"M21-GAP-02771"},"M21-GAP-02771":{"line":6026,"offset":1078607,"length":177,"previous":"M21-GAP-02770","next":"M21-GAP-02772"},"M21-GAP-02772":{"line":6027,"offset":1078784,"length":178,"previous":"M21-GAP-02771","next":"M21-GAP-02773"},"M21-GAP-02773":{"line":6028,"offset":1078962,"length":178,"previous":"M21-GAP-02772","next":"M21-GAP-02774"},"M21-GAP-02774":{"line":6029,"offset":1079140,"length":178,"previous":"M21-GAP-02773","next":"M21-GAP-02775"},"M21-GAP-02775":{"line":6030,"offset":1079318,"length":178,"previous":"M21-GAP-02774","next":"M21-GAP-02776"},"M21-GAP-02776":{"line":6031,"offset":1079496,"length":178,"previous":"M21-GAP-02775","next":"M21-GAP-02777"},"M21-GAP-02777":{"line":6032,"offset":1079674,"length":178,"previous":"M21-GAP-02776","next":"M21-GAP-02778"},"M21-GAP-02778":{"line":6033,"offset":1079852,"length":178,"previous":"M21-GAP-02777","next":"M21-GAP-02779"},"M21-GAP-02779":{"line":6034,"offset":1080030,"length":178,"previous":"M21-GAP-02778","next":"M21-GAP-02780"},"M21-GAP-02780":{"line":6035,"offset":1080208,"length":178,"previous":"M21-GAP-02779","next":"M21-GAP-02781"},"M21-GAP-02781":{"line":6036,"offset":1080386,"length":178,"previous":"M21-GAP-02780","next":"M21-GAP-02782"},"M21-GAP-02782":{"line":6037,"offset":1080564,"length":177,"previous":"M21-GAP-02781","next":"M21-GAP-02783"},"M21-GAP-02783":{"line":6038,"offset":1080741,"length":178,"previous":"M21-GAP-02782","next":"M21-GAP-02784"},"M21-GAP-02784":{"line":6039,"offset":1080919,"length":178,"previous":"M21-GAP-02783","next":"M21-GAP-02785"},"M21-GAP-02785":{"line":6040,"offset":1081097,"length":178,"previous":"M21-GAP-02784","next":"M21-GAP-02786"},"M21-GAP-02786":{"line":6041,"offset":1081275,"length":178,"previous":"M21-GAP-02785","next":"M21-GAP-02787"},"M21-GAP-02787":{"line":6042,"offset":1081453,"length":178,"previous":"M21-GAP-02786","next":"M21-GAP-02788"},"M21-GAP-02788":{"line":6043,"offset":1081631,"length":178,"previous":"M21-GAP-02787","next":"M21-GAP-02789"},"M21-GAP-02789":{"line":6044,"offset":1081809,"length":178,"previous":"M21-GAP-02788","next":"M21-GAP-02790"},"M21-GAP-02790":{"line":6045,"offset":1081987,"length":178,"previous":"M21-GAP-02789","next":"M21-GAP-02791"},"M21-GAP-02791":{"line":6046,"offset":1082165,"length":178,"previous":"M21-GAP-02790","next":"M21-GAP-02792"},"M21-GAP-02792":{"line":6047,"offset":1082343,"length":178,"previous":"M21-GAP-02791","next":"M21-GAP-02793"},"M21-GAP-02793":{"line":6048,"offset":1082521,"length":177,"previous":"M21-GAP-02792","next":"M21-GAP-02794"},"M21-GAP-02794":{"line":6049,"offset":1082698,"length":178,"previous":"M21-GAP-02793","next":"M21-GAP-02795"},"M21-GAP-02795":{"line":6050,"offset":1082876,"length":178,"previous":"M21-GAP-02794","next":"M21-GAP-02796"},"M21-GAP-02796":{"line":6051,"offset":1083054,"length":178,"previous":"M21-GAP-02795","next":"M21-GAP-02797"},"M21-GAP-02797":{"line":6052,"offset":1083232,"length":178,"previous":"M21-GAP-02796","next":"M21-GAP-02798"},"M21-GAP-02798":{"line":6053,"offset":1083410,"length":178,"previous":"M21-GAP-02797","next":"M21-GAP-02799"},"M21-GAP-02799":{"line":6054,"offset":1083588,"length":178,"previous":"M21-GAP-02798","next":"M21-GAP-02800"},"M21-GAP-02800":{"line":6055,"offset":1083766,"length":178,"previous":"M21-GAP-02799","next":"M21-GAP-02801"},"M21-GAP-02801":{"line":6056,"offset":1083944,"length":178,"previous":"M21-GAP-02800","next":"M21-GAP-02802"},"M21-GAP-02802":{"line":6057,"offset":1084122,"length":178,"previous":"M21-GAP-02801","next":"M21-GAP-02803"},"M21-GAP-02803":{"line":6058,"offset":1084300,"length":178,"previous":"M21-GAP-02802","next":"M21-GAP-02804"},"M21-GAP-02804":{"line":6059,"offset":1084478,"length":177,"previous":"M21-GAP-02803","next":"M21-GAP-02805"},"M21-GAP-02805":{"line":6060,"offset":1084655,"length":178,"previous":"M21-GAP-02804","next":"M21-GAP-02806"},"M21-GAP-02806":{"line":6061,"offset":1084833,"length":178,"previous":"M21-GAP-02805","next":"M21-GAP-02807"},"M21-GAP-02807":{"line":6062,"offset":1085011,"length":178,"previous":"M21-GAP-02806","next":"M21-GAP-02808"},"M21-GAP-02808":{"line":6063,"offset":1085189,"length":178,"previous":"M21-GAP-02807","next":"M21-GAP-02809"},"M21-GAP-02809":{"line":6064,"offset":1085367,"length":178,"previous":"M21-GAP-02808","next":"M21-GAP-02810"},"M21-GAP-02810":{"line":6065,"offset":1085545,"length":178,"previous":"M21-GAP-02809","next":"M21-GAP-02811"},"M21-GAP-02811":{"line":6066,"offset":1085723,"length":178,"previous":"M21-GAP-02810","next":"M21-GAP-02812"},"M21-GAP-02812":{"line":6067,"offset":1085901,"length":178,"previous":"M21-GAP-02811","next":"M21-GAP-02813"},"M21-GAP-02813":{"line":6068,"offset":1086079,"length":178,"previous":"M21-GAP-02812","next":"M21-GAP-02814"},"M21-GAP-02814":{"line":6069,"offset":1086257,"length":178,"previous":"M21-GAP-02813","next":"M21-GAP-02815"},"M21-GAP-02815":{"line":6070,"offset":1086435,"length":177,"previous":"M21-GAP-02814","next":"M21-GAP-02816"},"M21-GAP-02816":{"line":6071,"offset":1086612,"length":178,"previous":"M21-GAP-02815","next":"M21-GAP-02817"},"M21-GAP-02817":{"line":6072,"offset":1086790,"length":178,"previous":"M21-GAP-02816","next":"M21-GAP-02818"},"M21-GAP-02818":{"line":6073,"offset":1086968,"length":178,"previous":"M21-GAP-02817","next":"M21-GAP-02819"},"M21-GAP-02819":{"line":6074,"offset":1087146,"length":178,"previous":"M21-GAP-02818","next":"M21-GAP-02820"},"M21-GAP-02820":{"line":6075,"offset":1087324,"length":178,"previous":"M21-GAP-02819","next":"M21-GAP-02821"},"M21-GAP-02821":{"line":6076,"offset":1087502,"length":178,"previous":"M21-GAP-02820","next":"M21-GAP-02822"},"M21-GAP-02822":{"line":6077,"offset":1087680,"length":178,"previous":"M21-GAP-02821","next":"M21-GAP-02823"},"M21-GAP-02823":{"line":6078,"offset":1087858,"length":178,"previous":"M21-GAP-02822","next":"M21-GAP-02824"},"M21-GAP-02824":{"line":6079,"offset":1088036,"length":178,"previous":"M21-GAP-02823","next":"M21-GAP-02825"},"M21-GAP-02825":{"line":6080,"offset":1088214,"length":178,"previous":"M21-GAP-02824","next":"M21-GAP-02826"},"M21-GAP-02826":{"line":6081,"offset":1088392,"length":177,"previous":"M21-GAP-02825","next":"M21-GAP-02827"},"M21-GAP-02827":{"line":6082,"offset":1088569,"length":178,"previous":"M21-GAP-02826","next":"M21-GAP-02828"},"M21-GAP-02828":{"line":6083,"offset":1088747,"length":177,"previous":"M21-GAP-02827","next":"M21-GAP-02829"},"M21-GAP-02829":{"line":6084,"offset":1088924,"length":177,"previous":"M21-GAP-02828","next":"M21-GAP-02830"},"M21-GAP-02830":{"line":6085,"offset":1089101,"length":177,"previous":"M21-GAP-02829","next":"M21-GAP-02831"},"M21-GAP-02831":{"line":6086,"offset":1089278,"length":183,"previous":"M21-GAP-02830","next":"M21-GAP-02832"},"M21-GAP-02832":{"line":6087,"offset":1089461,"length":183,"previous":"M21-GAP-02831","next":"M21-GAP-02833"},"M21-GAP-02833":{"line":6088,"offset":1089644,"length":183,"previous":"M21-GAP-02832","next":"M21-GAP-02834"},"M21-GAP-02834":{"line":6089,"offset":1089827,"length":183,"previous":"M21-GAP-02833","next":"M21-GAP-02835"},"M21-GAP-02835":{"line":6090,"offset":1090010,"length":183,"previous":"M21-GAP-02834","next":"M21-GAP-02836"},"M21-GAP-02836":{"line":6091,"offset":1090193,"length":198,"previous":"M21-GAP-02835","next":"M21-GAP-02837"},"M21-GAP-02837":{"line":6092,"offset":1090391,"length":198,"previous":"M21-GAP-02836","next":"M21-GAP-02838"},"M21-GAP-02838":{"line":6093,"offset":1090589,"length":198,"previous":"M21-GAP-02837","next":"M21-GAP-02839"},"M21-GAP-02839":{"line":6094,"offset":1090787,"length":198,"previous":"M21-GAP-02838","next":"M21-GAP-02840"},"M21-GAP-02840":{"line":6095,"offset":1090985,"length":198,"previous":"M21-GAP-02839","next":"M21-GAP-02841"},"M21-GAP-02841":{"line":6096,"offset":1091183,"length":198,"previous":"M21-GAP-02840","next":"M21-GAP-02842"},"M21-GAP-02842":{"line":6097,"offset":1091381,"length":198,"previous":"M21-GAP-02841","next":"M21-GAP-02843"},"M21-GAP-02843":{"line":6098,"offset":1091579,"length":198,"previous":"M21-GAP-02842","next":"M21-GAP-02844"},"M21-GAP-02844":{"line":6099,"offset":1091777,"length":198,"previous":"M21-GAP-02843","next":"M21-GAP-02845"},"M21-GAP-02845":{"line":6100,"offset":1091975,"length":186,"previous":"M21-GAP-02844","next":"M21-GAP-02846"},"M21-GAP-02846":{"line":6101,"offset":1092161,"length":186,"previous":"M21-GAP-02845","next":"M21-GAP-02847"},"M21-GAP-02847":{"line":6102,"offset":1092347,"length":187,"previous":"M21-GAP-02846","next":"M21-GAP-02848"},"M21-GAP-02848":{"line":6103,"offset":1092534,"length":187,"previous":"M21-GAP-02847","next":"M21-GAP-02849"},"M21-GAP-02849":{"line":6104,"offset":1092721,"length":187,"previous":"M21-GAP-02848","next":"M21-GAP-02850"},"M21-GAP-02850":{"line":6105,"offset":1092908,"length":187,"previous":"M21-GAP-02849","next":"M21-GAP-02851"},"M21-GAP-02851":{"line":6106,"offset":1093095,"length":187,"previous":"M21-GAP-02850","next":"M21-GAP-02852"},"M21-GAP-02852":{"line":6107,"offset":1093282,"length":187,"previous":"M21-GAP-02851","next":"M21-GAP-02853"},"M21-GAP-02853":{"line":6108,"offset":1093469,"length":187,"previous":"M21-GAP-02852","next":"M21-GAP-02854"},"M21-GAP-02854":{"line":6109,"offset":1093656,"length":187,"previous":"M21-GAP-02853","next":"M21-GAP-02855"},"M21-GAP-02855":{"line":6110,"offset":1093843,"length":187,"previous":"M21-GAP-02854","next":"M21-GAP-02856"},"M21-GAP-02856":{"line":6111,"offset":1094030,"length":187,"previous":"M21-GAP-02855","next":"M21-GAP-02857"},"M21-GAP-02857":{"line":6112,"offset":1094217,"length":186,"previous":"M21-GAP-02856","next":"M21-GAP-02858"},"M21-GAP-02858":{"line":6113,"offset":1094403,"length":187,"previous":"M21-GAP-02857","next":"M21-GAP-02859"},"M21-GAP-02859":{"line":6114,"offset":1094590,"length":187,"previous":"M21-GAP-02858","next":"M21-GAP-02860"},"M21-GAP-02860":{"line":6115,"offset":1094777,"length":187,"previous":"M21-GAP-02859","next":"M21-GAP-02861"},"M21-GAP-02861":{"line":6116,"offset":1094964,"length":187,"previous":"M21-GAP-02860","next":"M21-GAP-02862"},"M21-GAP-02862":{"line":6117,"offset":1095151,"length":187,"previous":"M21-GAP-02861","next":"M21-GAP-02863"},"M21-GAP-02863":{"line":6118,"offset":1095338,"length":187,"previous":"M21-GAP-02862","next":"M21-GAP-02864"},"M21-GAP-02864":{"line":6119,"offset":1095525,"length":187,"previous":"M21-GAP-02863","next":"M21-GAP-02865"},"M21-GAP-02865":{"line":6120,"offset":1095712,"length":187,"previous":"M21-GAP-02864","next":"M21-GAP-02866"},"M21-GAP-02866":{"line":6121,"offset":1095899,"length":187,"previous":"M21-GAP-02865","next":"M21-GAP-02867"},"M21-GAP-02867":{"line":6122,"offset":1096086,"length":187,"previous":"M21-GAP-02866","next":"M21-GAP-02868"},"M21-GAP-02868":{"line":6123,"offset":1096273,"length":186,"previous":"M21-GAP-02867","next":"M21-GAP-02869"},"M21-GAP-02869":{"line":6124,"offset":1096459,"length":187,"previous":"M21-GAP-02868","next":"M21-GAP-02870"},"M21-GAP-02870":{"line":6125,"offset":1096646,"length":187,"previous":"M21-GAP-02869","next":"M21-GAP-02871"},"M21-GAP-02871":{"line":6126,"offset":1096833,"length":187,"previous":"M21-GAP-02870","next":"M21-GAP-02872"},"M21-GAP-02872":{"line":6127,"offset":1097020,"length":187,"previous":"M21-GAP-02871","next":"M21-GAP-02873"},"M21-GAP-02873":{"line":6128,"offset":1097207,"length":187,"previous":"M21-GAP-02872","next":"M21-GAP-02874"},"M21-GAP-02874":{"line":6129,"offset":1097394,"length":187,"previous":"M21-GAP-02873","next":"M21-GAP-02875"},"M21-GAP-02875":{"line":6130,"offset":1097581,"length":187,"previous":"M21-GAP-02874","next":"M21-GAP-02876"},"M21-GAP-02876":{"line":6131,"offset":1097768,"length":187,"previous":"M21-GAP-02875","next":"M21-GAP-02877"},"M21-GAP-02877":{"line":6132,"offset":1097955,"length":187,"previous":"M21-GAP-02876","next":"M21-GAP-02878"},"M21-GAP-02878":{"line":6133,"offset":1098142,"length":187,"previous":"M21-GAP-02877","next":"M21-GAP-02879"},"M21-GAP-02879":{"line":6134,"offset":1098329,"length":186,"previous":"M21-GAP-02878","next":"M21-GAP-02880"},"M21-GAP-02880":{"line":6135,"offset":1098515,"length":187,"previous":"M21-GAP-02879","next":"M21-GAP-02881"},"M21-GAP-02881":{"line":6136,"offset":1098702,"length":187,"previous":"M21-GAP-02880","next":"M21-GAP-02882"},"M21-GAP-02882":{"line":6137,"offset":1098889,"length":187,"previous":"M21-GAP-02881","next":"M21-GAP-02883"},"M21-GAP-02883":{"line":6138,"offset":1099076,"length":187,"previous":"M21-GAP-02882","next":"M21-GAP-02884"},"M21-GAP-02884":{"line":6139,"offset":1099263,"length":187,"previous":"M21-GAP-02883","next":"M21-GAP-02885"},"M21-GAP-02885":{"line":6140,"offset":1099450,"length":187,"previous":"M21-GAP-02884","next":"M21-GAP-02886"},"M21-GAP-02886":{"line":6141,"offset":1099637,"length":187,"previous":"M21-GAP-02885","next":"M21-GAP-02887"},"M21-GAP-02887":{"line":6142,"offset":1099824,"length":187,"previous":"M21-GAP-02886","next":"M21-GAP-02888"},"M21-GAP-02888":{"line":6143,"offset":1100011,"length":187,"previous":"M21-GAP-02887","next":"M21-GAP-02889"},"M21-GAP-02889":{"line":6144,"offset":1100198,"length":187,"previous":"M21-GAP-02888","next":"M21-GAP-02890"},"M21-GAP-02890":{"line":6145,"offset":1100385,"length":186,"previous":"M21-GAP-02889","next":"M21-GAP-02891"},"M21-GAP-02891":{"line":6146,"offset":1100571,"length":187,"previous":"M21-GAP-02890","next":"M21-GAP-02892"},"M21-GAP-02892":{"line":6147,"offset":1100758,"length":187,"previous":"M21-GAP-02891","next":"M21-GAP-02893"},"M21-GAP-02893":{"line":6148,"offset":1100945,"length":187,"previous":"M21-GAP-02892","next":"M21-GAP-02894"},"M21-GAP-02894":{"line":6149,"offset":1101132,"length":187,"previous":"M21-GAP-02893","next":"M21-GAP-02895"},"M21-GAP-02895":{"line":6150,"offset":1101319,"length":187,"previous":"M21-GAP-02894","next":"M21-GAP-02896"},"M21-GAP-02896":{"line":6151,"offset":1101506,"length":187,"previous":"M21-GAP-02895","next":"M21-GAP-02897"},"M21-GAP-02897":{"line":6152,"offset":1101693,"length":186,"previous":"M21-GAP-02896","next":"M21-GAP-02898"},"M21-GAP-02898":{"line":6153,"offset":1101879,"length":186,"previous":"M21-GAP-02897","next":"M21-GAP-02899"},"M21-GAP-02899":{"line":6154,"offset":1102065,"length":186,"previous":"M21-GAP-02898","next":"M21-GAP-02900"},"M21-GAP-02900":{"line":6155,"offset":1102251,"length":186,"previous":"M21-GAP-02899","next":"M21-GAP-02901"},"M21-GAP-02901":{"line":6156,"offset":1102437,"length":176,"previous":"M21-GAP-02900","next":"M21-GAP-02902"},"M21-GAP-02902":{"line":6157,"offset":1102613,"length":176,"previous":"M21-GAP-02901","next":"M21-GAP-02903"},"M21-GAP-02903":{"line":6158,"offset":1102789,"length":177,"previous":"M21-GAP-02902","next":"M21-GAP-02904"},"M21-GAP-02904":{"line":6159,"offset":1102966,"length":177,"previous":"M21-GAP-02903","next":"M21-GAP-02905"},"M21-GAP-02905":{"line":6160,"offset":1103143,"length":177,"previous":"M21-GAP-02904","next":"M21-GAP-02906"},"M21-GAP-02906":{"line":6161,"offset":1103320,"length":177,"previous":"M21-GAP-02905","next":"M21-GAP-02907"},"M21-GAP-02907":{"line":6162,"offset":1103497,"length":177,"previous":"M21-GAP-02906","next":"M21-GAP-02908"},"M21-GAP-02908":{"line":6163,"offset":1103674,"length":177,"previous":"M21-GAP-02907","next":"M21-GAP-02909"},"M21-GAP-02909":{"line":6164,"offset":1103851,"length":177,"previous":"M21-GAP-02908","next":"M21-GAP-02910"},"M21-GAP-02910":{"line":6165,"offset":1104028,"length":177,"previous":"M21-GAP-02909","next":"M21-GAP-02911"},"M21-GAP-02911":{"line":6166,"offset":1104205,"length":177,"previous":"M21-GAP-02910","next":"M21-GAP-02912"},"M21-GAP-02912":{"line":6167,"offset":1104382,"length":177,"previous":"M21-GAP-02911","next":"M21-GAP-02913"},"M21-GAP-02913":{"line":6168,"offset":1104559,"length":176,"previous":"M21-GAP-02912","next":"M21-GAP-02914"},"M21-GAP-02914":{"line":6169,"offset":1104735,"length":177,"previous":"M21-GAP-02913","next":"M21-GAP-02915"},"M21-GAP-02915":{"line":6170,"offset":1104912,"length":177,"previous":"M21-GAP-02914","next":"M21-GAP-02916"},"M21-GAP-02916":{"line":6171,"offset":1105089,"length":177,"previous":"M21-GAP-02915","next":"M21-GAP-02917"},"M21-GAP-02917":{"line":6172,"offset":1105266,"length":177,"previous":"M21-GAP-02916","next":"M21-GAP-02918"},"M21-GAP-02918":{"line":6173,"offset":1105443,"length":177,"previous":"M21-GAP-02917","next":"M21-GAP-02919"},"M21-GAP-02919":{"line":6174,"offset":1105620,"length":177,"previous":"M21-GAP-02918","next":"M21-GAP-02920"},"M21-GAP-02920":{"line":6175,"offset":1105797,"length":177,"previous":"M21-GAP-02919","next":"M21-GAP-02921"},"M21-GAP-02921":{"line":6176,"offset":1105974,"length":177,"previous":"M21-GAP-02920","next":"M21-GAP-02922"},"M21-GAP-02922":{"line":6177,"offset":1106151,"length":177,"previous":"M21-GAP-02921","next":"M21-GAP-02923"},"M21-GAP-02923":{"line":6178,"offset":1106328,"length":177,"previous":"M21-GAP-02922","next":"M21-GAP-02924"},"M21-GAP-02924":{"line":6179,"offset":1106505,"length":176,"previous":"M21-GAP-02923","next":"M21-GAP-02925"},"M21-GAP-02925":{"line":6180,"offset":1106681,"length":177,"previous":"M21-GAP-02924","next":"M21-GAP-02926"},"M21-GAP-02926":{"line":6181,"offset":1106858,"length":177,"previous":"M21-GAP-02925","next":"M21-GAP-02927"},"M21-GAP-02927":{"line":6182,"offset":1107035,"length":177,"previous":"M21-GAP-02926","next":"M21-GAP-02928"},"M21-GAP-02928":{"line":6183,"offset":1107212,"length":177,"previous":"M21-GAP-02927","next":"M21-GAP-02929"},"M21-GAP-02929":{"line":6184,"offset":1107389,"length":177,"previous":"M21-GAP-02928","next":"M21-GAP-02930"},"M21-GAP-02930":{"line":6185,"offset":1107566,"length":177,"previous":"M21-GAP-02929","next":"M21-GAP-02931"},"M21-GAP-02931":{"line":6186,"offset":1107743,"length":177,"previous":"M21-GAP-02930","next":"M21-GAP-02932"},"M21-GAP-02932":{"line":6187,"offset":1107920,"length":177,"previous":"M21-GAP-02931","next":"M21-GAP-02933"},"M21-GAP-02933":{"line":6188,"offset":1108097,"length":177,"previous":"M21-GAP-02932","next":"M21-GAP-02934"},"M21-GAP-02934":{"line":6189,"offset":1108274,"length":177,"previous":"M21-GAP-02933","next":"M21-GAP-02935"},"M21-GAP-02935":{"line":6190,"offset":1108451,"length":176,"previous":"M21-GAP-02934","next":"M21-GAP-02936"},"M21-GAP-02936":{"line":6191,"offset":1108627,"length":177,"previous":"M21-GAP-02935","next":"M21-GAP-02937"},"M21-GAP-02937":{"line":6192,"offset":1108804,"length":177,"previous":"M21-GAP-02936","next":"M21-GAP-02938"},"M21-GAP-02938":{"line":6193,"offset":1108981,"length":177,"previous":"M21-GAP-02937","next":"M21-GAP-02939"},"M21-GAP-02939":{"line":6194,"offset":1109158,"length":177,"previous":"M21-GAP-02938","next":"M21-GAP-02940"},"M21-GAP-02940":{"line":6195,"offset":1109335,"length":177,"previous":"M21-GAP-02939","next":"M21-GAP-02941"},"M21-GAP-02941":{"line":6196,"offset":1109512,"length":177,"previous":"M21-GAP-02940","next":"M21-GAP-02942"},"M21-GAP-02942":{"line":6197,"offset":1109689,"length":177,"previous":"M21-GAP-02941","next":"M21-GAP-02943"},"M21-GAP-02943":{"line":6198,"offset":1109866,"length":177,"previous":"M21-GAP-02942","next":"M21-GAP-02944"},"M21-GAP-02944":{"line":6199,"offset":1110043,"length":177,"previous":"M21-GAP-02943","next":"M21-GAP-02945"},"M21-GAP-02945":{"line":6200,"offset":1110220,"length":177,"previous":"M21-GAP-02944","next":"M21-GAP-02946"},"M21-GAP-02946":{"line":6201,"offset":1110397,"length":176,"previous":"M21-GAP-02945","next":"M21-GAP-02947"},"M21-GAP-02947":{"line":6202,"offset":1110573,"length":177,"previous":"M21-GAP-02946","next":"M21-GAP-02948"},"M21-GAP-02948":{"line":6203,"offset":1110750,"length":177,"previous":"M21-GAP-02947","next":"M21-GAP-02949"},"M21-GAP-02949":{"line":6204,"offset":1110927,"length":177,"previous":"M21-GAP-02948","next":"M21-GAP-02950"},"M21-GAP-02950":{"line":6205,"offset":1111104,"length":177,"previous":"M21-GAP-02949","next":"M21-GAP-02951"},"M21-GAP-02951":{"line":6206,"offset":1111281,"length":177,"previous":"M21-GAP-02950","next":"M21-GAP-02952"},"M21-GAP-02952":{"line":6207,"offset":1111458,"length":177,"previous":"M21-GAP-02951","next":"M21-GAP-02953"},"M21-GAP-02953":{"line":6208,"offset":1111635,"length":177,"previous":"M21-GAP-02952","next":"M21-GAP-02954"},"M21-GAP-02954":{"line":6209,"offset":1111812,"length":177,"previous":"M21-GAP-02953","next":"M21-GAP-02955"},"M21-GAP-02955":{"line":6210,"offset":1111989,"length":177,"previous":"M21-GAP-02954","next":"M21-GAP-02956"},"M21-GAP-02956":{"line":6211,"offset":1112166,"length":177,"previous":"M21-GAP-02955","next":"M21-GAP-02957"},"M21-GAP-02957":{"line":6212,"offset":1112343,"length":176,"previous":"M21-GAP-02956","next":"M21-GAP-02958"},"M21-GAP-02958":{"line":6213,"offset":1112519,"length":177,"previous":"M21-GAP-02957","next":"M21-GAP-02959"},"M21-GAP-02959":{"line":6214,"offset":1112696,"length":177,"previous":"M21-GAP-02958","next":"M21-GAP-02960"},"M21-GAP-02960":{"line":6215,"offset":1112873,"length":177,"previous":"M21-GAP-02959","next":"M21-GAP-02961"},"M21-GAP-02961":{"line":6216,"offset":1113050,"length":177,"previous":"M21-GAP-02960","next":"M21-GAP-02962"},"M21-GAP-02962":{"line":6217,"offset":1113227,"length":177,"previous":"M21-GAP-02961","next":"M21-GAP-02963"},"M21-GAP-02963":{"line":6218,"offset":1113404,"length":177,"previous":"M21-GAP-02962","next":"M21-GAP-02964"},"M21-GAP-02964":{"line":6219,"offset":1113581,"length":177,"previous":"M21-GAP-02963","next":"M21-GAP-02965"},"M21-GAP-02965":{"line":6220,"offset":1113758,"length":177,"previous":"M21-GAP-02964","next":"M21-GAP-02966"},"M21-GAP-02966":{"line":6221,"offset":1113935,"length":177,"previous":"M21-GAP-02965","next":"M21-GAP-02967"},"M21-GAP-02967":{"line":6222,"offset":1114112,"length":177,"previous":"M21-GAP-02966","next":"M21-GAP-02968"},"M21-GAP-02968":{"line":6223,"offset":1114289,"length":176,"previous":"M21-GAP-02967","next":"M21-GAP-02969"},"M21-GAP-02969":{"line":6224,"offset":1114465,"length":177,"previous":"M21-GAP-02968","next":"M21-GAP-02970"},"M21-GAP-02970":{"line":6225,"offset":1114642,"length":177,"previous":"M21-GAP-02969","next":"M21-GAP-02971"},"M21-GAP-02971":{"line":6226,"offset":1114819,"length":177,"previous":"M21-GAP-02970","next":"M21-GAP-02972"},"M21-GAP-02972":{"line":6227,"offset":1114996,"length":177,"previous":"M21-GAP-02971","next":"M21-GAP-02973"},"M21-GAP-02973":{"line":6228,"offset":1115173,"length":177,"previous":"M21-GAP-02972","next":"M21-GAP-02974"},"M21-GAP-02974":{"line":6229,"offset":1115350,"length":177,"previous":"M21-GAP-02973","next":"M21-GAP-02975"},"M21-GAP-02975":{"line":6230,"offset":1115527,"length":177,"previous":"M21-GAP-02974","next":"M21-GAP-02976"},"M21-GAP-02976":{"line":6231,"offset":1115704,"length":177,"previous":"M21-GAP-02975","next":"M21-GAP-02977"},"M21-GAP-02977":{"line":6232,"offset":1115881,"length":177,"previous":"M21-GAP-02976","next":"M21-GAP-02978"},"M21-GAP-02978":{"line":6233,"offset":1116058,"length":177,"previous":"M21-GAP-02977","next":"M21-GAP-02979"},"M21-GAP-02979":{"line":6234,"offset":1116235,"length":176,"previous":"M21-GAP-02978","next":"M21-GAP-02980"},"M21-GAP-02980":{"line":6235,"offset":1116411,"length":177,"previous":"M21-GAP-02979","next":"M21-GAP-02981"},"M21-GAP-02981":{"line":6236,"offset":1116588,"length":177,"previous":"M21-GAP-02980","next":"M21-GAP-02982"},"M21-GAP-02982":{"line":6237,"offset":1116765,"length":177,"previous":"M21-GAP-02981","next":"M21-GAP-02983"},"M21-GAP-02983":{"line":6238,"offset":1116942,"length":177,"previous":"M21-GAP-02982","next":"M21-GAP-02984"},"M21-GAP-02984":{"line":6239,"offset":1117119,"length":177,"previous":"M21-GAP-02983","next":"M21-GAP-02985"},"M21-GAP-02985":{"line":6240,"offset":1117296,"length":177,"previous":"M21-GAP-02984","next":"M21-GAP-02986"},"M21-GAP-02986":{"line":6241,"offset":1117473,"length":177,"previous":"M21-GAP-02985","next":"M21-GAP-02987"},"M21-GAP-02987":{"line":6242,"offset":1117650,"length":177,"previous":"M21-GAP-02986","next":"M21-GAP-02988"},"M21-GAP-02988":{"line":6243,"offset":1117827,"length":176,"previous":"M21-GAP-02987","next":"M21-GAP-02989"},"M21-GAP-02989":{"line":6244,"offset":1118003,"length":181,"previous":"M21-GAP-02988","next":"M21-GAP-02990"},"M21-GAP-02990":{"line":6245,"offset":1118184,"length":181,"previous":"M21-GAP-02989","next":"M21-GAP-02991"},"M21-GAP-02991":{"line":6246,"offset":1118365,"length":182,"previous":"M21-GAP-02990","next":"M21-GAP-02992"},"M21-GAP-02992":{"line":6247,"offset":1118547,"length":182,"previous":"M21-GAP-02991","next":"M21-GAP-02993"},"M21-GAP-02993":{"line":6248,"offset":1118729,"length":182,"previous":"M21-GAP-02992","next":"M21-GAP-02994"},"M21-GAP-02994":{"line":6249,"offset":1118911,"length":182,"previous":"M21-GAP-02993","next":"M21-GAP-02995"},"M21-GAP-02995":{"line":6250,"offset":1119093,"length":182,"previous":"M21-GAP-02994","next":"M21-GAP-02996"},"M21-GAP-02996":{"line":6251,"offset":1119275,"length":182,"previous":"M21-GAP-02995","next":"M21-GAP-02997"},"M21-GAP-02997":{"line":6252,"offset":1119457,"length":182,"previous":"M21-GAP-02996","next":"M21-GAP-02998"},"M21-GAP-02998":{"line":6253,"offset":1119639,"length":182,"previous":"M21-GAP-02997","next":"M21-GAP-02999"},"M21-GAP-02999":{"line":6254,"offset":1119821,"length":182,"previous":"M21-GAP-02998","next":"M21-GAP-03000"},"M21-GAP-03000":{"line":6255,"offset":1120003,"length":182,"previous":"M21-GAP-02999","next":"M21-GAP-03001"},"M21-GAP-03001":{"line":6256,"offset":1120185,"length":181,"previous":"M21-GAP-03000","next":"M21-GAP-03002"},"M21-GAP-03002":{"line":6257,"offset":1120366,"length":182,"previous":"M21-GAP-03001","next":"M21-GAP-03003"},"M21-GAP-03003":{"line":6258,"offset":1120548,"length":182,"previous":"M21-GAP-03002","next":"M21-GAP-03004"},"M21-GAP-03004":{"line":6259,"offset":1120730,"length":182,"previous":"M21-GAP-03003","next":"M21-GAP-03005"},"M21-GAP-03005":{"line":6260,"offset":1120912,"length":182,"previous":"M21-GAP-03004","next":"M21-GAP-03006"},"M21-GAP-03006":{"line":6261,"offset":1121094,"length":182,"previous":"M21-GAP-03005","next":"M21-GAP-03007"},"M21-GAP-03007":{"line":6262,"offset":1121276,"length":182,"previous":"M21-GAP-03006","next":"M21-GAP-03008"},"M21-GAP-03008":{"line":6263,"offset":1121458,"length":182,"previous":"M21-GAP-03007","next":"M21-GAP-03009"},"M21-GAP-03009":{"line":6264,"offset":1121640,"length":182,"previous":"M21-GAP-03008","next":"M21-GAP-03010"},"M21-GAP-03010":{"line":6265,"offset":1121822,"length":182,"previous":"M21-GAP-03009","next":"M21-GAP-03011"},"M21-GAP-03011":{"line":6266,"offset":1122004,"length":182,"previous":"M21-GAP-03010","next":"M21-GAP-03012"},"M21-GAP-03012":{"line":6267,"offset":1122186,"length":181,"previous":"M21-GAP-03011","next":"M21-GAP-03013"},"M21-GAP-03013":{"line":6268,"offset":1122367,"length":182,"previous":"M21-GAP-03012","next":"M21-GAP-03014"},"M21-GAP-03014":{"line":6269,"offset":1122549,"length":182,"previous":"M21-GAP-03013","next":"M21-GAP-03015"},"M21-GAP-03015":{"line":6270,"offset":1122731,"length":182,"previous":"M21-GAP-03014","next":"M21-GAP-03016"},"M21-GAP-03016":{"line":6271,"offset":1122913,"length":181,"previous":"M21-GAP-03015","next":"M21-GAP-03017"},"M21-GAP-03017":{"line":6272,"offset":1123094,"length":181,"previous":"M21-GAP-03016","next":"M21-GAP-03018"},"M21-GAP-03018":{"line":6273,"offset":1123275,"length":181,"previous":"M21-GAP-03017","next":"M21-GAP-03019"},"M21-GAP-03019":{"line":6274,"offset":1123456,"length":181,"previous":"M21-GAP-03018","next":"M21-GAP-03020"},"M21-GAP-03020":{"line":6275,"offset":1123637,"length":181,"previous":"M21-GAP-03019","next":"M21-GAP-03021"},"M21-GAP-03021":{"line":6276,"offset":1123818,"length":181,"previous":"M21-GAP-03020","next":"M21-GAP-03022"},"M21-GAP-03022":{"line":6277,"offset":1123999,"length":179,"previous":"M21-GAP-03021","next":"M21-GAP-03023"},"M21-GAP-03023":{"line":6278,"offset":1124178,"length":179,"previous":"M21-GAP-03022","next":"M21-GAP-03024"},"M21-GAP-03024":{"line":6279,"offset":1124357,"length":180,"previous":"M21-GAP-03023","next":"M21-GAP-03025"},"M21-GAP-03025":{"line":6280,"offset":1124537,"length":180,"previous":"M21-GAP-03024","next":"M21-GAP-03026"},"M21-GAP-03026":{"line":6281,"offset":1124717,"length":180,"previous":"M21-GAP-03025","next":"M21-GAP-03027"},"M21-GAP-03027":{"line":6282,"offset":1124897,"length":180,"previous":"M21-GAP-03026","next":"M21-GAP-03028"},"M21-GAP-03028":{"line":6283,"offset":1125077,"length":180,"previous":"M21-GAP-03027","next":"M21-GAP-03029"},"M21-GAP-03029":{"line":6284,"offset":1125257,"length":180,"previous":"M21-GAP-03028","next":"M21-GAP-03030"},"M21-GAP-03030":{"line":6285,"offset":1125437,"length":180,"previous":"M21-GAP-03029","next":"M21-GAP-03031"},"M21-GAP-03031":{"line":6286,"offset":1125617,"length":180,"previous":"M21-GAP-03030","next":"M21-GAP-03032"},"M21-GAP-03032":{"line":6287,"offset":1125797,"length":180,"previous":"M21-GAP-03031","next":"M21-GAP-03033"},"M21-GAP-03033":{"line":6288,"offset":1125977,"length":180,"previous":"M21-GAP-03032","next":"M21-GAP-03034"},"M21-GAP-03034":{"line":6289,"offset":1126157,"length":179,"previous":"M21-GAP-03033","next":"M21-GAP-03035"},"M21-GAP-03035":{"line":6290,"offset":1126336,"length":180,"previous":"M21-GAP-03034","next":"M21-GAP-03036"},"M21-GAP-03036":{"line":6291,"offset":1126516,"length":180,"previous":"M21-GAP-03035","next":"M21-GAP-03037"},"M21-GAP-03037":{"line":6292,"offset":1126696,"length":180,"previous":"M21-GAP-03036","next":"M21-GAP-03038"},"M21-GAP-03038":{"line":6293,"offset":1126876,"length":180,"previous":"M21-GAP-03037","next":"M21-GAP-03039"},"M21-GAP-03039":{"line":6294,"offset":1127056,"length":180,"previous":"M21-GAP-03038","next":"M21-GAP-03040"},"M21-GAP-03040":{"line":6295,"offset":1127236,"length":180,"previous":"M21-GAP-03039","next":"M21-GAP-03041"},"M21-GAP-03041":{"line":6296,"offset":1127416,"length":179,"previous":"M21-GAP-03040","next":"M21-GAP-03042"},"M21-GAP-03042":{"line":6297,"offset":1127595,"length":179,"previous":"M21-GAP-03041","next":"M21-GAP-03043"},"M21-GAP-03043":{"line":6298,"offset":1127774,"length":179,"previous":"M21-GAP-03042","next":"M21-GAP-03044"},"M21-GAP-03044":{"line":6299,"offset":1127953,"length":179,"previous":"M21-GAP-03043","next":"M21-GAP-03045"},"M21-GAP-03045":{"line":6300,"offset":1128132,"length":179,"previous":"M21-GAP-03044","next":"M21-GAP-03046"},"M21-GAP-03046":{"line":6301,"offset":1128311,"length":179,"previous":"M21-GAP-03045","next":"M21-GAP-03047"},"M21-GAP-03047":{"line":6302,"offset":1128490,"length":179,"previous":"M21-GAP-03046","next":"M21-GAP-03048"},"M21-GAP-03048":{"line":6303,"offset":1128669,"length":198,"previous":"M21-GAP-03047","next":"M21-GAP-03049"},"M21-GAP-03049":{"line":6304,"offset":1128867,"length":198,"previous":"M21-GAP-03048","next":"M21-GAP-03050"},"M21-GAP-03050":{"line":6305,"offset":1129065,"length":198,"previous":"M21-GAP-03049","next":"M21-GAP-03051"},"M21-GAP-03051":{"line":6306,"offset":1129263,"length":198,"previous":"M21-GAP-03050","next":"M21-GAP-03052"},"M21-GAP-03052":{"line":6307,"offset":1129461,"length":198,"previous":"M21-GAP-03051","next":"M21-GAP-03053"},"M21-GAP-03053":{"line":6308,"offset":1129659,"length":198,"previous":"M21-GAP-03052","next":"M21-GAP-03054"},"M21-GAP-03054":{"line":6309,"offset":1129857,"length":198,"previous":"M21-GAP-03053","next":"M21-GAP-03055"},"M21-GAP-03055":{"line":6310,"offset":1130055,"length":186,"previous":"M21-GAP-03054","next":"M21-GAP-03056"},"M21-GAP-03056":{"line":6311,"offset":1130241,"length":186,"previous":"M21-GAP-03055","next":"M21-GAP-03057"},"M21-GAP-03057":{"line":6312,"offset":1130427,"length":187,"previous":"M21-GAP-03056","next":"M21-GAP-03058"},"M21-GAP-03058":{"line":6313,"offset":1130614,"length":187,"previous":"M21-GAP-03057","next":"M21-GAP-03059"},"M21-GAP-03059":{"line":6314,"offset":1130801,"length":187,"previous":"M21-GAP-03058","next":"M21-GAP-03060"},"M21-GAP-03060":{"line":6315,"offset":1130988,"length":187,"previous":"M21-GAP-03059","next":"M21-GAP-03061"},"M21-GAP-03061":{"line":6316,"offset":1131175,"length":186,"previous":"M21-GAP-03060","next":"M21-GAP-03062"},"M21-GAP-03062":{"line":6317,"offset":1131361,"length":186,"previous":"M21-GAP-03061","next":"M21-GAP-03063"},"M21-GAP-03063":{"line":6318,"offset":1131547,"length":186,"previous":"M21-GAP-03062","next":"M21-GAP-03064"},"M21-GAP-03064":{"line":6319,"offset":1131733,"length":186,"previous":"M21-GAP-03063","next":"M21-GAP-03065"},"M21-GAP-03065":{"line":6320,"offset":1131919,"length":186,"previous":"M21-GAP-03064","next":"M21-GAP-03066"},"M21-GAP-03066":{"line":6321,"offset":1132105,"length":186,"previous":"M21-GAP-03065","next":"M21-GAP-03067"},"M21-GAP-03067":{"line":6322,"offset":1132291,"length":186,"previous":"M21-GAP-03066","next":"M21-GAP-03068"},"M21-GAP-03068":{"line":6323,"offset":1132477,"length":186,"previous":"M21-GAP-03067","next":"M21-GAP-03069"},"M21-GAP-03069":{"line":6324,"offset":1132663,"length":173,"previous":"M21-GAP-03068","next":"M21-GAP-03070"},"M21-GAP-03070":{"line":6325,"offset":1132836,"length":173,"previous":"M21-GAP-03069","next":"M21-GAP-03071"},"M21-GAP-03071":{"line":6326,"offset":1133009,"length":174,"previous":"M21-GAP-03070","next":"M21-GAP-03072"},"M21-GAP-03072":{"line":6327,"offset":1133183,"length":174,"previous":"M21-GAP-03071","next":"M21-GAP-03073"},"M21-GAP-03073":{"line":6328,"offset":1133357,"length":174,"previous":"M21-GAP-03072","next":"M21-GAP-03074"},"M21-GAP-03074":{"line":6329,"offset":1133531,"length":174,"previous":"M21-GAP-03073","next":"M21-GAP-03075"},"M21-GAP-03075":{"line":6330,"offset":1133705,"length":174,"previous":"M21-GAP-03074","next":"M21-GAP-03076"},"M21-GAP-03076":{"line":6331,"offset":1133879,"length":174,"previous":"M21-GAP-03075","next":"M21-GAP-03077"},"M21-GAP-03077":{"line":6332,"offset":1134053,"length":174,"previous":"M21-GAP-03076","next":"M21-GAP-03078"},"M21-GAP-03078":{"line":6333,"offset":1134227,"length":174,"previous":"M21-GAP-03077","next":"M21-GAP-03079"},"M21-GAP-03079":{"line":6334,"offset":1134401,"length":174,"previous":"M21-GAP-03078","next":"M21-GAP-03080"},"M21-GAP-03080":{"line":6335,"offset":1134575,"length":174,"previous":"M21-GAP-03079","next":"M21-GAP-03081"},"M21-GAP-03081":{"line":6336,"offset":1134749,"length":173,"previous":"M21-GAP-03080","next":"M21-GAP-03082"},"M21-GAP-03082":{"line":6337,"offset":1134922,"length":174,"previous":"M21-GAP-03081","next":"M21-GAP-03083"},"M21-GAP-03083":{"line":6338,"offset":1135096,"length":174,"previous":"M21-GAP-03082","next":"M21-GAP-03084"},"M21-GAP-03084":{"line":6339,"offset":1135270,"length":174,"previous":"M21-GAP-03083","next":"M21-GAP-03085"},"M21-GAP-03085":{"line":6340,"offset":1135444,"length":174,"previous":"M21-GAP-03084","next":"M21-GAP-03086"},"M21-GAP-03086":{"line":6341,"offset":1135618,"length":174,"previous":"M21-GAP-03085","next":"M21-GAP-03087"},"M21-GAP-03087":{"line":6342,"offset":1135792,"length":173,"previous":"M21-GAP-03086","next":"M21-GAP-03088"},"M21-GAP-03088":{"line":6343,"offset":1135965,"length":173,"previous":"M21-GAP-03087","next":"M21-GAP-03089"},"M21-GAP-03089":{"line":6344,"offset":1136138,"length":173,"previous":"M21-GAP-03088","next":"M21-GAP-03090"},"M21-GAP-03090":{"line":6345,"offset":1136311,"length":173,"previous":"M21-GAP-03089","next":"M21-GAP-03091"},"M21-GAP-03091":{"line":6346,"offset":1136484,"length":173,"previous":"M21-GAP-03090","next":"M21-GAP-03092"},"M21-GAP-03092":{"line":6347,"offset":1136657,"length":173,"previous":"M21-GAP-03091","next":"M21-GAP-03093"},"M21-GAP-03093":{"line":6348,"offset":1136830,"length":173,"previous":"M21-GAP-03092","next":"M21-GAP-03094"},"M21-GAP-03094":{"line":6349,"offset":1137003,"length":185,"previous":"M21-GAP-03093","next":"M21-GAP-03095"},"M21-GAP-03095":{"line":6350,"offset":1137188,"length":183,"previous":"M21-GAP-03094","next":"M21-GAP-03096"},"M21-GAP-03096":{"line":6351,"offset":1137371,"length":183,"previous":"M21-GAP-03095","next":"M21-GAP-03097"},"M21-GAP-03097":{"line":6352,"offset":1137554,"length":184,"previous":"M21-GAP-03096","next":"M21-GAP-03098"},"M21-GAP-03098":{"line":6353,"offset":1137738,"length":184,"previous":"M21-GAP-03097","next":"M21-GAP-03099"},"M21-GAP-03099":{"line":6354,"offset":1137922,"length":184,"previous":"M21-GAP-03098","next":"M21-GAP-03100"},"M21-GAP-03100":{"line":6355,"offset":1138106,"length":184,"previous":"M21-GAP-03099","next":"M21-GAP-03101"},"M21-GAP-03101":{"line":6356,"offset":1138290,"length":184,"previous":"M21-GAP-03100","next":"M21-GAP-03102"},"M21-GAP-03102":{"line":6357,"offset":1138474,"length":184,"previous":"M21-GAP-03101","next":"M21-GAP-03103"},"M21-GAP-03103":{"line":6358,"offset":1138658,"length":184,"previous":"M21-GAP-03102","next":"M21-GAP-03104"},"M21-GAP-03104":{"line":6359,"offset":1138842,"length":184,"previous":"M21-GAP-03103","next":"M21-GAP-03105"},"M21-GAP-03105":{"line":6360,"offset":1139026,"length":184,"previous":"M21-GAP-03104","next":"M21-GAP-03106"},"M21-GAP-03106":{"line":6361,"offset":1139210,"length":184,"previous":"M21-GAP-03105","next":"M21-GAP-03107"},"M21-GAP-03107":{"line":6362,"offset":1139394,"length":183,"previous":"M21-GAP-03106","next":"M21-GAP-03108"},"M21-GAP-03108":{"line":6363,"offset":1139577,"length":184,"previous":"M21-GAP-03107","next":"M21-GAP-03109"},"M21-GAP-03109":{"line":6364,"offset":1139761,"length":184,"previous":"M21-GAP-03108","next":"M21-GAP-03110"},"M21-GAP-03110":{"line":6365,"offset":1139945,"length":184,"previous":"M21-GAP-03109","next":"M21-GAP-03111"},"M21-GAP-03111":{"line":6366,"offset":1140129,"length":184,"previous":"M21-GAP-03110","next":"M21-GAP-03112"},"M21-GAP-03112":{"line":6367,"offset":1140313,"length":184,"previous":"M21-GAP-03111","next":"M21-GAP-03113"},"M21-GAP-03113":{"line":6368,"offset":1140497,"length":184,"previous":"M21-GAP-03112","next":"M21-GAP-03114"},"M21-GAP-03114":{"line":6369,"offset":1140681,"length":184,"previous":"M21-GAP-03113","next":"M21-GAP-03115"},"M21-GAP-03115":{"line":6370,"offset":1140865,"length":184,"previous":"M21-GAP-03114","next":"M21-GAP-03116"},"M21-GAP-03116":{"line":6371,"offset":1141049,"length":184,"previous":"M21-GAP-03115","next":"M21-GAP-03117"},"M21-GAP-03117":{"line":6372,"offset":1141233,"length":184,"previous":"M21-GAP-03116","next":"M21-GAP-03118"},"M21-GAP-03118":{"line":6373,"offset":1141417,"length":183,"previous":"M21-GAP-03117","next":"M21-GAP-03119"},"M21-GAP-03119":{"line":6374,"offset":1141600,"length":184,"previous":"M21-GAP-03118","next":"M21-GAP-03120"},"M21-GAP-03120":{"line":6375,"offset":1141784,"length":184,"previous":"M21-GAP-03119","next":"M21-GAP-03121"},"M21-GAP-03121":{"line":6376,"offset":1141968,"length":184,"previous":"M21-GAP-03120","next":"M21-GAP-03122"},"M21-GAP-03122":{"line":6377,"offset":1142152,"length":184,"previous":"M21-GAP-03121","next":"M21-GAP-03123"},"M21-GAP-03123":{"line":6378,"offset":1142336,"length":184,"previous":"M21-GAP-03122","next":"M21-GAP-03124"},"M21-GAP-03124":{"line":6379,"offset":1142520,"length":184,"previous":"M21-GAP-03123","next":"M21-GAP-03125"},"M21-GAP-03125":{"line":6380,"offset":1142704,"length":184,"previous":"M21-GAP-03124","next":"M21-GAP-03126"},"M21-GAP-03126":{"line":6381,"offset":1142888,"length":184,"previous":"M21-GAP-03125","next":"M21-GAP-03127"},"M21-GAP-03127":{"line":6382,"offset":1143072,"length":184,"previous":"M21-GAP-03126","next":"M21-GAP-03128"},"M21-GAP-03128":{"line":6383,"offset":1143256,"length":183,"previous":"M21-GAP-03127","next":"M21-GAP-03129"},"M21-GAP-03129":{"line":6384,"offset":1143439,"length":183,"previous":"M21-GAP-03128","next":"M21-GAP-03130"},"M21-GAP-03130":{"line":6385,"offset":1143622,"length":183,"previous":"M21-GAP-03129","next":"M21-GAP-03131"},"M21-GAP-03131":{"line":6386,"offset":1143805,"length":183,"previous":"M21-GAP-03130","next":"M21-GAP-03132"},"M21-GAP-03132":{"line":6387,"offset":1143988,"length":183,"previous":"M21-GAP-03131","next":"M21-GAP-03133"},"M21-GAP-03133":{"line":6388,"offset":1144171,"length":183,"previous":"M21-GAP-03132","next":"M21-GAP-03134"},"M21-GAP-03134":{"line":6389,"offset":1144354,"length":188,"previous":"M21-GAP-03133","next":"M21-GAP-03135"},"M21-GAP-03135":{"line":6390,"offset":1144542,"length":188,"previous":"M21-GAP-03134","next":"M21-GAP-03136"},"M21-GAP-03136":{"line":6391,"offset":1144730,"length":189,"previous":"M21-GAP-03135","next":"M21-GAP-03137"},"M21-GAP-03137":{"line":6392,"offset":1144919,"length":189,"previous":"M21-GAP-03136","next":"M21-GAP-03138"},"M21-GAP-03138":{"line":6393,"offset":1145108,"length":189,"previous":"M21-GAP-03137","next":"M21-GAP-03139"},"M21-GAP-03139":{"line":6394,"offset":1145297,"length":189,"previous":"M21-GAP-03138","next":"M21-GAP-03140"},"M21-GAP-03140":{"line":6395,"offset":1145486,"length":188,"previous":"M21-GAP-03139","next":"M21-GAP-03141"},"M21-GAP-03141":{"line":6396,"offset":1145674,"length":188,"previous":"M21-GAP-03140","next":"M21-GAP-03142"},"M21-GAP-03142":{"line":6397,"offset":1145862,"length":188,"previous":"M21-GAP-03141","next":"M21-GAP-03143"},"M21-GAP-03143":{"line":6398,"offset":1146050,"length":188,"previous":"M21-GAP-03142","next":"M21-GAP-03144"},"M21-GAP-03144":{"line":6399,"offset":1146238,"length":188,"previous":"M21-GAP-03143","next":"M21-GAP-03145"},"M21-GAP-03145":{"line":6400,"offset":1146426,"length":188,"previous":"M21-GAP-03144","next":"M21-GAP-03146"},"M21-GAP-03146":{"line":6401,"offset":1146614,"length":188,"previous":"M21-GAP-03145","next":"M21-GAP-03147"},"M21-GAP-03147":{"line":6402,"offset":1146802,"length":188,"previous":"M21-GAP-03146","next":"M21-GAP-03148"},"M21-GAP-03148":{"line":6403,"offset":1146990,"length":184,"previous":"M21-GAP-03147","next":"M21-GAP-03149"},"M21-GAP-03149":{"line":6404,"offset":1147174,"length":189,"previous":"M21-GAP-03148","next":"M21-GAP-03150"},"M21-GAP-03150":{"line":6405,"offset":1147363,"length":189,"previous":"M21-GAP-03149","next":"M21-GAP-03151"},"M21-GAP-03151":{"line":6406,"offset":1147552,"length":190,"previous":"M21-GAP-03150","next":"M21-GAP-03152"},"M21-GAP-03152":{"line":6407,"offset":1147742,"length":190,"previous":"M21-GAP-03151","next":"M21-GAP-03153"},"M21-GAP-03153":{"line":6408,"offset":1147932,"length":189,"previous":"M21-GAP-03152","next":"M21-GAP-03154"},"M21-GAP-03154":{"line":6409,"offset":1148121,"length":189,"previous":"M21-GAP-03153","next":"M21-GAP-03155"},"M21-GAP-03155":{"line":6410,"offset":1148310,"length":189,"previous":"M21-GAP-03154","next":"M21-GAP-03156"},"M21-GAP-03156":{"line":6411,"offset":1148499,"length":189,"previous":"M21-GAP-03155","next":"M21-GAP-03157"},"M21-GAP-03157":{"line":6412,"offset":1148688,"length":189,"previous":"M21-GAP-03156","next":"M21-GAP-03158"},"M21-GAP-03158":{"line":6413,"offset":1148877,"length":189,"previous":"M21-GAP-03157","next":"M21-GAP-03159"},"M21-GAP-03159":{"line":6414,"offset":1149066,"length":189,"previous":"M21-GAP-03158","next":"M21-GAP-03160"},"M21-GAP-03160":{"line":6415,"offset":1149255,"length":189,"previous":"M21-GAP-03159","next":"M21-GAP-03161"},"M21-GAP-03161":{"line":6416,"offset":1149444,"length":186,"previous":"M21-GAP-03160","next":"M21-GAP-03162"},"M21-GAP-03162":{"line":6417,"offset":1149630,"length":186,"previous":"M21-GAP-03161","next":"M21-GAP-03163"},"M21-GAP-03163":{"line":6418,"offset":1149816,"length":186,"previous":"M21-GAP-03162","next":"M21-GAP-03164"},"M21-GAP-03164":{"line":6419,"offset":1150002,"length":186,"previous":"M21-GAP-03163","next":"M21-GAP-03165"},"M21-GAP-03165":{"line":6420,"offset":1150188,"length":186,"previous":"M21-GAP-03164","next":"M21-GAP-03166"},"M21-GAP-03166":{"line":6421,"offset":1150374,"length":215,"previous":"M21-GAP-03165","next":"M21-GAP-03167"},"M21-GAP-03167":{"line":6422,"offset":1150589,"length":215,"previous":"M21-GAP-03166","next":"M21-GAP-03168"},"M21-GAP-03168":{"line":6423,"offset":1150804,"length":215,"previous":"M21-GAP-03167","next":"M21-GAP-03169"},"M21-GAP-03169":{"line":6424,"offset":1151019,"length":215,"previous":"M21-GAP-03168","next":"M21-GAP-03170"},"M21-GAP-03170":{"line":6425,"offset":1151234,"length":215,"previous":"M21-GAP-03169","next":"M21-GAP-03171"},"M21-GAP-03171":{"line":6426,"offset":1151449,"length":215,"previous":"M21-GAP-03170","next":"M21-GAP-03172"},"M21-GAP-03172":{"line":6427,"offset":1151664,"length":184,"previous":"M21-GAP-03171","next":"M21-GAP-03173"},"M21-GAP-03173":{"line":6428,"offset":1151848,"length":184,"previous":"M21-GAP-03172","next":"M21-GAP-03174"},"M21-GAP-03174":{"line":6429,"offset":1152032,"length":185,"previous":"M21-GAP-03173","next":"M21-GAP-03175"},"M21-GAP-03175":{"line":6430,"offset":1152217,"length":185,"previous":"M21-GAP-03174","next":"M21-GAP-03176"},"M21-GAP-03176":{"line":6431,"offset":1152402,"length":185,"previous":"M21-GAP-03175","next":"M21-GAP-03177"},"M21-GAP-03177":{"line":6432,"offset":1152587,"length":185,"previous":"M21-GAP-03176","next":"M21-GAP-03178"},"M21-GAP-03178":{"line":6433,"offset":1152772,"length":185,"previous":"M21-GAP-03177","next":"M21-GAP-03179"},"M21-GAP-03179":{"line":6434,"offset":1152957,"length":185,"previous":"M21-GAP-03178","next":"M21-GAP-03180"},"M21-GAP-03180":{"line":6435,"offset":1153142,"length":185,"previous":"M21-GAP-03179","next":"M21-GAP-03181"},"M21-GAP-03181":{"line":6436,"offset":1153327,"length":185,"previous":"M21-GAP-03180","next":"M21-GAP-03182"},"M21-GAP-03182":{"line":6437,"offset":1153512,"length":185,"previous":"M21-GAP-03181","next":"M21-GAP-03183"},"M21-GAP-03183":{"line":6438,"offset":1153697,"length":185,"previous":"M21-GAP-03182","next":"M21-GAP-03184"},"M21-GAP-03184":{"line":6439,"offset":1153882,"length":184,"previous":"M21-GAP-03183","next":"M21-GAP-03185"},"M21-GAP-03185":{"line":6440,"offset":1154066,"length":185,"previous":"M21-GAP-03184","next":"M21-GAP-03186"},"M21-GAP-03186":{"line":6441,"offset":1154251,"length":185,"previous":"M21-GAP-03185","next":"M21-GAP-03187"},"M21-GAP-03187":{"line":6442,"offset":1154436,"length":185,"previous":"M21-GAP-03186","next":"M21-GAP-03188"},"M21-GAP-03188":{"line":6443,"offset":1154621,"length":185,"previous":"M21-GAP-03187","next":"M21-GAP-03189"},"M21-GAP-03189":{"line":6444,"offset":1154806,"length":185,"previous":"M21-GAP-03188","next":"M21-GAP-03190"},"M21-GAP-03190":{"line":6445,"offset":1154991,"length":185,"previous":"M21-GAP-03189","next":"M21-GAP-03191"},"M21-GAP-03191":{"line":6446,"offset":1155176,"length":185,"previous":"M21-GAP-03190","next":"M21-GAP-03192"},"M21-GAP-03192":{"line":6447,"offset":1155361,"length":185,"previous":"M21-GAP-03191","next":"M21-GAP-03193"},"M21-GAP-03193":{"line":6448,"offset":1155546,"length":185,"previous":"M21-GAP-03192","next":"M21-GAP-03194"},"M21-GAP-03194":{"line":6449,"offset":1155731,"length":185,"previous":"M21-GAP-03193","next":"M21-GAP-03195"},"M21-GAP-03195":{"line":6450,"offset":1155916,"length":184,"previous":"M21-GAP-03194","next":"M21-GAP-03196"},"M21-GAP-03196":{"line":6451,"offset":1156100,"length":185,"previous":"M21-GAP-03195","next":"M21-GAP-03197"},"M21-GAP-03197":{"line":6452,"offset":1156285,"length":185,"previous":"M21-GAP-03196","next":"M21-GAP-03198"},"M21-GAP-03198":{"line":6453,"offset":1156470,"length":185,"previous":"M21-GAP-03197","next":"M21-GAP-03199"},"M21-GAP-03199":{"line":6454,"offset":1156655,"length":185,"previous":"M21-GAP-03198","next":"M21-GAP-03200"},"M21-GAP-03200":{"line":6455,"offset":1156840,"length":185,"previous":"M21-GAP-03199","next":"M21-GAP-03201"},"M21-GAP-03201":{"line":6456,"offset":1157025,"length":185,"previous":"M21-GAP-03200","next":"M21-GAP-03202"},"M21-GAP-03202":{"line":6457,"offset":1157210,"length":185,"previous":"M21-GAP-03201","next":"M21-GAP-03203"},"M21-GAP-03203":{"line":6458,"offset":1157395,"length":185,"previous":"M21-GAP-03202","next":"M21-GAP-03204"},"M21-GAP-03204":{"line":6459,"offset":1157580,"length":185,"previous":"M21-GAP-03203","next":"M21-GAP-03205"},"M21-GAP-03205":{"line":6460,"offset":1157765,"length":185,"previous":"M21-GAP-03204","next":"M21-GAP-03206"},"M21-GAP-03206":{"line":6461,"offset":1157950,"length":184,"previous":"M21-GAP-03205","next":"M21-GAP-03207"},"M21-GAP-03207":{"line":6462,"offset":1158134,"length":185,"previous":"M21-GAP-03206","next":"M21-GAP-03208"},"M21-GAP-03208":{"line":6463,"offset":1158319,"length":185,"previous":"M21-GAP-03207","next":"M21-GAP-03209"},"M21-GAP-03209":{"line":6464,"offset":1158504,"length":185,"previous":"M21-GAP-03208","next":"M21-GAP-03210"},"M21-GAP-03210":{"line":6465,"offset":1158689,"length":185,"previous":"M21-GAP-03209","next":"M21-GAP-03211"},"M21-GAP-03211":{"line":6466,"offset":1158874,"length":185,"previous":"M21-GAP-03210","next":"M21-GAP-03212"},"M21-GAP-03212":{"line":6467,"offset":1159059,"length":185,"previous":"M21-GAP-03211","next":"M21-GAP-03213"},"M21-GAP-03213":{"line":6468,"offset":1159244,"length":185,"previous":"M21-GAP-03212","next":"M21-GAP-03214"},"M21-GAP-03214":{"line":6469,"offset":1159429,"length":185,"previous":"M21-GAP-03213","next":"M21-GAP-03215"},"M21-GAP-03215":{"line":6470,"offset":1159614,"length":185,"previous":"M21-GAP-03214","next":"M21-GAP-03216"},"M21-GAP-03216":{"line":6471,"offset":1159799,"length":185,"previous":"M21-GAP-03215","next":"M21-GAP-03217"},"M21-GAP-03217":{"line":6472,"offset":1159984,"length":184,"previous":"M21-GAP-03216","next":"M21-GAP-03218"},"M21-GAP-03218":{"line":6473,"offset":1160168,"length":184,"previous":"M21-GAP-03217","next":"M21-GAP-03219"},"M21-GAP-03219":{"line":6474,"offset":1160352,"length":184,"previous":"M21-GAP-03218","next":"M21-GAP-03220"},"M21-GAP-03220":{"line":6475,"offset":1160536,"length":184,"previous":"M21-GAP-03219","next":"M21-GAP-03221"},"M21-GAP-03221":{"line":6476,"offset":1160720,"length":184,"previous":"M21-GAP-03220","next":"M21-GAP-03222"},"M21-GAP-03222":{"line":6477,"offset":1160904,"length":184,"previous":"M21-GAP-03221","next":"M21-GAP-03223"},"M21-GAP-03223":{"line":6478,"offset":1161088,"length":179,"previous":"M21-GAP-03222","next":"M21-GAP-03224"},"M21-GAP-03224":{"line":6479,"offset":1161267,"length":179,"previous":"M21-GAP-03223","next":"M21-GAP-03225"},"M21-GAP-03225":{"line":6480,"offset":1161446,"length":180,"previous":"M21-GAP-03224","next":"M21-GAP-03226"},"M21-GAP-03226":{"line":6481,"offset":1161626,"length":180,"previous":"M21-GAP-03225","next":"M21-GAP-03227"},"M21-GAP-03227":{"line":6482,"offset":1161806,"length":180,"previous":"M21-GAP-03226","next":"M21-GAP-03228"},"M21-GAP-03228":{"line":6483,"offset":1161986,"length":180,"previous":"M21-GAP-03227","next":"M21-GAP-03229"},"M21-GAP-03229":{"line":6484,"offset":1162166,"length":180,"previous":"M21-GAP-03228","next":"M21-GAP-03230"},"M21-GAP-03230":{"line":6485,"offset":1162346,"length":180,"previous":"M21-GAP-03229","next":"M21-GAP-03231"},"M21-GAP-03231":{"line":6486,"offset":1162526,"length":180,"previous":"M21-GAP-03230","next":"M21-GAP-03232"},"M21-GAP-03232":{"line":6487,"offset":1162706,"length":180,"previous":"M21-GAP-03231","next":"M21-GAP-03233"},"M21-GAP-03233":{"line":6488,"offset":1162886,"length":180,"previous":"M21-GAP-03232","next":"M21-GAP-03234"},"M21-GAP-03234":{"line":6489,"offset":1163066,"length":180,"previous":"M21-GAP-03233","next":"M21-GAP-03235"},"M21-GAP-03235":{"line":6490,"offset":1163246,"length":179,"previous":"M21-GAP-03234","next":"M21-GAP-03236"},"M21-GAP-03236":{"line":6491,"offset":1163425,"length":180,"previous":"M21-GAP-03235","next":"M21-GAP-03237"},"M21-GAP-03237":{"line":6492,"offset":1163605,"length":180,"previous":"M21-GAP-03236","next":"M21-GAP-03238"},"M21-GAP-03238":{"line":6493,"offset":1163785,"length":180,"previous":"M21-GAP-03237","next":"M21-GAP-03239"},"M21-GAP-03239":{"line":6494,"offset":1163965,"length":180,"previous":"M21-GAP-03238","next":"M21-GAP-03240"},"M21-GAP-03240":{"line":6495,"offset":1164145,"length":180,"previous":"M21-GAP-03239","next":"M21-GAP-03241"},"M21-GAP-03241":{"line":6496,"offset":1164325,"length":179,"previous":"M21-GAP-03240","next":"M21-GAP-03242"},"M21-GAP-03242":{"line":6497,"offset":1164504,"length":179,"previous":"M21-GAP-03241","next":"M21-GAP-03243"},"M21-GAP-03243":{"line":6498,"offset":1164683,"length":179,"previous":"M21-GAP-03242","next":"M21-GAP-03244"},"M21-GAP-03244":{"line":6499,"offset":1164862,"length":179,"previous":"M21-GAP-03243","next":"M21-GAP-03245"},"M21-GAP-03245":{"line":6500,"offset":1165041,"length":179,"previous":"M21-GAP-03244","next":"M21-GAP-03246"},"M21-GAP-03246":{"line":6501,"offset":1165220,"length":179,"previous":"M21-GAP-03245","next":"M21-GAP-03247"},"M21-GAP-03247":{"line":6502,"offset":1165399,"length":179,"previous":"M21-GAP-03246","next":"M21-GAP-03248"},"M21-GAP-03248":{"line":6503,"offset":1165578,"length":173,"previous":"M21-GAP-03247","next":"M21-GAP-03249"},"M21-GAP-03249":{"line":6504,"offset":1165751,"length":173,"previous":"M21-GAP-03248","next":"M21-GAP-03250"},"M21-GAP-03250":{"line":6505,"offset":1165924,"length":174,"previous":"M21-GAP-03249","next":"M21-GAP-03251"},"M21-GAP-03251":{"line":6506,"offset":1166098,"length":174,"previous":"M21-GAP-03250","next":"M21-GAP-03252"},"M21-GAP-03252":{"line":6507,"offset":1166272,"length":174,"previous":"M21-GAP-03251","next":"M21-GAP-03253"},"M21-GAP-03253":{"line":6508,"offset":1166446,"length":174,"previous":"M21-GAP-03252","next":"M21-GAP-03254"},"M21-GAP-03254":{"line":6509,"offset":1166620,"length":174,"previous":"M21-GAP-03253","next":"M21-GAP-03255"},"M21-GAP-03255":{"line":6510,"offset":1166794,"length":174,"previous":"M21-GAP-03254","next":"M21-GAP-03256"},"M21-GAP-03256":{"line":6511,"offset":1166968,"length":174,"previous":"M21-GAP-03255","next":"M21-GAP-03257"},"M21-GAP-03257":{"line":6512,"offset":1167142,"length":174,"previous":"M21-GAP-03256","next":"M21-GAP-03258"},"M21-GAP-03258":{"line":6513,"offset":1167316,"length":174,"previous":"M21-GAP-03257","next":"M21-GAP-03259"},"M21-GAP-03259":{"line":6514,"offset":1167490,"length":174,"previous":"M21-GAP-03258","next":"M21-GAP-03260"},"M21-GAP-03260":{"line":6515,"offset":1167664,"length":173,"previous":"M21-GAP-03259","next":"M21-GAP-03261"},"M21-GAP-03261":{"line":6516,"offset":1167837,"length":174,"previous":"M21-GAP-03260","next":"M21-GAP-03262"},"M21-GAP-03262":{"line":6517,"offset":1168011,"length":174,"previous":"M21-GAP-03261","next":"M21-GAP-03263"},"M21-GAP-03263":{"line":6518,"offset":1168185,"length":174,"previous":"M21-GAP-03262","next":"M21-GAP-03264"},"M21-GAP-03264":{"line":6519,"offset":1168359,"length":174,"previous":"M21-GAP-03263","next":"M21-GAP-03265"},"M21-GAP-03265":{"line":6520,"offset":1168533,"length":174,"previous":"M21-GAP-03264","next":"M21-GAP-03266"},"M21-GAP-03266":{"line":6521,"offset":1168707,"length":174,"previous":"M21-GAP-03265","next":"M21-GAP-03267"},"M21-GAP-03267":{"line":6522,"offset":1168881,"length":174,"previous":"M21-GAP-03266","next":"M21-GAP-03268"},"M21-GAP-03268":{"line":6523,"offset":1169055,"length":174,"previous":"M21-GAP-03267","next":"M21-GAP-03269"},"M21-GAP-03269":{"line":6524,"offset":1169229,"length":174,"previous":"M21-GAP-03268","next":"M21-GAP-03270"},"M21-GAP-03270":{"line":6525,"offset":1169403,"length":174,"previous":"M21-GAP-03269","next":"M21-GAP-03271"},"M21-GAP-03271":{"line":6526,"offset":1169577,"length":173,"previous":"M21-GAP-03270","next":"M21-GAP-03272"},"M21-GAP-03272":{"line":6527,"offset":1169750,"length":174,"previous":"M21-GAP-03271","next":"M21-GAP-03273"},"M21-GAP-03273":{"line":6528,"offset":1169924,"length":174,"previous":"M21-GAP-03272","next":"M21-GAP-03274"},"M21-GAP-03274":{"line":6529,"offset":1170098,"length":174,"previous":"M21-GAP-03273","next":"M21-GAP-03275"},"M21-GAP-03275":{"line":6530,"offset":1170272,"length":173,"previous":"M21-GAP-03274","next":"M21-GAP-03276"},"M21-GAP-03276":{"line":6531,"offset":1170445,"length":173,"previous":"M21-GAP-03275","next":"M21-GAP-03277"},"M21-GAP-03277":{"line":6532,"offset":1170618,"length":173,"previous":"M21-GAP-03276","next":"M21-GAP-03278"},"M21-GAP-03278":{"line":6533,"offset":1170791,"length":173,"previous":"M21-GAP-03277","next":"M21-GAP-03279"},"M21-GAP-03279":{"line":6534,"offset":1170964,"length":173,"previous":"M21-GAP-03278","next":"M21-GAP-03280"},"M21-GAP-03280":{"line":6535,"offset":1171137,"length":173,"previous":"M21-GAP-03279","next":"M21-GAP-03281"},"M21-GAP-03281":{"line":6536,"offset":1171310,"length":177,"previous":"M21-GAP-03280","next":"M21-GAP-03282"},"M21-GAP-03282":{"line":6537,"offset":1171487,"length":180,"previous":"M21-GAP-03281","next":"M21-GAP-03283"},"M21-GAP-03283":{"line":6538,"offset":1171667,"length":187,"previous":"M21-GAP-03282","next":"M21-GAP-03284"},"M21-GAP-03284":{"line":6539,"offset":1171854,"length":182,"previous":"M21-GAP-03283","next":"M21-GAP-03285"},"M21-GAP-03285":{"line":6540,"offset":1172036,"length":202,"previous":"M21-GAP-03284","next":"M21-GAP-03286"},"M21-GAP-03286":{"line":6541,"offset":1172238,"length":204,"previous":"M21-GAP-03285","next":"M21-GAP-03287"},"M21-GAP-03287":{"line":6542,"offset":1172442,"length":208,"previous":"M21-GAP-03286","next":"M21-GAP-03288"},"M21-GAP-03288":{"line":6543,"offset":1172650,"length":198,"previous":"M21-GAP-03287","next":"M21-GAP-03289"},"M21-GAP-03289":{"line":6544,"offset":1172848,"length":195,"previous":"M21-GAP-03288","next":"M21-GAP-03290"},"M21-GAP-03290":{"line":6545,"offset":1173043,"length":197,"previous":"M21-GAP-03289","next":"M21-GAP-03291"},"M21-GAP-03291":{"line":6546,"offset":1173240,"length":192,"previous":"M21-GAP-03290","next":"M21-GAP-03292"},"M21-GAP-03292":{"line":6547,"offset":1173432,"length":205,"previous":"M21-GAP-03291","next":"M21-GAP-03293"},"M21-GAP-03293":{"line":6548,"offset":1173637,"length":195,"previous":"M21-GAP-03292","next":"M21-GAP-03294"},"M21-GAP-03294":{"line":6549,"offset":1173832,"length":194,"previous":"M21-GAP-03293","next":"M21-GAP-03295"},"M21-GAP-03295":{"line":6550,"offset":1174026,"length":197,"previous":"M21-GAP-03294","next":"M21-GAP-03296"},"M21-GAP-03296":{"line":6551,"offset":1174223,"length":192,"previous":"M21-GAP-03295","next":"M21-GAP-03297"},"M21-GAP-03297":{"line":6552,"offset":1174415,"length":193,"previous":"M21-GAP-03296","next":"M21-GAP-03298"},"M21-GAP-03298":{"line":6553,"offset":1174608,"length":192,"previous":"M21-GAP-03297","next":"M21-GAP-03299"},"M21-GAP-03299":{"line":6554,"offset":1174800,"length":204,"previous":"M21-GAP-03298","next":"M21-GAP-03300"},"M21-GAP-03300":{"line":6555,"offset":1175004,"length":207,"previous":"M21-GAP-03299","next":"M21-GAP-03301"},"M21-GAP-03301":{"line":6556,"offset":1175211,"length":199,"previous":"M21-GAP-03300","next":"M21-GAP-03302"},"M21-GAP-03302":{"line":6557,"offset":1175410,"length":192,"previous":"M21-GAP-03301","next":"M21-GAP-03303"},"M21-GAP-03303":{"line":6558,"offset":1175602,"length":193,"previous":"M21-GAP-03302","next":"M21-GAP-03304"},"M21-GAP-03304":{"line":6559,"offset":1175795,"length":197,"previous":"M21-GAP-03303","next":"M21-GAP-03305"},"M21-GAP-03305":{"line":6560,"offset":1175992,"length":208,"previous":"M21-GAP-03304","next":"M21-GAP-03306"},"M21-GAP-03306":{"line":6561,"offset":1176200,"length":205,"previous":"M21-GAP-03305","next":"M21-GAP-03307"},"M21-GAP-03307":{"line":6562,"offset":1176405,"length":203,"previous":"M21-GAP-03306","next":"M21-GAP-03308"},"M21-GAP-03308":{"line":6563,"offset":1176608,"length":201,"previous":"M21-GAP-03307","next":"M21-GAP-03309"},"M21-GAP-03309":{"line":6564,"offset":1176809,"length":204,"previous":"M21-GAP-03308","next":"M21-GAP-03310"},"M21-GAP-03310":{"line":6565,"offset":1177013,"length":198,"previous":"M21-GAP-03309","next":"M21-GAP-03311"},"M21-GAP-03311":{"line":6566,"offset":1177211,"length":192,"previous":"M21-GAP-03310","next":"M21-GAP-03312"},"M21-GAP-03312":{"line":6567,"offset":1177403,"length":195,"previous":"M21-GAP-03311","next":"M21-GAP-03313"},"M21-GAP-03313":{"line":6568,"offset":1177598,"length":207,"previous":"M21-GAP-03312","next":"M21-GAP-03314"},"M21-GAP-03314":{"line":6569,"offset":1177805,"length":197,"previous":"M21-GAP-03313","next":"M21-GAP-03315"},"M21-GAP-03315":{"line":6570,"offset":1178002,"length":196,"previous":"M21-GAP-03314","next":"M21-GAP-03316"},"M21-GAP-03316":{"line":6571,"offset":1178198,"length":196,"previous":"M21-GAP-03315","next":"M21-GAP-03317"},"M21-GAP-03317":{"line":6572,"offset":1178394,"length":195,"previous":"M21-GAP-03316","next":"M21-GAP-03318"},"M21-GAP-03318":{"line":6573,"offset":1178589,"length":197,"previous":"M21-GAP-03317","next":"M21-GAP-03319"},"M21-GAP-03319":{"line":6574,"offset":1178786,"length":200,"previous":"M21-GAP-03318","next":"M21-GAP-03320"},"M21-GAP-03320":{"line":6575,"offset":1178986,"length":193,"previous":"M21-GAP-03319","next":"M21-GAP-03321"},"M21-GAP-03321":{"line":6576,"offset":1179179,"length":202,"previous":"M21-GAP-03320","next":"M21-GAP-03322"},"M21-GAP-03322":{"line":6577,"offset":1179381,"length":191,"previous":"M21-GAP-03321","next":"M21-GAP-03323"},"M21-GAP-03323":{"line":6578,"offset":1179572,"length":196,"previous":"M21-GAP-03322","next":"M21-GAP-03324"},"M21-GAP-03324":{"line":6579,"offset":1179768,"length":199,"previous":"M21-GAP-03323","next":"M21-GAP-03325"},"M21-GAP-03325":{"line":6580,"offset":1179967,"length":198,"previous":"M21-GAP-03324","next":"M21-GAP-03326"},"M21-GAP-03326":{"line":6581,"offset":1180165,"length":183,"previous":"M21-GAP-03325","next":"M21-GAP-03327"},"M21-GAP-03327":{"line":6582,"offset":1180348,"length":180,"previous":"M21-GAP-03326","next":"M21-GAP-03328"},"M21-GAP-03328":{"line":6583,"offset":1180528,"length":197,"previous":"M21-GAP-03327","next":"M21-GAP-03329"},"M21-GAP-03329":{"line":6584,"offset":1180725,"length":200,"previous":"M21-GAP-03328","next":"M21-GAP-03330"},"M21-GAP-03330":{"line":6585,"offset":1180925,"length":200,"previous":"M21-GAP-03329","next":"M21-GAP-03331"},"M21-GAP-03331":{"line":6586,"offset":1181125,"length":203,"previous":"M21-GAP-03330","next":"M21-GAP-03332"},"M21-GAP-03332":{"line":6587,"offset":1181328,"length":202,"previous":"M21-GAP-03331","next":"M21-GAP-03333"},"M21-GAP-03333":{"line":6588,"offset":1181530,"length":207,"previous":"M21-GAP-03332","next":"M21-GAP-03334"},"M21-GAP-03334":{"line":6589,"offset":1181737,"length":208,"previous":"M21-GAP-03333","next":"M21-GAP-03335"},"M21-GAP-03335":{"line":6590,"offset":1181945,"length":201,"previous":"M21-GAP-03334","next":"M21-GAP-03336"},"M21-GAP-03336":{"line":6591,"offset":1182146,"length":205,"previous":"M21-GAP-03335","next":"M21-GAP-03337"},"M21-GAP-03337":{"line":6592,"offset":1182351,"length":201,"previous":"M21-GAP-03336","next":"M21-GAP-03338"},"M21-GAP-03338":{"line":6593,"offset":1182552,"length":198,"previous":"M21-GAP-03337","next":"M21-GAP-03339"},"M21-GAP-03339":{"line":6594,"offset":1182750,"length":209,"previous":"M21-GAP-03338","next":"M21-GAP-03340"},"M21-GAP-03340":{"line":6595,"offset":1182959,"length":203,"previous":"M21-GAP-03339","next":"M21-GAP-03341"},"M21-GAP-03341":{"line":6596,"offset":1183162,"length":180,"previous":"M21-GAP-03340","next":"M21-GAP-03342"},"M21-GAP-03342":{"line":6597,"offset":1183342,"length":181,"previous":"M21-GAP-03341","next":"M21-GAP-03343"},"M21-GAP-03343":{"line":6598,"offset":1183523,"length":182,"previous":"M21-GAP-03342","next":"M21-GAP-03344"},"M21-GAP-03344":{"line":6599,"offset":1183705,"length":181,"previous":"M21-GAP-03343","next":"M21-GAP-03345"},"M21-GAP-03345":{"line":6600,"offset":1183886,"length":196,"previous":"M21-GAP-03344","next":"M21-GAP-03346"},"M21-GAP-03346":{"line":6601,"offset":1184082,"length":192,"previous":"M21-GAP-03345","next":"M21-GAP-03347"},"M21-GAP-03347":{"line":6602,"offset":1184274,"length":192,"previous":"M21-GAP-03346","next":"M21-GAP-03348"},"M21-GAP-03348":{"line":6603,"offset":1184466,"length":192,"previous":"M21-GAP-03347","next":"M21-GAP-03349"},"M21-GAP-03349":{"line":6604,"offset":1184658,"length":196,"previous":"M21-GAP-03348","next":"M21-GAP-03350"},"M21-GAP-03350":{"line":6605,"offset":1184854,"length":196,"previous":"M21-GAP-03349","next":"M21-GAP-03351"},"M21-GAP-03351":{"line":6606,"offset":1185050,"length":197,"previous":"M21-GAP-03350","next":"M21-GAP-03352"},"M21-GAP-03352":{"line":6607,"offset":1185247,"length":198,"previous":"M21-GAP-03351","next":"M21-GAP-03353"},"M21-GAP-03353":{"line":6608,"offset":1185445,"length":194,"previous":"M21-GAP-03352","next":"M21-GAP-03354"},"M21-GAP-03354":{"line":6609,"offset":1185639,"length":194,"previous":"M21-GAP-03353","next":"M21-GAP-03355"},"M21-GAP-03355":{"line":6610,"offset":1185833,"length":194,"previous":"M21-GAP-03354","next":"M21-GAP-03356"},"M21-GAP-03356":{"line":6611,"offset":1186027,"length":197,"previous":"M21-GAP-03355","next":"M21-GAP-03357"},"M21-GAP-03357":{"line":6612,"offset":1186224,"length":193,"previous":"M21-GAP-03356","next":"M21-GAP-03358"},"M21-GAP-03358":{"line":6613,"offset":1186417,"length":193,"previous":"M21-GAP-03357","next":"M21-GAP-03359"},"M21-GAP-03359":{"line":6614,"offset":1186610,"length":196,"previous":"M21-GAP-03358","next":"M21-GAP-03360"},"M21-GAP-03360":{"line":6615,"offset":1186806,"length":193,"previous":"M21-GAP-03359","next":"M21-GAP-03361"},"M21-GAP-03361":{"line":6616,"offset":1186999,"length":197,"previous":"M21-GAP-03360","next":"M21-GAP-03362"},"M21-GAP-03362":{"line":6617,"offset":1187196,"length":195,"previous":"M21-GAP-03361","next":"M21-GAP-03363"},"M21-GAP-03363":{"line":6618,"offset":1187391,"length":201,"previous":"M21-GAP-03362","next":"M21-GAP-03364"},"M21-GAP-03364":{"line":6619,"offset":1187592,"length":197,"previous":"M21-GAP-03363","next":"M21-GAP-03365"},"M21-GAP-03365":{"line":6620,"offset":1187789,"length":197,"previous":"M21-GAP-03364","next":"M21-GAP-03366"},"M21-GAP-03366":{"line":6621,"offset":1187986,"length":197,"previous":"M21-GAP-03365","next":"M21-GAP-03367"},"M21-GAP-03367":{"line":6622,"offset":1188183,"length":197,"previous":"M21-GAP-03366","next":"M21-GAP-03368"},"M21-GAP-03368":{"line":6623,"offset":1188380,"length":186,"previous":"M21-GAP-03367","next":"M21-GAP-03369"},"M21-GAP-03369":{"line":6624,"offset":1188566,"length":200,"previous":"M21-GAP-03368","next":"M21-GAP-03370"},"M21-GAP-03370":{"line":6625,"offset":1188766,"length":189,"previous":"M21-GAP-03369","next":"M21-GAP-03371"},"M21-GAP-03371":{"line":6626,"offset":1188955,"length":199,"previous":"M21-GAP-03370","next":"M21-GAP-03372"},"M21-GAP-03372":{"line":6627,"offset":1189154,"length":188,"previous":"M21-GAP-03371","next":"M21-GAP-03373"},"M21-GAP-03373":{"line":6628,"offset":1189342,"length":181,"previous":"M21-GAP-03372","next":"M21-GAP-03374"},"M21-GAP-03374":{"line":6629,"offset":1189523,"length":185,"previous":"M21-GAP-03373","next":"M21-GAP-03375"},"M21-GAP-03375":{"line":6630,"offset":1189708,"length":192,"previous":"M21-GAP-03374","next":"M21-GAP-03376"},"M21-GAP-03376":{"line":6631,"offset":1189900,"length":181,"previous":"M21-GAP-03375","next":"M21-GAP-03377"},"M21-GAP-03377":{"line":6632,"offset":1190081,"length":169,"previous":"M21-GAP-03376","next":"M21-GAP-03378"},"M21-GAP-03378":{"line":6633,"offset":1190250,"length":178,"previous":"M21-GAP-03377","next":"M21-GAP-03379"},"M21-GAP-03379":{"line":6634,"offset":1190428,"length":169,"previous":"M21-GAP-03378","next":"M21-GAP-03380"},"M21-GAP-03380":{"line":6635,"offset":1190597,"length":168,"previous":"M21-GAP-03379","next":"M21-GAP-03381"},"M21-GAP-03381":{"line":6636,"offset":1190765,"length":175,"previous":"M21-GAP-03380","next":"M21-GAP-03382"},"M21-GAP-03382":{"line":6637,"offset":1190940,"length":187,"previous":"M21-GAP-03381","next":"M21-GAP-03383"},"M21-GAP-03383":{"line":6638,"offset":1191127,"length":177,"previous":"M21-GAP-03382","next":"M21-GAP-03384"},"M21-GAP-03384":{"line":6639,"offset":1191304,"length":183,"previous":"M21-GAP-03383","next":"M21-GAP-03385"},"M21-GAP-03385":{"line":6640,"offset":1191487,"length":182,"previous":"M21-GAP-03384","next":"M21-GAP-03386"},"M21-GAP-03386":{"line":6641,"offset":1191669,"length":170,"previous":"M21-GAP-03385","next":"M21-GAP-03387"},"M21-GAP-03387":{"line":6642,"offset":1191839,"length":169,"previous":"M21-GAP-03386","next":"M21-GAP-03388"},"M21-GAP-03388":{"line":6643,"offset":1192008,"length":179,"previous":"M21-GAP-03387","next":"M21-GAP-03389"},"M21-GAP-03389":{"line":6644,"offset":1192187,"length":165,"previous":"M21-GAP-03388","next":"M21-GAP-03390"},"M21-GAP-03390":{"line":6645,"offset":1192352,"length":166,"previous":"M21-GAP-03389","next":"M21-GAP-03391"},"M21-GAP-03391":{"line":6646,"offset":1192518,"length":184,"previous":"M21-GAP-03390","next":"M21-GAP-03392"},"M21-GAP-03392":{"line":6647,"offset":1192702,"length":188,"previous":"M21-GAP-03391","next":"M21-GAP-03393"},"M21-GAP-03393":{"line":6648,"offset":1192890,"length":180,"previous":"M21-GAP-03392","next":"M21-GAP-03394"},"M21-GAP-03394":{"line":6649,"offset":1193070,"length":198,"previous":"M21-GAP-03393","next":"M21-GAP-03395"},"M21-GAP-03395":{"line":6650,"offset":1193268,"length":180,"previous":"M21-GAP-03394","next":"M21-GAP-03396"},"M21-GAP-03396":{"line":6651,"offset":1193448,"length":187,"previous":"M21-GAP-03395","next":"M21-GAP-03397"},"M21-GAP-03397":{"line":6652,"offset":1193635,"length":184,"previous":"M21-GAP-03396","next":"M21-GAP-03398"},"M21-GAP-03398":{"line":6653,"offset":1193819,"length":179,"previous":"M21-GAP-03397","next":"M21-GAP-03399"},"M21-GAP-03399":{"line":6654,"offset":1193998,"length":179,"previous":"M21-GAP-03398","next":"M21-GAP-03400"},"M21-GAP-03400":{"line":6655,"offset":1194177,"length":164,"previous":"M21-GAP-03399","next":"M21-GAP-03401"},"M21-GAP-03401":{"line":6656,"offset":1194341,"length":166,"previous":"M21-GAP-03400","next":"M21-GAP-03402"},"M21-GAP-03402":{"line":6657,"offset":1194507,"length":184,"previous":"M21-GAP-03401","next":"M21-GAP-03403"},"M21-GAP-03403":{"line":6658,"offset":1194691,"length":178,"previous":"M21-GAP-03402","next":"M21-GAP-03404"},"M21-GAP-03404":{"line":6659,"offset":1194869,"length":184,"previous":"M21-GAP-03403","next":"M21-GAP-03405"},"M21-GAP-03405":{"line":6660,"offset":1195053,"length":180,"previous":"M21-GAP-03404","next":"M21-GAP-03406"},"M21-GAP-03406":{"line":6661,"offset":1195233,"length":189,"previous":"M21-GAP-03405","next":"M21-GAP-03407"},"M21-GAP-03407":{"line":6662,"offset":1195422,"length":173,"previous":"M21-GAP-03406","next":"M21-GAP-03408"},"M21-GAP-03408":{"line":6663,"offset":1195595,"length":189,"previous":"M21-GAP-03407","next":"M21-GAP-03409"},"M21-GAP-03409":{"line":6664,"offset":1195784,"length":187,"previous":"M21-GAP-03408","next":"M21-GAP-03410"},"M21-GAP-03410":{"line":6665,"offset":1195971,"length":190,"previous":"M21-GAP-03409","next":"M21-GAP-03411"},"M21-GAP-03411":{"line":6666,"offset":1196161,"length":182,"previous":"M21-GAP-03410","next":"M21-GAP-03412"},"M21-GAP-03412":{"line":6667,"offset":1196343,"length":171,"previous":"M21-GAP-03411","next":"M21-GAP-03413"},"M21-GAP-03413":{"line":6668,"offset":1196514,"length":173,"previous":"M21-GAP-03412","next":"M21-GAP-03414"},"M21-GAP-03414":{"line":6669,"offset":1196687,"length":176,"previous":"M21-GAP-03413","next":"M21-GAP-03415"},"M21-GAP-03415":{"line":6670,"offset":1196863,"length":181,"previous":"M21-GAP-03414","next":"M21-GAP-03416"},"M21-GAP-03416":{"line":6671,"offset":1197044,"length":179,"previous":"M21-GAP-03415","next":"M21-GAP-03417"},"M21-GAP-03417":{"line":6672,"offset":1197223,"length":187,"previous":"M21-GAP-03416","next":"M21-GAP-03418"},"M21-GAP-03418":{"line":6673,"offset":1197410,"length":179,"previous":"M21-GAP-03417","next":"M21-GAP-03419"},"M21-GAP-03419":{"line":6674,"offset":1197589,"length":186,"previous":"M21-GAP-03418","next":"M21-GAP-03420"},"M21-GAP-03420":{"line":6675,"offset":1197775,"length":183,"previous":"M21-GAP-03419","next":"M21-GAP-03421"},"M21-GAP-03421":{"line":6676,"offset":1197958,"length":183,"previous":"M21-GAP-03420","next":"M21-GAP-03422"},"M21-GAP-03422":{"line":6677,"offset":1198141,"length":183,"previous":"M21-GAP-03421","next":"M21-GAP-03423"},"M21-GAP-03423":{"line":6678,"offset":1198324,"length":185,"previous":"M21-GAP-03422","next":"M21-GAP-03424"},"M21-GAP-03424":{"line":6679,"offset":1198509,"length":183,"previous":"M21-GAP-03423","next":"M21-GAP-03425"},"M21-GAP-03425":{"line":6680,"offset":1198692,"length":186,"previous":"M21-GAP-03424","next":"M21-GAP-03426"},"M21-GAP-03426":{"line":6681,"offset":1198878,"length":186,"previous":"M21-GAP-03425","next":"M21-GAP-03427"},"M21-GAP-03427":{"line":6682,"offset":1199064,"length":173,"previous":"M21-GAP-03426","next":"M21-GAP-03428"},"M21-GAP-03428":{"line":6683,"offset":1199237,"length":195,"previous":"M21-GAP-03427","next":"M21-GAP-03429"},"M21-GAP-03429":{"line":6684,"offset":1199432,"length":198,"previous":"M21-GAP-03428","next":"M21-GAP-03430"},"M21-GAP-03430":{"line":6685,"offset":1199630,"length":198,"previous":"M21-GAP-03429","next":"M21-GAP-03431"},"M21-GAP-03431":{"line":6686,"offset":1199828,"length":196,"previous":"M21-GAP-03430","next":"M21-GAP-03432"},"M21-GAP-03432":{"line":6687,"offset":1200024,"length":198,"previous":"M21-GAP-03431","next":"M21-GAP-03433"},"M21-GAP-03433":{"line":6688,"offset":1200222,"length":197,"previous":"M21-GAP-03432","next":"M21-GAP-03434"},"M21-GAP-03434":{"line":6689,"offset":1200419,"length":213,"previous":"M21-GAP-03433","next":"M21-GAP-03435"},"M21-GAP-03435":{"line":6690,"offset":1200632,"length":202,"previous":"M21-GAP-03434","next":"M21-GAP-03436"},"M21-GAP-03436":{"line":6691,"offset":1200834,"length":216,"previous":"M21-GAP-03435","next":"M21-GAP-03437"},"M21-GAP-03437":{"line":6692,"offset":1201050,"length":205,"previous":"M21-GAP-03436","next":"M21-GAP-03438"},"M21-GAP-03438":{"line":6693,"offset":1201255,"length":215,"previous":"M21-GAP-03437","next":"M21-GAP-03439"},"M21-GAP-03439":{"line":6694,"offset":1201470,"length":204,"previous":"M21-GAP-03438","next":"M21-GAP-03440"},"M21-GAP-03440":{"line":6695,"offset":1201674,"length":201,"previous":"M21-GAP-03439","next":"M21-GAP-03441"},"M21-GAP-03441":{"line":6696,"offset":1201875,"length":208,"previous":"M21-GAP-03440","next":"M21-GAP-03442"},"M21-GAP-03442":{"line":6697,"offset":1202083,"length":197,"previous":"M21-GAP-03441","next":"M21-GAP-03443"},"M21-GAP-03443":{"line":6698,"offset":1202280,"length":192,"previous":"M21-GAP-03442","next":"M21-GAP-03444"},"M21-GAP-03444":{"line":6699,"offset":1202472,"length":196,"previous":"M21-GAP-03443","next":"M21-GAP-03445"},"M21-GAP-03445":{"line":6700,"offset":1202668,"length":194,"previous":"M21-GAP-03444","next":"M21-GAP-03446"},"M21-GAP-03446":{"line":6701,"offset":1202862,"length":194,"previous":"M21-GAP-03445","next":"M21-GAP-03447"},"M21-GAP-03447":{"line":6702,"offset":1203056,"length":195,"previous":"M21-GAP-03446","next":"M21-GAP-03448"},"M21-GAP-03448":{"line":6703,"offset":1203251,"length":195,"previous":"M21-GAP-03447","next":"M21-GAP-03449"},"M21-GAP-03449":{"line":6704,"offset":1203446,"length":200,"previous":"M21-GAP-03448","next":"M21-GAP-03450"},"M21-GAP-03450":{"line":6705,"offset":1203646,"length":196,"previous":"M21-GAP-03449","next":"M21-GAP-03451"},"M21-GAP-03451":{"line":6706,"offset":1203842,"length":195,"previous":"M21-GAP-03450","next":"M21-GAP-03452"},"M21-GAP-03452":{"line":6707,"offset":1204037,"length":211,"previous":"M21-GAP-03451","next":"M21-GAP-03453"},"M21-GAP-03453":{"line":6708,"offset":1204248,"length":200,"previous":"M21-GAP-03452","next":"M21-GAP-03454"},"M21-GAP-03454":{"line":6709,"offset":1204448,"length":214,"previous":"M21-GAP-03453","next":"M21-GAP-03455"},"M21-GAP-03455":{"line":6710,"offset":1204662,"length":203,"previous":"M21-GAP-03454","next":"M21-GAP-03456"},"M21-GAP-03456":{"line":6711,"offset":1204865,"length":213,"previous":"M21-GAP-03455","next":"M21-GAP-03457"},"M21-GAP-03457":{"line":6712,"offset":1205078,"length":202,"previous":"M21-GAP-03456","next":"M21-GAP-03458"},"M21-GAP-03458":{"line":6713,"offset":1205280,"length":206,"previous":"M21-GAP-03457","next":"M21-GAP-03459"},"M21-GAP-03459":{"line":6714,"offset":1205486,"length":195,"previous":"M21-GAP-03458","next":"M21-GAP-03460"},"M21-GAP-03460":{"line":6715,"offset":1205681,"length":180,"previous":"M21-GAP-03459","next":"M21-GAP-03461"},"M21-GAP-03461":{"line":6716,"offset":1205861,"length":171,"previous":"M21-GAP-03460","next":"M21-GAP-03462"},"M21-GAP-03462":{"line":6717,"offset":1206032,"length":172,"previous":"M21-GAP-03461","next":"M21-GAP-03463"},"M21-GAP-03463":{"line":6718,"offset":1206204,"length":163,"previous":"M21-GAP-03462","next":"M21-GAP-03464"},"M21-GAP-03464":{"line":6719,"offset":1206367,"length":186,"previous":"M21-GAP-03463","next":"M21-GAP-03465"},"M21-GAP-03465":{"line":6720,"offset":1206553,"length":180,"previous":"M21-GAP-03464","next":"M21-GAP-03466"},"M21-GAP-03466":{"line":6721,"offset":1206733,"length":167,"previous":"M21-GAP-03465","next":"M21-GAP-03467"},"M21-GAP-03467":{"line":6722,"offset":1206900,"length":167,"previous":"M21-GAP-03466","next":"M21-GAP-03468"},"M21-GAP-03468":{"line":6723,"offset":1207067,"length":172,"previous":"M21-GAP-03467","next":"M21-GAP-03469"},"M21-GAP-03469":{"line":6724,"offset":1207239,"length":181,"previous":"M21-GAP-03468","next":"M21-GAP-03470"},"M21-GAP-03470":{"line":6725,"offset":1207420,"length":164,"previous":"M21-GAP-03469","next":"M21-GAP-03471"},"M21-GAP-03471":{"line":6726,"offset":1207584,"length":168,"previous":"M21-GAP-03470","next":"M21-GAP-03472"},"M21-GAP-03472":{"line":6727,"offset":1207752,"length":175,"previous":"M21-GAP-03471","next":"M21-GAP-03473"},"M21-GAP-03473":{"line":6728,"offset":1207927,"length":176,"previous":"M21-GAP-03472","next":"M21-GAP-03474"},"M21-GAP-03474":{"line":6729,"offset":1208103,"length":175,"previous":"M21-GAP-03473","next":"M21-GAP-03475"},"M21-GAP-03475":{"line":6730,"offset":1208278,"length":177,"previous":"M21-GAP-03474","next":"M21-GAP-03476"},"M21-GAP-03476":{"line":6731,"offset":1208455,"length":178,"previous":"M21-GAP-03475","next":"M21-GAP-03477"},"M21-GAP-03477":{"line":6732,"offset":1208633,"length":179,"previous":"M21-GAP-03476","next":"M21-GAP-03478"},"M21-GAP-03478":{"line":6733,"offset":1208812,"length":181,"previous":"M21-GAP-03477","next":"M21-GAP-03479"},"M21-GAP-03479":{"line":6734,"offset":1208993,"length":188,"previous":"M21-GAP-03478","next":"M21-GAP-03480"},"M21-GAP-03480":{"line":6735,"offset":1209181,"length":186,"previous":"M21-GAP-03479","next":"M21-GAP-03481"},"M21-GAP-03481":{"line":6736,"offset":1209367,"length":187,"previous":"M21-GAP-03480","next":"M21-GAP-03482"},"M21-GAP-03482":{"line":6737,"offset":1209554,"length":198,"previous":"M21-GAP-03481","next":"M21-GAP-03483"},"M21-GAP-03483":{"line":6738,"offset":1209752,"length":187,"previous":"M21-GAP-03482","next":"M21-GAP-03484"},"M21-GAP-03484":{"line":6739,"offset":1209939,"length":201,"previous":"M21-GAP-03483","next":"M21-GAP-03485"},"M21-GAP-03485":{"line":6740,"offset":1210140,"length":190,"previous":"M21-GAP-03484","next":"M21-GAP-03486"},"M21-GAP-03486":{"line":6741,"offset":1210330,"length":200,"previous":"M21-GAP-03485","next":"M21-GAP-03487"},"M21-GAP-03487":{"line":6742,"offset":1210530,"length":189,"previous":"M21-GAP-03486","next":"M21-GAP-03488"},"M21-GAP-03488":{"line":6743,"offset":1210719,"length":193,"previous":"M21-GAP-03487","next":"M21-GAP-03489"},"M21-GAP-03489":{"line":6744,"offset":1210912,"length":182,"previous":"M21-GAP-03488","next":"M21-GAP-03490"},"M21-GAP-03490":{"line":6745,"offset":1211094,"length":171,"previous":"M21-GAP-03489","next":"M21-GAP-03491"},"M21-GAP-03491":{"line":6746,"offset":1211265,"length":176,"previous":"M21-GAP-03490","next":"M21-GAP-03492"},"M21-GAP-03492":{"line":6747,"offset":1211441,"length":171,"previous":"M21-GAP-03491","next":"M21-GAP-03493"},"M21-GAP-03493":{"line":6748,"offset":1211612,"length":171,"previous":"M21-GAP-03492","next":"M21-GAP-03494"},"M21-GAP-03494":{"line":6749,"offset":1211783,"length":201,"previous":"M21-GAP-03493","next":"M21-GAP-03495"},"M21-GAP-03495":{"line":6750,"offset":1211984,"length":178,"previous":"M21-GAP-03494","next":"M21-GAP-03496"},"M21-GAP-03496":{"line":6751,"offset":1212162,"length":199,"previous":"M21-GAP-03495","next":"M21-GAP-03497"},"M21-GAP-03497":{"line":6752,"offset":1212361,"length":168,"previous":"M21-GAP-03496","next":"M21-GAP-03498"},"M21-GAP-03498":{"line":6753,"offset":1212529,"length":178,"previous":"M21-GAP-03497","next":"M21-GAP-03499"},"M21-GAP-03499":{"line":6754,"offset":1212707,"length":171,"previous":"M21-GAP-03498","next":"M21-GAP-03500"},"M21-GAP-03500":{"line":6755,"offset":1212878,"length":164,"previous":"M21-GAP-03499","next":"M21-GAP-03501"},"M21-GAP-03501":{"line":6756,"offset":1213042,"length":177,"previous":"M21-GAP-03500","next":"M21-GAP-03502"},"M21-GAP-03502":{"line":6757,"offset":1213219,"length":177,"previous":"M21-GAP-03501","next":"M21-GAP-03503"},"M21-GAP-03503":{"line":6758,"offset":1213396,"length":190,"previous":"M21-GAP-03502","next":"M21-GAP-03504"},"M21-GAP-03504":{"line":6759,"offset":1213586,"length":188,"previous":"M21-GAP-03503","next":"M21-GAP-03505"},"M21-GAP-03505":{"line":6760,"offset":1213774,"length":190,"previous":"M21-GAP-03504","next":"M21-GAP-03506"},"M21-GAP-03506":{"line":6761,"offset":1213964,"length":190,"previous":"M21-GAP-03505","next":"M21-GAP-03507"},"M21-GAP-03507":{"line":6762,"offset":1214154,"length":189,"previous":"M21-GAP-03506","next":"M21-GAP-03508"},"M21-GAP-03508":{"line":6763,"offset":1214343,"length":205,"previous":"M21-GAP-03507","next":"M21-GAP-03509"},"M21-GAP-03509":{"line":6764,"offset":1214548,"length":194,"previous":"M21-GAP-03508","next":"M21-GAP-03510"},"M21-GAP-03510":{"line":6765,"offset":1214742,"length":208,"previous":"M21-GAP-03509","next":"M21-GAP-03511"},"M21-GAP-03511":{"line":6766,"offset":1214950,"length":197,"previous":"M21-GAP-03510","next":"M21-GAP-03512"},"M21-GAP-03512":{"line":6767,"offset":1215147,"length":207,"previous":"M21-GAP-03511","next":"M21-GAP-03513"},"M21-GAP-03513":{"line":6768,"offset":1215354,"length":196,"previous":"M21-GAP-03512","next":"M21-GAP-03514"},"M21-GAP-03514":{"line":6769,"offset":1215550,"length":200,"previous":"M21-GAP-03513","next":"M21-GAP-03515"},"M21-GAP-03515":{"line":6770,"offset":1215750,"length":189,"previous":"M21-GAP-03514","next":"M21-GAP-03516"},"M21-GAP-03516":{"line":6771,"offset":1215939,"length":177,"previous":"M21-GAP-03515","next":"M21-GAP-03517"},"M21-GAP-03517":{"line":6772,"offset":1216116,"length":184,"previous":"M21-GAP-03516","next":"M21-GAP-03518"},"M21-GAP-03518":{"line":6773,"offset":1216300,"length":180,"previous":"M21-GAP-03517","next":"M21-GAP-03519"},"M21-GAP-03519":{"line":6774,"offset":1216480,"length":179,"previous":"M21-GAP-03518","next":"M21-GAP-03520"},"M21-GAP-03520":{"line":6775,"offset":1216659,"length":174,"previous":"M21-GAP-03519","next":"M21-GAP-03521"},"M21-GAP-03521":{"line":6776,"offset":1216833,"length":166,"previous":"M21-GAP-03520","next":"M21-GAP-03522"},"M21-GAP-03522":{"line":6777,"offset":1216999,"length":173,"previous":"M21-GAP-03521","next":"M21-GAP-03523"},"M21-GAP-03523":{"line":6778,"offset":1217172,"length":179,"previous":"M21-GAP-03522","next":"M21-GAP-03524"},"M21-GAP-03524":{"line":6779,"offset":1217351,"length":166,"previous":"M21-GAP-03523","next":"M21-GAP-03525"},"M21-GAP-03525":{"line":6780,"offset":1217517,"length":188,"previous":"M21-GAP-03524","next":"M21-GAP-03526"},"M21-GAP-03526":{"line":6781,"offset":1217705,"length":191,"previous":"M21-GAP-03525","next":"M21-GAP-03527"},"M21-GAP-03527":{"line":6782,"offset":1217896,"length":207,"previous":"M21-GAP-03526","next":"M21-GAP-03528"},"M21-GAP-03528":{"line":6783,"offset":1218103,"length":196,"previous":"M21-GAP-03527","next":"M21-GAP-03529"},"M21-GAP-03529":{"line":6784,"offset":1218299,"length":210,"previous":"M21-GAP-03528","next":"M21-GAP-03530"},"M21-GAP-03530":{"line":6785,"offset":1218509,"length":199,"previous":"M21-GAP-03529","next":"M21-GAP-03531"},"M21-GAP-03531":{"line":6786,"offset":1218708,"length":209,"previous":"M21-GAP-03530","next":"M21-GAP-03532"},"M21-GAP-03532":{"line":6787,"offset":1218917,"length":198,"previous":"M21-GAP-03531","next":"M21-GAP-03533"},"M21-GAP-03533":{"line":6788,"offset":1219115,"length":190,"previous":"M21-GAP-03532","next":"M21-GAP-03534"},"M21-GAP-03534":{"line":6789,"offset":1219305,"length":179,"previous":"M21-GAP-03533","next":"M21-GAP-03535"},"M21-GAP-03535":{"line":6790,"offset":1219484,"length":170,"previous":"M21-GAP-03534","next":"M21-GAP-03536"},"M21-GAP-03536":{"line":6791,"offset":1219654,"length":185,"previous":"M21-GAP-03535","next":"M21-GAP-03537"},"M21-GAP-03537":{"line":6792,"offset":1219839,"length":178,"previous":"M21-GAP-03536","next":"M21-GAP-03538"},"M21-GAP-03538":{"line":6793,"offset":1220017,"length":178,"previous":"M21-GAP-03537","next":"M21-GAP-03539"},"M21-GAP-03539":{"line":6794,"offset":1220195,"length":170,"previous":"M21-GAP-03538","next":"M21-GAP-03540"},"M21-GAP-03540":{"line":6795,"offset":1220365,"length":170,"previous":"M21-GAP-03539","next":"M21-GAP-03541"},"M21-GAP-03541":{"line":6796,"offset":1220535,"length":176,"previous":"M21-GAP-03540","next":"M21-GAP-03542"},"M21-GAP-03542":{"line":6797,"offset":1220711,"length":191,"previous":"M21-GAP-03541","next":"M21-GAP-03543"},"M21-GAP-03543":{"line":6798,"offset":1220902,"length":179,"previous":"M21-GAP-03542","next":"M21-GAP-03544"},"M21-GAP-03544":{"line":6799,"offset":1221081,"length":169,"previous":"M21-GAP-03543","next":"M21-GAP-03545"},"M21-GAP-03545":{"line":6800,"offset":1221250,"length":174,"previous":"M21-GAP-03544","next":"M21-GAP-03546"},"M21-GAP-03546":{"line":6801,"offset":1221424,"length":172,"previous":"M21-GAP-03545","next":"M21-GAP-03547"},"M21-GAP-03547":{"line":6802,"offset":1221596,"length":191,"previous":"M21-GAP-03546","next":"M21-GAP-03548"},"M21-GAP-03548":{"line":6803,"offset":1221787,"length":179,"previous":"M21-GAP-03547","next":"M21-GAP-03549"},"M21-GAP-03549":{"line":6804,"offset":1221966,"length":166,"previous":"M21-GAP-03548","next":"M21-GAP-03550"},"M21-GAP-03550":{"line":6805,"offset":1222132,"length":178,"previous":"M21-GAP-03549","next":"M21-GAP-03551"},"M21-GAP-03551":{"line":6806,"offset":1222310,"length":176,"previous":"M21-GAP-03550","next":"M21-GAP-03552"},"M21-GAP-03552":{"line":6807,"offset":1222486,"length":181,"previous":"M21-GAP-03551","next":"M21-GAP-03553"},"M21-GAP-03553":{"line":6808,"offset":1222667,"length":177,"previous":"M21-GAP-03552","next":"M21-GAP-03554"},"M21-GAP-03554":{"line":6809,"offset":1222844,"length":182,"previous":"M21-GAP-03553","next":"M21-GAP-03555"},"M21-GAP-03555":{"line":6810,"offset":1223026,"length":179,"previous":"M21-GAP-03554","next":"M21-GAP-03556"},"M21-GAP-03556":{"line":6811,"offset":1223205,"length":208,"previous":"M21-GAP-03555","next":"M21-GAP-03557"},"M21-GAP-03557":{"line":6812,"offset":1223413,"length":177,"previous":"M21-GAP-03556","next":"M21-GAP-03558"},"M21-GAP-03558":{"line":6813,"offset":1223590,"length":177,"previous":"M21-GAP-03557","next":"M21-GAP-03559"},"M21-GAP-03559":{"line":6814,"offset":1223767,"length":172,"previous":"M21-GAP-03558","next":"M21-GAP-03560"},"M21-GAP-03560":{"line":6815,"offset":1223939,"length":166,"previous":"M21-GAP-03559","next":"M21-GAP-03561"},"M21-GAP-03561":{"line":6816,"offset":1224105,"length":158,"previous":"M21-GAP-03560","next":"M21-GAP-03562"},"M21-GAP-03562":{"line":6817,"offset":1224263,"length":165,"previous":"M21-GAP-03561","next":"M21-GAP-03563"},"M21-GAP-03563":{"line":6818,"offset":1224428,"length":155,"previous":"M21-GAP-03562","next":"M21-GAP-03564"},"M21-GAP-03564":{"line":6819,"offset":1224583,"length":154,"previous":"M21-GAP-03563","next":"M21-GAP-03565"},"M21-GAP-03565":{"line":6820,"offset":1224737,"length":153,"previous":"M21-GAP-03564","next":"M21-GAP-03566"},"M21-GAP-03566":{"line":6821,"offset":1224890,"length":153,"previous":"M21-GAP-03565","next":"M21-GAP-03567"},"M21-GAP-03567":{"line":6822,"offset":1225043,"length":150,"previous":"M21-GAP-03566","next":"M21-GAP-03568"},"M21-GAP-03568":{"line":6823,"offset":1225193,"length":161,"previous":"M21-GAP-03567","next":"M21-GAP-03569"},"M21-GAP-03569":{"line":6824,"offset":1225354,"length":154,"previous":"M21-GAP-03568","next":"M21-GAP-03570"},"M21-GAP-03570":{"line":6825,"offset":1225508,"length":156,"previous":"M21-GAP-03569","next":"M21-GAP-03571"},"M21-GAP-03571":{"line":6826,"offset":1225664,"length":156,"previous":"M21-GAP-03570","next":"M21-GAP-03572"},"M21-GAP-03572":{"line":6827,"offset":1225820,"length":152,"previous":"M21-GAP-03571","next":"M21-GAP-03573"},"M21-GAP-03573":{"line":6828,"offset":1225972,"length":158,"previous":"M21-GAP-03572","next":"M21-GAP-03574"},"M21-GAP-03574":{"line":6829,"offset":1226130,"length":157,"previous":"M21-GAP-03573","next":"M21-GAP-03575"},"M21-GAP-03575":{"line":6830,"offset":1226287,"length":149,"previous":"M21-GAP-03574","next":"M21-GAP-03576"},"M21-GAP-03576":{"line":6831,"offset":1226436,"length":153,"previous":"M21-GAP-03575","next":"M21-GAP-03577"},"M21-GAP-03577":{"line":6832,"offset":1226589,"length":149,"previous":"M21-GAP-03576","next":"M21-GAP-03578"},"M21-GAP-03578":{"line":6833,"offset":1226738,"length":166,"previous":"M21-GAP-03577","next":"M21-GAP-03579"},"M21-GAP-03579":{"line":6834,"offset":1226904,"length":163,"previous":"M21-GAP-03578","next":"M21-GAP-03580"},"M21-GAP-03580":{"line":6835,"offset":1227067,"length":171,"previous":"M21-GAP-03579","next":"M21-GAP-03581"},"M21-GAP-03581":{"line":6836,"offset":1227238,"length":167,"previous":"M21-GAP-03580","next":"M21-GAP-03582"},"M21-GAP-03582":{"line":6837,"offset":1227405,"length":167,"previous":"M21-GAP-03581","next":"M21-GAP-03583"},"M21-GAP-03583":{"line":6838,"offset":1227572,"length":167,"previous":"M21-GAP-03582","next":"M21-GAP-03584"},"M21-GAP-03584":{"line":6839,"offset":1227739,"length":160,"previous":"M21-GAP-03583","next":"M21-GAP-03585"},"M21-GAP-03585":{"line":6840,"offset":1227899,"length":159,"previous":"M21-GAP-03584","next":"M21-GAP-03586"},"M21-GAP-03586":{"line":6841,"offset":1228058,"length":166,"previous":"M21-GAP-03585","next":"M21-GAP-03587"},"M21-GAP-03587":{"line":6842,"offset":1228224,"length":164,"previous":"M21-GAP-03586","next":"M21-GAP-03588"},"M21-GAP-03588":{"line":6843,"offset":1228388,"length":167,"previous":"M21-GAP-03587","next":"M21-GAP-03589"},"M21-GAP-03589":{"line":6844,"offset":1228555,"length":166,"previous":"M21-GAP-03588","next":"M21-GAP-03590"},"M21-GAP-03590":{"line":6845,"offset":1228721,"length":170,"previous":"M21-GAP-03589","next":"M21-GAP-03591"},"M21-GAP-03591":{"line":6846,"offset":1228891,"length":167,"previous":"M21-GAP-03590","next":"M21-GAP-03592"},"M21-GAP-03592":{"line":6847,"offset":1229058,"length":166,"previous":"M21-GAP-03591","next":"M21-GAP-03593"},"M21-GAP-03593":{"line":6848,"offset":1229224,"length":162,"previous":"M21-GAP-03592","next":"M21-GAP-03594"},"M21-GAP-03594":{"line":6849,"offset":1229386,"length":156,"previous":"M21-GAP-03593","next":"M21-GAP-03595"},"M21-GAP-03595":{"line":6850,"offset":1229542,"length":152,"previous":"M21-GAP-03594","next":"M21-GAP-03596"},"M21-GAP-03596":{"line":6851,"offset":1229694,"length":161,"previous":"M21-GAP-03595","next":"M21-GAP-03597"},"M21-GAP-03597":{"line":6852,"offset":1229855,"length":150,"previous":"M21-GAP-03596","next":"M21-GAP-03598"},"M21-GAP-03598":{"line":6853,"offset":1230005,"length":157,"previous":"M21-GAP-03597","next":"M21-GAP-03599"},"M21-GAP-03599":{"line":6854,"offset":1230162,"length":157,"previous":"M21-GAP-03598","next":"M21-GAP-03600"},"M21-GAP-03600":{"line":6855,"offset":1230319,"length":157,"previous":"M21-GAP-03599","next":"M21-GAP-03601"},"M21-GAP-03601":{"line":6856,"offset":1230476,"length":149,"previous":"M21-GAP-03600","next":"M21-GAP-03602"},"M21-GAP-03602":{"line":6857,"offset":1230625,"length":155,"previous":"M21-GAP-03601","next":"M21-GAP-03603"},"M21-GAP-03603":{"line":6858,"offset":1230780,"length":156,"previous":"M21-GAP-03602","next":"M21-GAP-03604"},"M21-GAP-03604":{"line":6859,"offset":1230936,"length":153,"previous":"M21-GAP-03603","next":"M21-GAP-03605"},"M21-GAP-03605":{"line":6860,"offset":1231089,"length":156,"previous":"M21-GAP-03604","next":"M21-GAP-03606"},"M21-GAP-03606":{"line":6861,"offset":1231245,"length":155,"previous":"M21-GAP-03605","next":"M21-GAP-03607"},"M21-GAP-03607":{"line":6862,"offset":1231400,"length":160,"previous":"M21-GAP-03606","next":"M21-GAP-03608"},"M21-GAP-03608":{"line":6863,"offset":1231560,"length":156,"previous":"M21-GAP-03607","next":"M21-GAP-03609"},"M21-GAP-03609":{"line":6864,"offset":1231716,"length":154,"previous":"M21-GAP-03608","next":"M21-GAP-03610"},"M21-GAP-03610":{"line":6865,"offset":1231870,"length":156,"previous":"M21-GAP-03609","next":"M21-GAP-03611"},"M21-GAP-03611":{"line":6866,"offset":1232026,"length":151,"previous":"M21-GAP-03610","next":"M21-GAP-03612"},"M21-GAP-03612":{"line":6867,"offset":1232177,"length":152,"previous":"M21-GAP-03611","next":"M21-GAP-03613"},"M21-GAP-03613":{"line":6868,"offset":1232329,"length":157,"previous":"M21-GAP-03612","next":"M21-GAP-03614"},"M21-GAP-03614":{"line":6869,"offset":1232486,"length":165,"previous":"M21-GAP-03613","next":"M21-GAP-03615"},"M21-GAP-03615":{"line":6870,"offset":1232651,"length":159,"previous":"M21-GAP-03614","next":"M21-GAP-03616"},"M21-GAP-03616":{"line":6871,"offset":1232810,"length":172,"previous":"M21-GAP-03615","next":"M21-GAP-03617"},"M21-GAP-03617":{"line":6872,"offset":1232982,"length":166,"previous":"M21-GAP-03616","next":"M21-GAP-03618"},"M21-GAP-03618":{"line":6873,"offset":1233148,"length":157,"previous":"M21-GAP-03617","next":"M21-GAP-03619"},"M21-GAP-03619":{"line":6874,"offset":1233305,"length":159,"previous":"M21-GAP-03618","next":"M21-GAP-03620"},"M21-GAP-03620":{"line":6875,"offset":1233464,"length":173,"previous":"M21-GAP-03619","next":"M21-GAP-03621"},"M21-GAP-03621":{"line":6876,"offset":1233637,"length":166,"previous":"M21-GAP-03620","next":"M21-GAP-03622"},"M21-GAP-03622":{"line":6877,"offset":1233803,"length":173,"previous":"M21-GAP-03621","next":"M21-GAP-03623"},"M21-GAP-03623":{"line":6878,"offset":1233976,"length":165,"previous":"M21-GAP-03622","next":"M21-GAP-03624"},"M21-GAP-03624":{"line":6879,"offset":1234141,"length":173,"previous":"M21-GAP-03623","next":"M21-GAP-03625"},"M21-GAP-03625":{"line":6880,"offset":1234314,"length":165,"previous":"M21-GAP-03624","next":"M22-GAP-00001"},"M22-GAP-00001":{"line":6881,"offset":1234479,"length":166,"previous":"M21-GAP-03625","next":"M22-GAP-00002"},"M22-GAP-00002":{"line":6882,"offset":1234645,"length":180,"previous":"M22-GAP-00001","next":"M22-GAP-00003"},"M22-GAP-00003":{"line":6883,"offset":1234825,"length":172,"previous":"M22-GAP-00002","next":"M22-GAP-00004"},"M22-GAP-00004":{"line":6884,"offset":1234997,"length":155,"previous":"M22-GAP-00003","next":"M22-GAP-00005"},"M22-GAP-00005":{"line":6885,"offset":1235152,"length":159,"previous":"M22-GAP-00004","next":"M22-GAP-00006"},"M22-GAP-00006":{"line":6886,"offset":1235311,"length":159,"previous":"M22-GAP-00005","next":"M22-GAP-00007"},"M22-GAP-00007":{"line":6887,"offset":1235470,"length":164,"previous":"M22-GAP-00006","next":"M22-GAP-00008"},"M22-GAP-00008":{"line":6888,"offset":1235634,"length":154,"previous":"M22-GAP-00007","next":"M22-GAP-00009"},"M22-GAP-00009":{"line":6889,"offset":1235788,"length":157,"previous":"M22-GAP-00008","next":"M22-GAP-00010"},"M22-GAP-00010":{"line":6890,"offset":1235945,"length":157,"previous":"M22-GAP-00009","next":"M22-GAP-00011"},"M22-GAP-00011":{"line":6891,"offset":1236102,"length":157,"previous":"M22-GAP-00010","next":"M22-GAP-00012"},"M22-GAP-00012":{"line":6892,"offset":1236259,"length":155,"previous":"M22-GAP-00011","next":"M22-GAP-00013"},"M22-GAP-00013":{"line":6893,"offset":1236414,"length":163,"previous":"M22-GAP-00012","next":"M22-GAP-00014"},"M22-GAP-00014":{"line":6894,"offset":1236577,"length":154,"previous":"M22-GAP-00013","next":"M22-GAP-00015"},"M22-GAP-00015":{"line":6895,"offset":1236731,"length":155,"previous":"M22-GAP-00014","next":"M22-GAP-00016"},"M22-GAP-00016":{"line":6896,"offset":1236886,"length":158,"previous":"M22-GAP-00015","next":"M22-GAP-00017"},"M22-GAP-00017":{"line":6897,"offset":1237044,"length":155,"previous":"M22-GAP-00016","next":"M22-GAP-00018"},"M22-GAP-00018":{"line":6898,"offset":1237199,"length":162,"previous":"M22-GAP-00017","next":"M22-GAP-00019"},"M22-GAP-00019":{"line":6899,"offset":1237361,"length":154,"previous":"M22-GAP-00018","next":null}}} diff --git a/tests/golden/M15-03B/manifest.json b/tests/golden/M15-03B/manifest.json new file mode 100644 index 00000000..9a9ed675 --- /dev/null +++ b/tests/golden/M15-03B/manifest.json @@ -0,0 +1,35 @@ +{ + "schemaVersion": 1, + "task": "M15-03B", + "parentTask": "M15-03A", + "enablingTask": false, + "parityStateChange": false, + "operation": "BLENDER_NEXT_TASK_SPEC_CHECK", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-03A/manifest.json", + "sha256": "ff4289e5df910b688e2e30f41e3697c79e6abd3b6a41f2fa06cda4b8dc8aa12c" + }, + "generator": { + "path": "tools/web/generate-blender-next-task-plan.mjs", + "sha256": "b944d9e0ee37497d397fac6bede348702768ec2fa84ff2246ef39cc58d4242c0" + }, + "checker": { + "path": "tools/web/check-blender-next-task-spec.mjs", + "sha256": "389634653fb03ddfdd8d2b140f65af5f2317d5b818873da623dc156302dd9787" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "report": { + "path": "tests/golden/M15-03B/next-task-spec-check-report.json", + "sha256": "20ce475cb146edc422020f16593f95c222fd1956080c224614f0e1f749b6ccc1" + }, + "package": { + "path": "web/package.json", + "sha256": "540fcf5a711fe65654f5f9dcfccf4dfb4549dcdbef498a4eb37946cc24a76912" + } + }, + "nextTask": "M15-03C" +} diff --git a/tests/golden/M15-03B/next-task-spec-check-report.json b/tests/golden/M15-03B/next-task-spec-check-report.json new file mode 100644 index 00000000..9e0b25e5 --- /dev/null +++ b/tests/golden/M15-03B/next-task-spec-check-report.json @@ -0,0 +1,23 @@ +{ + "schemaVersion": 1, + "task": "M15-03B", + "operation": "BLENDER_NEXT_TASK_SPEC_CHECK", + "source": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "summary": { + "tasks": 6900, + "completeSpecs": 6900, + "missingFields": 0, + "malformed": 0 + }, + "requiredFields": [ + "fixture", + "desktopCommand", + "webCommand", + "comparator", + "exitCriteria" + ], + "nextTask": "M15-03C" +} diff --git a/tests/golden/M15-03C/manifest.json b/tests/golden/M15-03C/manifest.json new file mode 100644 index 00000000..bf08654f --- /dev/null +++ b/tests/golden/M15-03C/manifest.json @@ -0,0 +1,31 @@ +{ + "schemaVersion": 1, + "task": "M15-03C", + "parentTask": "M15-03B", + "enablingTask": false, + "parityStateChange": false, + "operation": "BLENDER_TASK_GRAPH_CHECK", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-03B/manifest.json", + "sha256": "d0130d393233f2fd6573d80522385a3c39a701db9d6fd12cabdb841b81f9419a" + }, + "checker": { + "path": "tools/web/check-blender-task-graph.mjs", + "sha256": "318bf3575decb41d0fd5a17fceffc7ed72c3224d79bf4a7e6368d5091b34d78d" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "report": { + "path": "tests/golden/M15-03C/task-graph-check-report.json", + "sha256": "dc6d2e5476a93e2e5cda9bd939f424558a7899871a87a8a3db84e7aeecb473cd" + }, + "package": { + "path": "web/package.json", + "sha256": "540fcf5a711fe65654f5f9dcfccf4dfb4549dcdbef498a4eb37946cc24a76912" + } + }, + "nextTask": "M15-03D" +} diff --git a/tests/golden/M15-03C/task-graph-check-report.json b/tests/golden/M15-03C/task-graph-check-report.json new file mode 100644 index 00000000..f591dbb1 --- /dev/null +++ b/tests/golden/M15-03C/task-graph-check-report.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "task": "M15-03C", + "operation": "BLENDER_TASK_GRAPH_CHECK", + "source": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "summary": { + "nodes": 6900, + "active": 1, + "missingDependencies": 0, + "cycles": 0 + }, + "activeTask": "M16-GAP-00018", + "nextTask": "M15-03D" +} diff --git a/tests/golden/M15-03D/manifest.json b/tests/golden/M15-03D/manifest.json new file mode 100644 index 00000000..05e3985d --- /dev/null +++ b/tests/golden/M15-03D/manifest.json @@ -0,0 +1,35 @@ +{ + "schemaVersion": 1, + "task": "M15-03D", + "parentTask": "M15-03C", + "enablingTask": false, + "parityStateChange": false, + "operation": "BLENDER_TASK_STATS_CHECK", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-03C/manifest.json", + "sha256": "f90f91350792a4c74f41f1457cb911d581d9f385aa800d31268750c3266fe6cd" + }, + "checker": { + "path": "tools/web/check-blender-task-stats.mjs", + "sha256": "e7e08f1bc7a245e2cba4cc8542420336346e329b7178133555e448633e5bf3e7" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "gapAudit": { + "path": "tests/golden/M15-02B/blender-gap-audit.json", + "sha256": "e976ff40d2f3491a5a57ffcdd0d0c0f0586e57d06984e4a4aa05ba1b36800faa" + }, + "report": { + "path": "tests/golden/M15-03D/task-stats-check-report.json", + "sha256": "00757ebe8e7cf6555f8d8722ca42e68d94ac2ff3eeb583e02a5b6693774bd0c9" + }, + "package": { + "path": "web/package.json", + "sha256": "540fcf5a711fe65654f5f9dcfccf4dfb4549dcdbef498a4eb37946cc24a76912" + } + }, + "nextTask": "M15-03E" +} diff --git a/tests/golden/M15-03D/task-stats-check-report.json b/tests/golden/M15-03D/task-stats-check-report.json new file mode 100644 index 00000000..19d10fcd --- /dev/null +++ b/tests/golden/M15-03D/task-stats-check-report.json @@ -0,0 +1,22 @@ +{ + "schemaVersion": 1, + "task": "M15-03D", + "operation": "BLENDER_TASK_STATS_CHECK", + "sources": { + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "gaps": { + "path": "tests/golden/M15-02B/blender-gap-audit.json", + "sha256": "e976ff40d2f3491a5a57ffcdd0d0c0f0586e57d06984e4a4aa05ba1b36800faa" + } + }, + "statistics": { + "inventoried": 6900, + "completed": 17, + "blocked": 0, + "uninventoried": 0 + }, + "nextTask": "M15-03E" +} diff --git a/tests/golden/M15-03E/manifest.json b/tests/golden/M15-03E/manifest.json new file mode 100644 index 00000000..30bd50cf --- /dev/null +++ b/tests/golden/M15-03E/manifest.json @@ -0,0 +1,32 @@ +{ + "schemaVersion": 1, + "task": "M15-03E", + "parentTask": "M15-03D", + "status": "BLOCKED", + "enablingTask": false, + "parityStateChange": false, + "operation": "BLENDER_ZERO_GAP_GATE", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-03D/manifest.json", + "sha256": "2838a248140ebc944ee85190de5b2ae73bdc28e8d0be5972fb04e5cf2bf345c3" + }, + "checker": { + "path": "tools/web/check-blender-zero-gap-gate.mjs", + "sha256": "169c37861ee4422fd2eacf4886a99e71d5ed4e5220132866dccaf961b4a6ac2b" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "report": { + "path": "tests/golden/M15-03E/zero-gap-gate-report.json", + "sha256": "41a5611e2719ed377db55bdfe6623c2a73dc91560e0f38266164d10645b57a69" + }, + "package": { + "path": "web/package.json", + "sha256": "540fcf5a711fe65654f5f9dcfccf4dfb4549dcdbef498a4eb37946cc24a76912" + } + }, + "nextTask": "M16-GAP-00018" +} diff --git a/tests/golden/M15-03E/zero-gap-gate-report.json b/tests/golden/M15-03E/zero-gap-gate-report.json new file mode 100644 index 00000000..0adbbab8 --- /dev/null +++ b/tests/golden/M15-03E/zero-gap-gate-report.json @@ -0,0 +1,138 @@ +{ + "schemaVersion": 1, + "task": "M15-03E", + "operation": "BLENDER_ZERO_GAP_GATE", + "source": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "a5c46410b419ede40a5adb6a84029e7f303e28e823f33d9d63d5e1815c1b0032" + }, + "status": "BLOCKED", + "summary": { + "ownerFamilies": 20, + "remaining": 6883 + }, + "byFamily": { + "RNA_DATABLOCK": { + "total": 29, + "completed": 17, + "blocked": 0, + "remaining": 12 + }, + "MODIFIER": { + "total": 83, + "completed": 0, + "blocked": 0, + "remaining": 83 + }, + "OPERATOR": { + "total": 2486, + "completed": 0, + "blocked": 0, + "remaining": 2486 + }, + "Main": { + "total": 39, + "completed": 0, + "blocked": 0, + "remaining": 39 + }, + "Mesh": { + "total": 30, + "completed": 0, + "blocked": 0, + "remaining": 30 + }, + "CONSTRAINT": { + "total": 29, + "completed": 0, + "blocked": 0, + "remaining": 29 + }, + "COMPOSITOR_NODE": { + "total": 88, + "completed": 0, + "blocked": 0, + "remaining": 88 + }, + "GEOMETRY_NODE": { + "total": 264, + "completed": 0, + "blocked": 0, + "remaining": 264 + }, + "SHADER_NODE": { + "total": 99, + "completed": 0, + "blocked": 0, + "remaining": 99 + }, + "Core": { + "total": 20, + "completed": 0, + "blocked": 0, + "remaining": 20 + }, + "PHYSICS": { + "total": 65, + "completed": 0, + "blocked": 0, + "remaining": 65 + }, + "SEQUENCER": { + "total": 24, + "completed": 0, + "blocked": 0, + "remaining": 24 + }, + "EDITOR": { + "total": 19, + "completed": 0, + "blocked": 0, + "remaining": 19 + }, + "IMPORT_EXPORT": { + "total": 33, + "completed": 0, + "blocked": 0, + "remaining": 33 + }, + "KEYMAP": { + "total": 3508, + "completed": 0, + "blocked": 0, + "remaining": 3508 + }, + "REGION": { + "total": 17, + "completed": 0, + "blocked": 0, + "remaining": 17 + }, + "SPACE": { + "total": 35, + "completed": 0, + "blocked": 0, + "remaining": 35 + }, + "WORKSPACE": { + "total": 13, + "completed": 0, + "blocked": 0, + "remaining": 13 + }, + "Depsgraph": { + "total": 3, + "completed": 0, + "blocked": 0, + "remaining": 3 + }, + "Scene": { + "total": 16, + "completed": 0, + "blocked": 0, + "remaining": 16 + } + }, + "activeTask": "M16-GAP-00018", + "nextTask": "M16-GAP-00018" +} diff --git a/tests/golden/M16-GAP-00001/action-desktop-report.json b/tests/golden/M16-GAP-00001/action-desktop-report.json new file mode 100644 index 00000000..f48bf829 --- /dev/null +++ b/tests/golden/M16-GAP-00001/action-desktop-report.json @@ -0,0 +1,35 @@ +{ + "actions": [ + { + "channels": [ + [ + "location", + 0, + 2 + ], + [ + "location", + 1, + 2 + ], + [ + "location", + 2, + 2 + ] + ], + "frameRange": [ + 1.0, + 10.0 + ], + "name": "AnimatedObjectAction" + } + ], + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00001-datablock-Action.blend", + "fixtureSha256": "cb921e862eff1dcf68f22d77ef8558679207203ace0b80239a5bc5874ec2a551", + "operation": "ACTION_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00001" +} diff --git a/tests/golden/M16-GAP-00001/action-local-exact-report.json b/tests/golden/M16-GAP-00001/action-local-exact-report.json new file mode 100644 index 00000000..523bcb95 --- /dev/null +++ b/tests/golden/M16-GAP-00001/action-local-exact-report.json @@ -0,0 +1,30 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00001", + "operation": "ACTION_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00001-datablock-Action.blend", + "sha256": "cb921e862eff1dcf68f22d77ef8558679207203ace0b80239a5bc5874ec2a551" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00001/action-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "actionId": "action:AnimatedObjectAction:object:AnimatedObject", + "channelPaths": [ + "location[0]", + "location[1]", + "location[2]" + ], + "keyframesPerChannel": [ + 2, + 2, + 2 + ] + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00002" +} diff --git a/tests/golden/M16-GAP-00001/manifest.json b/tests/golden/M16-GAP-00001/manifest.json new file mode 100644 index 00000000..626e3006 --- /dev/null +++ b/tests/golden/M16-GAP-00001/manifest.json @@ -0,0 +1,45 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00001", + "parentTask": "M15-03E", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "ACTION_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M15-03E/manifest.json", + "sha256": "9e50746ba11f29a3a26c1eb04c25e7153f2edebbf32e092c5bdc89516f274f64" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00001-datablock-Action.blend", + "sha256": "cb921e862eff1dcf68f22d77ef8558679207203ace0b80239a5bc5874ec2a551" + }, + "desktopChecker": { + "path": "tools/web/check-action-desktop.py", + "sha256": "7c32d786a8daedcf5e995d0ff29b6034e7c4f4c25c309ccd0542adecc19319f2" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00001/action-desktop-report.json", + "sha256": "f6bea0003a9e8eb25048797156bc0ab59b6a63d76ce4156283b6d9761dbfb0ee" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00001/action-local-exact-report.json", + "sha256": "eb7a604af8b071c3186a39a30f3a9974a6fed03008751da5319d54d170b841d6" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M16-GAP-00002" +} diff --git a/tests/golden/M16-GAP-00002/armature-desktop-report.json b/tests/golden/M16-GAP-00002/armature-desktop-report.json new file mode 100644 index 00000000..54015803 --- /dev/null +++ b/tests/golden/M16-GAP-00002/armature-desktop-report.json @@ -0,0 +1,42 @@ +{ + "armature": { + "bones": [ + { + "head": [ + 0.0, + 0.0, + -1.0 + ], + "name": "Root", + "parent": null, + "tail": [ + 0.0, + 0.0, + 0.0 + ] + }, + { + "head": [ + 0.0, + 0.0, + 0.0 + ], + "name": "Tip", + "parent": "Root", + "tail": [ + 0.0, + 0.0, + 1.0 + ] + } + ], + "name": "RiggedArmature" + }, + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend", + "fixtureSha256": "b7d1c05b70e97be9a70890d45fea60b143073462d2a4f62eb3cc607bd2d665ca", + "operation": "ARMATURE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00002" +} diff --git a/tests/golden/M16-GAP-00002/armature-local-exact-report.json b/tests/golden/M16-GAP-00002/armature-local-exact-report.json new file mode 100644 index 00000000..6937726a --- /dev/null +++ b/tests/golden/M16-GAP-00002/armature-local-exact-report.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00002", + "operation": "ARMATURE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend", + "sha256": "b7d1c05b70e97be9a70890d45fea60b143073462d2a4f62eb3cc607bd2d665ca" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00002/armature-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "armatureId": "armature:RiggedArmature", + "bones": [ + { + "name": "Root", + "parentId": null + }, + { + "name": "Tip", + "parentId": "bone:armature:RiggedArmature:Root" + } + ] + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00003" +} diff --git a/tests/golden/M16-GAP-00002/manifest.json b/tests/golden/M16-GAP-00002/manifest.json new file mode 100644 index 00000000..add85ff2 --- /dev/null +++ b/tests/golden/M16-GAP-00002/manifest.json @@ -0,0 +1,45 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00002", + "parentTask": "M16-GAP-00001", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "ARMATURE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00001/manifest.json", + "sha256": "ef0a497b61ee95fae55be76ab9dbbc047aeb7619bb161c0711319f4288f5d170" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend", + "sha256": "b7d1c05b70e97be9a70890d45fea60b143073462d2a4f62eb3cc607bd2d665ca" + }, + "desktopChecker": { + "path": "tools/web/check-armature-desktop.py", + "sha256": "5a03e4c6d195219b6fe567973565b0d29f8957716d03c419b04d2003ed67429e" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00002/armature-desktop-report.json", + "sha256": "970538d481dd9b2169c5e39e6901e6eeff0d9b2d26b42491837321841bcb4a5e" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00002/armature-local-exact-report.json", + "sha256": "eeb775648b186a9728851b8cffa0fa9c41701de4a8142e73f6ad98ef050dc877" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M16-GAP-00003" +} diff --git a/tests/golden/M16-GAP-00003/brush-desktop-report.json b/tests/golden/M16-GAP-00003/brush-desktop-report.json new file mode 100644 index 00000000..d7d7d376 --- /dev/null +++ b/tests/golden/M16-GAP-00003/brush-desktop-report.json @@ -0,0 +1,18 @@ +{ + "blenderVersion": "5.2.0 LTS", + "brush": { + "alpha": 0.65, + "hardness": 0.8, + "jitter": 0.2, + "name": "WebGapBrush", + "sculptTool": "DRAW", + "size": 42, + "spacing": 17 + }, + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend", + "fixtureSha256": "f1f6922c4c9c31542a9cefad6932d616ef5dcde0067c0a9668f67902023f4f80", + "operation": "BRUSH_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00003" +} diff --git a/tests/golden/M16-GAP-00003/brush-local-exact-report.json b/tests/golden/M16-GAP-00003/brush-local-exact-report.json new file mode 100644 index 00000000..edb41a04 --- /dev/null +++ b/tests/golden/M16-GAP-00003/brush-local-exact-report.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00003", + "operation": "BRUSH_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend", + "sha256": "f1f6922c4c9c31542a9cefad6932d616ef5dcde0067c0a9668f67902023f4f80" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00003/brush-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "brushId": "brush:WebGapBrush", + "values": { + "size": 42, + "alpha": 0.6499999761581421, + "hardness": 0.800000011920929, + "spacing": 17, + "jitter": 0.20000000298023224, + "sculptTool": 1 + } + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00004" +} diff --git a/tests/golden/M16-GAP-00003/manifest.json b/tests/golden/M16-GAP-00003/manifest.json new file mode 100644 index 00000000..65a30536 --- /dev/null +++ b/tests/golden/M16-GAP-00003/manifest.json @@ -0,0 +1,61 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00003", + "parentTask": "M16-GAP-00002", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "BRUSH_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00002/manifest.json", + "sha256": "b8705243e00f62deb82644976838e197d84e72edb8113439efacfd95d4da4188" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend", + "sha256": "f1f6922c4c9c31542a9cefad6932d616ef5dcde0067c0a9668f67902023f4f80" + }, + "fixtureGenerator": { + "path": "tools/web/generate-brush-fixture.py", + "sha256": "c4fd4a6c28c595b742b1ef083285ac87f9af56b65d75ba03750925079a0aa637" + }, + "desktopChecker": { + "path": "tools/web/check-brush-desktop.py", + "sha256": "515b1eab3b6e2dc0a4e9a65d20764816916228f41082739c98efd6cc882926bf" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00003/brush-desktop-report.json", + "sha256": "ca992c23e2c302ef0b85b91305eabdbf71da6b5bc60c49b71710d145d0787e09" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00003/brush-local-exact-report.json", + "sha256": "e48dcad3974b94404d5d9f0c7222b6c45ea5f3b7a467ea2b88691a6ff50e22a6" + }, + "nativeReader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "9c2d9536cba500763ffc425d7f09132dfdb2d9c3c8e5e9dfd7246ee972cca3f9" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "8ba177250f629d6c2f83f78c376101e536e01388cda7b1672ceec9a15034b3b9" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "6667cefcccdba3379ad2fd25a50339a2ad94d498d6c9360f1fc2fbd8319597c4" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + }, + "package": { + "path": "web/package.json", + "sha256": "159af906f4e468e3f18cfcd2f599a7e22c9c180cdc8032ba4eac5eaf5ad8cc0e" + } + }, + "nextTask": "M16-GAP-00004" +} diff --git a/tests/golden/M16-GAP-00004/camera-desktop-report.json b/tests/golden/M16-GAP-00004/camera-desktop-report.json new file mode 100644 index 00000000..5b4239be --- /dev/null +++ b/tests/golden/M16-GAP-00004/camera-desktop-report.json @@ -0,0 +1,17 @@ +{ + "blenderVersion": "5.2.0 LTS", + "camera": { + "clipEnd": 2500.0, + "clipStart": 0.1, + "lens": 52.0, + "name": "WebGapCamera", + "sensorWidth": 36.0, + "type": "PERSP" + }, + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend", + "fixtureSha256": "c637587ce3011cbe9b038ab87803a9a2f945d4512b55d616a5dda268628988a0", + "operation": "CAMERA_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00004" +} diff --git a/tests/golden/M16-GAP-00004/camera-local-exact-report.json b/tests/golden/M16-GAP-00004/camera-local-exact-report.json new file mode 100644 index 00000000..092987fa --- /dev/null +++ b/tests/golden/M16-GAP-00004/camera-local-exact-report.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00004", + "operation": "CAMERA_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend", + "sha256": "c637587ce3011cbe9b038ab87803a9a2f945d4512b55d616a5dda268628988a0" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00004/camera-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "cameraId": "camera:WebGapCamera", + "values": { + "projection": "PERSPECTIVE", + "lensMm": 52, + "near": 0.10000000149011612, + "far": 2500 + } + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00005" +} diff --git a/tests/golden/M16-GAP-00004/manifest.json b/tests/golden/M16-GAP-00004/manifest.json new file mode 100644 index 00000000..cdb9e76f --- /dev/null +++ b/tests/golden/M16-GAP-00004/manifest.json @@ -0,0 +1,49 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00004", + "parentTask": "M16-GAP-00003", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CAMERA_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00003/manifest.json", + "sha256": "789282e4c913c77d8805490a132b26026f8d4a650539c1378f2dba546d4fcba1" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend", + "sha256": "c637587ce3011cbe9b038ab87803a9a2f945d4512b55d616a5dda268628988a0" + }, + "fixtureGenerator": { + "path": "tools/web/generate-camera-fixture.py", + "sha256": "23c1bf411ed483f4bf111fb52f63e9ec77610f30819c68ac248075a851a59c97" + }, + "desktopChecker": { + "path": "tools/web/check-camera-desktop.py", + "sha256": "27831385e1ed7e464c6b627bcbcb81af01ad2afa7ec66f28d2256641005802b4" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00004/camera-desktop-report.json", + "sha256": "b11254b3e0cdeb5e5c39e350ea1d349f5e2991f8c62a5ad28f744c391beab3b5" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00004/camera-local-exact-report.json", + "sha256": "a2b2c321efbcf2ed765f2e8b1019fef7e2cd34af872f78474d18594c6cee5d1c" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "6667cefcccdba3379ad2fd25a50339a2ad94d498d6c9360f1fc2fbd8319597c4" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + } + }, + "nextTask": "M16-GAP-00005" +} diff --git a/tests/golden/M16-GAP-00005/collection-desktop-report.json b/tests/golden/M16-GAP-00005/collection-desktop-report.json new file mode 100644 index 00000000..f08d743a --- /dev/null +++ b/tests/golden/M16-GAP-00005/collection-desktop-report.json @@ -0,0 +1,25 @@ +{ + "blenderVersion": "5.2.0 LTS", + "collections": [ + { + "children": [], + "name": "WebGapChild", + "objects": [ + "WebGapCollectionObject" + ] + }, + { + "children": [ + "WebGapChild" + ], + "name": "WebGapCollection", + "objects": [] + } + ], + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend", + "fixtureSha256": "c33d2b1b85b0272aa3bf06a012000db5f383a9a73b79bd4b90042110b70a912b", + "operation": "COLLECTION_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00005" +} diff --git a/tests/golden/M16-GAP-00005/collection-local-exact-report.json b/tests/golden/M16-GAP-00005/collection-local-exact-report.json new file mode 100644 index 00000000..1d4e0283 --- /dev/null +++ b/tests/golden/M16-GAP-00005/collection-local-exact-report.json @@ -0,0 +1,34 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00005", + "operation": "COLLECTION_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend", + "sha256": "c33d2b1b85b0272aa3bf06a012000db5f383a9a73b79bd4b90042110b70a912b" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00005/collection-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "collections": [ + { + "id": "collection:WebGapChild", + "childCollectionIds": [], + "objectIds": [ + "object:WebGapCollectionObject" + ] + }, + { + "id": "collection:WebGapCollection", + "childCollectionIds": [ + "collection:WebGapChild" + ], + "objectIds": [] + } + ] + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00006" +} diff --git a/tests/golden/M16-GAP-00005/manifest.json b/tests/golden/M16-GAP-00005/manifest.json new file mode 100644 index 00000000..1f236598 --- /dev/null +++ b/tests/golden/M16-GAP-00005/manifest.json @@ -0,0 +1,45 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00005", + "parentTask": "M16-GAP-00004", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "COLLECTION_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00004/manifest.json", + "sha256": "905c8f507a7c2e3c43a6d3c99a873124e1dc0aa1647e09a0b66f7e6a77462add" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend", + "sha256": "c33d2b1b85b0272aa3bf06a012000db5f383a9a73b79bd4b90042110b70a912b" + }, + "fixtureGenerator": { + "path": "tools/web/generate-collection-fixture.py", + "sha256": "3f2a02903a1c1d74a3ba707342b6617b39a3857ccf58e30162ab993c7e112544" + }, + "desktopChecker": { + "path": "tools/web/check-collection-desktop.py", + "sha256": "fca7970f55b654527226b1b39a88934db35da787772c69ba65075f11e2664f26" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00005/collection-desktop-report.json", + "sha256": "6e6bcf8e5575d46c324d51409d19be6f89e5397b1f094f528b164ea72c607887" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00005/collection-local-exact-report.json", + "sha256": "2db40433007886b24f5ceb18dccf7470e0c393163838a11f2feb48bab516d740" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + } + }, + "nextTask": "M16-GAP-00006" +} diff --git a/tests/golden/M16-GAP-00006/curve-desktop-report.json b/tests/golden/M16-GAP-00006/curve-desktop-report.json new file mode 100644 index 00000000..206ad478 --- /dev/null +++ b/tests/golden/M16-GAP-00006/curve-desktop-report.json @@ -0,0 +1,38 @@ +{ + "blenderVersion": "5.2.0 LTS", + "curve": { + "dimensions": "3D", + "name": "WebGapCurve", + "points": [ + [ + -1.0, + 0.0, + 0.0 + ], + [ + 0.0, + 1.0, + 0.5 + ], + [ + 1.0, + 0.0, + 1.0 + ] + ], + "resolution": 8, + "splines": [ + { + "count": 3, + "cyclic": false, + "type": "BEZIER" + } + ] + }, + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend", + "fixtureSha256": "49af45a70c7e050277a9b4b643c41aa9f29978b1df5214b5e48dc629b0027a21", + "operation": "CURVE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00006" +} diff --git a/tests/golden/M16-GAP-00006/curve-local-exact-report.json b/tests/golden/M16-GAP-00006/curve-local-exact-report.json new file mode 100644 index 00000000..30a71bb2 --- /dev/null +++ b/tests/golden/M16-GAP-00006/curve-local-exact-report.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00006", + "operation": "CURVE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend", + "sha256": "49af45a70c7e050277a9b4b643c41aa9f29978b1df5214b5e48dc629b0027a21" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00006/curve-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "curveId": "curve:WebGapCurve", + "splineCount": 1, + "pointCount": 3, + "splineTypes": [ + "BEZIER" + ] + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00007" +} diff --git a/tests/golden/M16-GAP-00006/manifest.json b/tests/golden/M16-GAP-00006/manifest.json new file mode 100644 index 00000000..237b0b3c --- /dev/null +++ b/tests/golden/M16-GAP-00006/manifest.json @@ -0,0 +1,49 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00006", + "parentTask": "M16-GAP-00005", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CURVE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00005/manifest.json", + "sha256": "581d3757a300c6dea5f8a989932f2787915c30ef84de8494a20fd65d2058551a" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend", + "sha256": "49af45a70c7e050277a9b4b643c41aa9f29978b1df5214b5e48dc629b0027a21" + }, + "fixtureGenerator": { + "path": "tools/web/generate-curve-fixture.py", + "sha256": "bb93a2ca07e8e8ae81341c46edc7cbceb72ada2023b8fe956ee3b6ad03c7ae11" + }, + "desktopChecker": { + "path": "tools/web/check-curve-desktop.py", + "sha256": "e66ba2ae04f6de97e9643e581fa4426650ce4ddcfea0ffc8b3bf9fb14fdd26ee" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00006/curve-desktop-report.json", + "sha256": "85e8eee37daea993653bfa1785f5df19f953c2d013543e8a27743ed74d49d4ff" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00006/curve-local-exact-report.json", + "sha256": "048c9fb9116ab2a1b4460c74696340a263cd342ba4886ce56f8b03bef8743e58" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "6667cefcccdba3379ad2fd25a50339a2ad94d498d6c9360f1fc2fbd8319597c4" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + } + }, + "nextTask": "M16-GAP-00007" +} diff --git a/tests/golden/M16-GAP-00007/curves-desktop-report.json b/tests/golden/M16-GAP-00007/curves-desktop-report.json new file mode 100644 index 00000000..773444f8 --- /dev/null +++ b/tests/golden/M16-GAP-00007/curves-desktop-report.json @@ -0,0 +1,14 @@ +{ + "blenderVersion": "5.2.0 LTS", + "curves": { + "curveCount": 1, + "name": "WebGapCurves", + "pointCount": 4 + }, + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend", + "fixtureSha256": "d6489313473ced7f55cc1d43f3fa73181672c0a5db4b6854002f18354ca1d9a6", + "operation": "CURVES_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00007" +} diff --git a/tests/golden/M16-GAP-00007/curves-local-exact-report.json b/tests/golden/M16-GAP-00007/curves-local-exact-report.json new file mode 100644 index 00000000..cc78e026 --- /dev/null +++ b/tests/golden/M16-GAP-00007/curves-local-exact-report.json @@ -0,0 +1,21 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00007", + "operation": "CURVES_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend", + "sha256": "d6489313473ced7f55cc1d43f3fa73181672c0a5db4b6854002f18354ca1d9a6" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00007/curves-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "curvesId": "curves:WebGapCurves", + "pointCount": 4, + "splineCount": 1 + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00008" +} diff --git a/tests/golden/M16-GAP-00007/manifest.json b/tests/golden/M16-GAP-00007/manifest.json new file mode 100644 index 00000000..f148cece --- /dev/null +++ b/tests/golden/M16-GAP-00007/manifest.json @@ -0,0 +1,49 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00007", + "parentTask": "M16-GAP-00006", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CURVES_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00006/manifest.json", + "sha256": "d17d368089b84c23ce4cc4016f61cc3bf0ea86ade968045a7a8dc6a3063394f0" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend", + "sha256": "d6489313473ced7f55cc1d43f3fa73181672c0a5db4b6854002f18354ca1d9a6" + }, + "fixtureGenerator": { + "path": "tools/web/generate-curves-fixture.py", + "sha256": "792ec1d58d495cd9d425215aa631dd5e1d66f7bd5cf75e783b961760667faacc" + }, + "desktopChecker": { + "path": "tools/web/check-curves-desktop.py", + "sha256": "3a8372a8ba072df2f5a3a1b3cccef44d219dde2193b551110017436cbd38e85c" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00007/curves-desktop-report.json", + "sha256": "db15e64bfe202720b463ab742cbed2e6ec80b872456b825078afbba7a2540531" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00007/curves-local-exact-report.json", + "sha256": "bf093708e23b8318e1f50b925b5c033d66aa8c1f97303174ad2489a82191705f" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "6667cefcccdba3379ad2fd25a50339a2ad94d498d6c9360f1fc2fbd8319597c4" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + } + }, + "nextTask": "M16-GAP-00008" +} diff --git a/tests/golden/M16-GAP-00008/freestyle-desktop-report.json b/tests/golden/M16-GAP-00008/freestyle-desktop-report.json new file mode 100644 index 00000000..cb540d06 --- /dev/null +++ b/tests/golden/M16-GAP-00008/freestyle-desktop-report.json @@ -0,0 +1,27 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend", + "fixtureSha256": "94de965ad54018f7072f2b4f4b752dc6f28f6608836040dc353d18d19fe31fd9", + "lineStyle": { + "alpha": 0.75, + "chaining": true, + "color": [ + 0.2, + 0.4, + 0.8 + ], + "dashed": true, + "modifierCounts": { + "alpha": 0, + "color": 0, + "geometry": 1, + "thickness": 0 + }, + "name": "WebGapLineStyle", + "thickness": 2.5 + }, + "operation": "FREESTYLE_LINE_STYLE_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00008" +} diff --git a/tests/golden/M16-GAP-00008/freestyle-local-exact-report.json b/tests/golden/M16-GAP-00008/freestyle-local-exact-report.json new file mode 100644 index 00000000..1592658d --- /dev/null +++ b/tests/golden/M16-GAP-00008/freestyle-local-exact-report.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00008", + "operation": "FREESTYLE_LINE_STYLE_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend", + "sha256": "94de965ad54018f7072f2b4f4b752dc6f28f6608836040dc353d18d19fe31fd9" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00008/freestyle-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "lineStyleId": "line-style:WebGapLineStyle", + "thickness": 2.5, + "modifierCounts": { + "alpha": 0, + "color": 0, + "geometry": 1, + "thickness": 0 + } + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00009" +} diff --git a/tests/golden/M16-GAP-00008/manifest.json b/tests/golden/M16-GAP-00008/manifest.json new file mode 100644 index 00000000..c987f061 --- /dev/null +++ b/tests/golden/M16-GAP-00008/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00008", + "parentTask": "M16-GAP-00007", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "FREESTYLE_LINE_STYLE_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00007/manifest.json", + "sha256": "0c115415e196995788045b412c37da40af5cac0f2200efc124515d730b63af14" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend", + "sha256": "94de965ad54018f7072f2b4f4b752dc6f28f6608836040dc353d18d19fe31fd9" + }, + "fixtureGenerator": { + "path": "tools/web/generate-freestyle-fixture.py", + "sha256": "e73088d9097c6ee94baaa07d3e8e279a55a0a34ccec2618e629699f840fd1ed1" + }, + "desktopChecker": { + "path": "tools/web/check-freestyle-desktop.py", + "sha256": "7621b52c88adbae0bb611b2fd6ea2ccf1a0666341c36d4d03eda8f4c565efdc8" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00008/freestyle-desktop-report.json", + "sha256": "2c42936cd8e4046b752f7e86949927769d1cb8f2086a2c9ba27eebf61a6f4a89" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00008/freestyle-local-exact-report.json", + "sha256": "ab75a7fdfa71a4abd4a5e97f7e726440bde7891163c0b256be0815e1cc51a99a" + }, + "nativeReader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "9c2d9536cba500763ffc425d7f09132dfdb2d9c3c8e5e9dfd7246ee972cca3f9" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "8ba177250f629d6c2f83f78c376101e536e01388cda7b1672ceec9a15034b3b9" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "6667cefcccdba3379ad2fd25a50339a2ad94d498d6c9360f1fc2fbd8319597c4" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + } + }, + "nextTask": "M16-GAP-00009" +} diff --git a/tests/golden/M16-GAP-00009/grease-pencil-desktop-report.json b/tests/golden/M16-GAP-00009/grease-pencil-desktop-report.json new file mode 100644 index 00000000..b27a5f3e --- /dev/null +++ b/tests/golden/M16-GAP-00009/grease-pencil-desktop-report.json @@ -0,0 +1,20 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend", + "fixtureSha256": "3a8525077807f9178dac3a5ba84b524e5f8e80874b15c54e2a6658ecb80315a3", + "greasePencil": { + "layers": [ + { + "frames": [ + 1 + ], + "name": "Lines" + } + ], + "name": "GreasePencilData" + }, + "operation": "GREASE_PENCIL_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00009" +} diff --git a/tests/golden/M16-GAP-00009/grease-pencil-local-exact-report.json b/tests/golden/M16-GAP-00009/grease-pencil-local-exact-report.json new file mode 100644 index 00000000..d06ac44d --- /dev/null +++ b/tests/golden/M16-GAP-00009/grease-pencil-local-exact-report.json @@ -0,0 +1,21 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00009", + "operation": "GREASE_PENCIL_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend", + "sha256": "3a8525077807f9178dac3a5ba84b524e5f8e80874b15c54e2a6658ecb80315a3" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00009/grease-pencil-desktop-report.json" + }, + "wasm": { + "status": "EXACT", + "dataName": "GreasePencilData", + "layerCount": 1, + "frameCount": 1 + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00010" +} diff --git a/tests/golden/M16-GAP-00009/manifest.json b/tests/golden/M16-GAP-00009/manifest.json new file mode 100644 index 00000000..b4344d88 --- /dev/null +++ b/tests/golden/M16-GAP-00009/manifest.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00009", + "parentTask": "M16-GAP-00008", + "enablingTask": true, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00008/manifest.json", + "sha256": "3b4c0eb24867cef0054cffb31d1e3320379dbf70e13e8920eaa08da6ace06c89" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend", + "sha256": "3a8525077807f9178dac3a5ba84b524e5f8e80874b15c54e2a6658ecb80315a3" + }, + "desktopChecker": { + "path": "tools/web/check-grease-pencil-desktop.py", + "sha256": "4d99d5e81fcdc8289e462279f2da278e2aea573f4d947fa5e71e959b506d1ee1" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "a987e77c1e35f70d820fe12430d74d90e72bfb594b65dbbf39f005748c6683f8" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00009/grease-pencil-desktop-report.json", + "sha256": "6a1145d7447a08f51d751dca797e67f2be7eb12cba052a726c4c2f8ee28b585e" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00009/grease-pencil-local-exact-report.json", + "sha256": "94aaf84cc072ef13998517d610740d81d94c14593ba776ea7f4b88c673a0a71f" + }, + "plan": { + "path": "tests/golden/M15-03A/next-task-plan.json", + "sha256": "732d34b5a696077ae6f7f11df768e1e1671379e2face64496f46fcbf352878ed" + } + }, + "nextTask": "M16-GAP-00010" +} diff --git a/tests/golden/M16-GAP-00010/lattice-desktop-report.json b/tests/golden/M16-GAP-00010/lattice-desktop-report.json new file mode 100644 index 00000000..4684d827 --- /dev/null +++ b/tests/golden/M16-GAP-00010/lattice-desktop-report.json @@ -0,0 +1,137 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend", + "fixtureSha256": "ec40e2661e20c8f7e3b18d9b42f9e585175be8c2f210a1c8c190e76a6e9fbc63", + "lattice": { + "activePoint": -1, + "dimensions": [ + 3, + 2, + 2 + ], + "id": "lattice:WebGapLattice", + "interpolation": [ + "KEY_LINEAR", + "KEY_CARDINAL", + "KEY_BSPLINE" + ], + "name": "WebGapLattice", + "pointCount": 12, + "points": [ + { + "coDeform": [ + -1.0, + -0.5, + -0.5 + ], + "selected": true, + "weight": 0.5 + }, + { + "coDeform": [ + 0.125, + -0.5625, + -0.5 + ], + "selected": false, + "weight": 0.625 + }, + { + "coDeform": [ + 1.25, + -0.5, + -0.5 + ], + "selected": false, + "weight": 0.75 + }, + { + "coDeform": [ + -1.0, + 0.4375, + -0.5 + ], + "selected": false, + "weight": 0.875 + }, + { + "coDeform": [ + 0.125, + 0.5, + -0.5 + ], + "selected": false, + "weight": 1.0 + }, + { + "coDeform": [ + 1.25, + 0.4375, + -0.5 + ], + "selected": false, + "weight": 1.125 + }, + { + "coDeform": [ + -1.0, + -0.5, + 0.75 + ], + "selected": false, + "weight": 1.25 + }, + { + "coDeform": [ + 0.125, + -0.5625, + 0.75 + ], + "selected": false, + "weight": 1.375 + }, + { + "coDeform": [ + 1.25, + -0.5, + 0.75 + ], + "selected": false, + "weight": 1.5 + }, + { + "coDeform": [ + -1.0, + 0.4375, + 0.75 + ], + "selected": false, + "weight": 1.625 + }, + { + "coDeform": [ + 0.125, + 0.5, + 0.75 + ], + "selected": false, + "weight": 1.75 + }, + { + "coDeform": [ + 1.25, + 0.4375, + 0.75 + ], + "selected": true, + "weight": 1.875 + } + ], + "useOutside": true, + "vertexGroup": "WebGapInfluence" + }, + "operation": "LATTICE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00010" +} diff --git a/tests/golden/M16-GAP-00010/lattice-local-exact-report.json b/tests/golden/M16-GAP-00010/lattice-local-exact-report.json new file mode 100644 index 00000000..95ed7b59 --- /dev/null +++ b/tests/golden/M16-GAP-00010/lattice-local-exact-report.json @@ -0,0 +1,32 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00010", + "operation": "LATTICE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend", + "sha256": "ec40e2661e20c8f7e3b18d9b42f9e585175be8c2f210a1c8c190e76a6e9fbc63" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00010/lattice-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "latticeId": "lattice:WebGapLattice", + "dimensions": [ + 3, + 2, + 2 + ], + "pointCount": 12, + "interpolation": [ + "KEY_LINEAR", + "KEY_CARDINAL", + "KEY_BSPLINE" + ], + "pointHash": "f1b46c8600d9f44473ecb7d4d90fcc022d446dfa1ea9cd780a9f003f741895bc" + }, + "saveReopen": "EXACT", + "nextTask": "M16-GAP-00011" +} diff --git a/tests/golden/M16-GAP-00010/manifest.json b/tests/golden/M16-GAP-00010/manifest.json new file mode 100644 index 00000000..a9dc1a07 --- /dev/null +++ b/tests/golden/M16-GAP-00010/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00010", + "parentTask": "M16-GAP-00009", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "LATTICE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00009/manifest.json", + "sha256": "c242975eccdcb4c516dfae17763f9a15b9db29b856bd9f845e9eceb429e8ce69" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend", + "sha256": "ec40e2661e20c8f7e3b18d9b42f9e585175be8c2f210a1c8c190e76a6e9fbc63" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00010.py", + "sha256": "35303113c57f1cc6c6b7bd1afc269be0c824b71f0c7bfbb0fd33f35fea40a8c2" + }, + "desktopChecker": { + "path": "tools/web/check-lattice-desktop.py", + "sha256": "56f48405407b4baba4ee9a13038fddc951c6fe607a3d64d6894a00e61d30be9b" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "8d93d0d65a0c3e0268dfb1ce9cdd27bdf7aab33f2234d6433b6749aa81403ad3" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00010/lattice-desktop-report.json", + "sha256": "bb8effdcf18a89794914d88311a598b3285e64f18c402c9cff477ae5700ba089" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00010/lattice-local-exact-report.json", + "sha256": "489c9d25a6e4164860f5528944eca0e173f8a7e4130e89404b6fa09da9b469a0" + } + }, + "nextTask": "M16-GAP-00011" +} diff --git a/tests/golden/M16-GAP-00011/library-desktop-report.json b/tests/golden/M16-GAP-00011/library-desktop-report.json new file mode 100644 index 00000000..a375b995 --- /dev/null +++ b/tests/golden/M16-GAP-00011/library-desktop-report.json @@ -0,0 +1,17 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "fixtureSha256": "d6b00d6cdc0c1c73158ba91433d8344f4b6b0a2f1d5c81e57cc4e0b42d23c34a", + "library": { + "dependencyIds": [], + "id": "library:WebGapLibrary.blend", + "name": "WebGapLibrary.blend", + "packed": false, + "readOnly": true, + "sourcePath": "//WebGapLibrary.blend" + }, + "operation": "LIBRARY_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00011" +} diff --git a/tests/golden/M16-GAP-00011/library-local-exact-report.json b/tests/golden/M16-GAP-00011/library-local-exact-report.json new file mode 100644 index 00000000..5f5ae975 --- /dev/null +++ b/tests/golden/M16-GAP-00011/library-local-exact-report.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00011", + "operation": "LIBRARY_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "sha256": "d6b00d6cdc0c1c73158ba91433d8344f4b6b0a2f1d5c81e57cc4e0b42d23c34a" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00011/library-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "libraryId": "library:WebGapLibrary.blend", + "sourcePath": "//WebGapLibrary.blend", + "libraryStatus": "EXTERNAL_REQUIRED", + "dependencyIds": [] + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00012" +} diff --git a/tests/golden/M16-GAP-00011/manifest.json b/tests/golden/M16-GAP-00011/manifest.json new file mode 100644 index 00000000..109f2b30 --- /dev/null +++ b/tests/golden/M16-GAP-00011/manifest.json @@ -0,0 +1,61 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00011", + "parentTask": "M16-GAP-00010", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "LIBRARY_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00010/manifest.json", + "sha256": "cb3be7f0917ca95d831ffabaa11470eb528ce3fe5eda1ba1e3f7925ea2288737" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "sha256": "d6b00d6cdc0c1c73158ba91433d8344f4b6b0a2f1d5c81e57cc4e0b42d23c34a" + }, + "librarySource": { + "path": "tests/files/web/generated/WebGapLibrary.blend", + "sha256": "1fe24e423713bc18dc936e723e97f7c306db4aa62cc24736055eb2d341375088" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00011.py", + "sha256": "f33b9d5482193439fedd34f138b192d2e086db01205560276fa43bfd08ed430a" + }, + "desktopChecker": { + "path": "tools/web/check-library-desktop.py", + "sha256": "34eda5a724ca7eab9fcb2e4f39cec46125e363f548fc77beb3f09133151fdeb4" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "0e13f61a7f34ddc10388f8e6ee5215fe941714e2bbf759a795efbcdd0fbc3aa0" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00011/library-desktop-report.json", + "sha256": "0bc9032490f2450e99d30fd67fe95b164f8d359ca042d0e0b772ee1a28e39dbd" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00011/library-local-exact-report.json", + "sha256": "82c3a7ebb204da9dd8f817f0378374be062993892a4405d01f81c960677f45bf" + } + }, + "nextTask": "M16-GAP-00012" +} diff --git a/tests/golden/M16-GAP-00011/task-context.json b/tests/golden/M16-GAP-00011/task-context.json new file mode 100644 index 00000000..a6897feb --- /dev/null +++ b/tests/golden/M16-GAP-00011/task-context.json @@ -0,0 +1,121 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00011", + "parentTask": "M16-GAP-00010", + "status": "in_progress", + "goal": "让同一个 Library fixture 在 Blender desktop 和 WASM/Main 中得到一致的最小可观察数据,并在 save/reopen 后保持一致。只改变 `datablock:Library` 这一条 gap;不扩大到其他 data-block 或编辑器行为。", + "scope": { + "gap": "datablock:Library", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00011.py -- tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00011", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00011" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00011-datablock-Library.blend", + "tools/web/generated/M16-GAP-00011.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00012", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00011.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00010/manifest.json", + "parentStatus": "docs/status/M16-GAP-00010.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00011.md", + "tests/golden/M16-GAP-00010/manifest.json", + "docs/status/M16-GAP-00010.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00010", + "parentTask": "M16-GAP-00009", + "status": "done", + "nextTask": "M16-GAP-00011", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00010 Status", + "status: done ", + "task: Lattice data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Lattice data-block dimensions, interpolation, outside flag, vertex group, point deformation, weight and selection.", + "evidence:", + "- Desktop fixture generated by `tools/web/generated/M16-GAP-00010.py`; Blender 5.2 opened, saved to a fresh file, reopened in a new process and matched exactly.", + "- WASM/Main opened the same fixture, produced 3x2x2 / 12-point `lattice:WebGapLattice`, and matched the desktop point report exactly." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1945, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 40, + "taskTokens": 377 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00011.md", + "bytes": 1945, + "lines": 40, + "tokens": 377 + }, + { + "path": "tests/golden/M16-GAP-00010/manifest.json", + "bytes": 2188, + "lines": 58, + "tokens": 547 + }, + { + "path": "docs/status/M16-GAP-00010.md", + "bytes": 1522, + "lines": 24, + "tokens": 381 + } + ], + "totalTokens": 1626, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00012/light-desktop-report.json b/tests/golden/M16-GAP-00012/light-desktop-report.json new file mode 100644 index 00000000..306ea170 --- /dev/null +++ b/tests/golden/M16-GAP-00012/light-desktop-report.json @@ -0,0 +1,32 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "fixtureSha256": "b92565305572d48cc2311b749d50024f1df68c4084ae8bc52ce2ba2c3832a3fa", + "light": { + "areaShape": 1, + "areaSize": 3.0, + "areaSizeY": 2.0, + "areaSpread": 2.4, + "castsShadow": false, + "color": [ + 0.25, + 0.5, + 0.75 + ], + "energy": 400.0, + "exposure": 1.0, + "id": "light:WebGapLight", + "lightType": 4, + "name": "WebGapLight", + "radius": 0.3, + "spotAngle": 0.785398, + "spotBlend": 0.15, + "sunAngle": 0.00918, + "temperature": 5000.0, + "useTemperature": true + }, + "operation": "LIGHT_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00012" +} diff --git a/tests/golden/M16-GAP-00012/light-local-exact-report.json b/tests/golden/M16-GAP-00012/light-local-exact-report.json new file mode 100644 index 00000000..07f57902 --- /dev/null +++ b/tests/golden/M16-GAP-00012/light-local-exact-report.json @@ -0,0 +1,33 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00012", + "operation": "LIGHT_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "sha256": "b92565305572d48cc2311b749d50024f1df68c4084ae8bc52ce2ba2c3832a3fa" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00012/light-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "lightId": "light:WebGapLight", + "lightType": 4, + "fields": { + "energy": 400, + "exposure": 1, + "temperature": 5000, + "useTemperature": true, + "castsShadow": false, + "areaSize": 3, + "areaSizeY": 2 + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00013" +} diff --git a/tests/golden/M16-GAP-00012/manifest.json b/tests/golden/M16-GAP-00012/manifest.json new file mode 100644 index 00000000..361ca706 --- /dev/null +++ b/tests/golden/M16-GAP-00012/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00012", + "parentTask": "M16-GAP-00011", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "LIGHT_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00011/manifest.json", + "sha256": "a29ac9278d37d187f5e421f365a71fb3d18a8aeb74cfe4ae733f8510a43446de" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "sha256": "b92565305572d48cc2311b749d50024f1df68c4084ae8bc52ce2ba2c3832a3fa" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00012.py", + "sha256": "9b261d7d516e0514e6e96a876661d0ab8eb83b844e92cd72dc4ffda460da0b2b" + }, + "desktopChecker": { + "path": "tools/web/check-light-desktop.py", + "sha256": "90025507cc88c1c2be028e52a0b6e0b80561915bf109f38c64b95191c716505c" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "cf0cc4ebefcd319d6351d70864efd20c66e415dd0adb1637224e1390d1d38e70" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00012/light-desktop-report.json", + "sha256": "92bd381ec7b8242de6379d9e266ebbb63bd34c2d28e852d2ac7610eb7e67b8d3" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00012/light-local-exact-report.json", + "sha256": "103958f99cc13fccef7acb4128f3707e48580c8ad86813821a2ce40986c5a964" + } + }, + "nextTask": "M16-GAP-00013" +} diff --git a/tests/golden/M16-GAP-00012/task-context.json b/tests/golden/M16-GAP-00012/task-context.json new file mode 100644 index 00000000..6e5b0a95 --- /dev/null +++ b/tests/golden/M16-GAP-00012/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00012", + "parentTask": "M16-GAP-00011", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Light data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Light", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00012.py -- tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00012", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00012" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00012-datablock-Light.blend", + "tools/web/generated/M16-GAP-00012.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00012/", + "docs/status/M16-GAP-00012.md", + "tests/golden/M16-GAP-00012/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00013", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00012.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00011/manifest.json", + "parentStatus": "docs/status/M16-GAP-00011.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00012.md", + "tests/golden/M16-GAP-00011/manifest.json", + "docs/status/M16-GAP-00011.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00011", + "parentTask": "M16-GAP-00010", + "status": "done", + "nextTask": "M16-GAP-00012", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00011 Status", + "status: done ", + "task: Library data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Library metadata for one linked, project-relative source: stable id/name/path, packed state, external-required status, dependency list and read-only contract.", + "evidence:", + "- `tools/web/generated/M16-GAP-00011.py` generated a real linked-Library fixture from `WebGapLibrary.blend`; the target reopens in Blender desktop.", + "- Desktop report matched one `library:WebGapLibrary.blend` with `sourcePath=//WebGapLibrary.blend`, unpacked external-required state, empty dependencies and read-only=true after save/reopen." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1724, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 424 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00012.md", + "bytes": 1724, + "lines": 38, + "tokens": 424 + }, + { + "path": "tests/golden/M16-GAP-00011/manifest.json", + "bytes": 2364, + "lines": 62, + "tokens": 591 + }, + { + "path": "docs/status/M16-GAP-00011.md", + "bytes": 1879, + "lines": 26, + "tokens": 470 + } + ], + "totalTokens": 1806, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00013/manifest.json b/tests/golden/M16-GAP-00013/manifest.json new file mode 100644 index 00000000..6f16e052 --- /dev/null +++ b/tests/golden/M16-GAP-00013/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00013", + "parentTask": "M16-GAP-00012", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "MATERIAL_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00012/manifest.json", + "sha256": "c71a0d9e23d13bf51a190c99f16e4e7e98da1f12cba50f2404bef8fcb6e94d4c" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "sha256": "e17880024b28e0fbc8fac5b815a2c673fe11d5000cb1d23a794cdc3d83658d76" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00013.py", + "sha256": "bb04dd1da461e061c27be9d4e160b2787026855198661e72ff4fee802b72c817" + }, + "desktopChecker": { + "path": "tools/web/check-material-desktop.py", + "sha256": "42a870bb79eceb8e1789686db689842dfe390d58db2744fded8dd571fe9cd8f5" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "e0e510273337e56435cf44adef246ff5bf12d6857691376ac2aacf6a4fc79ed8" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00013/material-desktop-report.json", + "sha256": "7adfdd70f9b116268301e0bb6cf7e0b88cf8eb2ab20d25c944586df3a9cc000c" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00013/material-local-exact-report.json", + "sha256": "229f3fc85518da4539e311e6ca70fd6b156cdcc9ae4c4b901e0de5c895b3d333" + } + }, + "nextTask": "M16-GAP-00014" +} diff --git a/tests/golden/M16-GAP-00013/material-desktop-report.json b/tests/golden/M16-GAP-00013/material-desktop-report.json new file mode 100644 index 00000000..a069c163 --- /dev/null +++ b/tests/golden/M16-GAP-00013/material-desktop-report.json @@ -0,0 +1,39 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "fixtureSha256": "e17880024b28e0fbc8fac5b815a2c673fe11d5000cb1d23a794cdc3d83658d76", + "material": { + "alpha": 0.9, + "baseColor": [ + 0.2, + 0.4, + 0.8, + 0.9 + ], + "coatRoughness": 0.12, + "coatWeight": 0.64, + "emissionColor": [ + 0.05, + 0.1, + 0.2, + 1.0 + ], + "emissionStrength": 3.5, + "id": "material:WebGapMaterial", + "ior": 1.6, + "linkCount": 1, + "metallic": 0.35, + "name": "WebGapMaterial", + "nodeTypes": [ + "ShaderNodeBsdfPrincipled", + "ShaderNodeOutputMaterial" + ], + "roughness": 0.6, + "specularIORLevel": 0.35, + "transmissionWeight": 0.27 + }, + "operation": "MATERIAL_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00013" +} diff --git a/tests/golden/M16-GAP-00013/material-local-exact-report.json b/tests/golden/M16-GAP-00013/material-local-exact-report.json new file mode 100644 index 00000000..2dee5294 --- /dev/null +++ b/tests/golden/M16-GAP-00013/material-local-exact-report.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00013", + "operation": "MATERIAL_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "sha256": "e17880024b28e0fbc8fac5b815a2c673fe11d5000cb1d23a794cdc3d83658d76" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00013/material-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "materialId": "material:WebGapMaterial", + "shaderGraphHash": "6c4cc2b22454e1cc33d19d77aeab827415c4b90304d8113d0bbb4c70ac862a3a", + "nodeCount": 2, + "linkCount": 1 + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00014" +} diff --git a/tests/golden/M16-GAP-00013/task-context.json b/tests/golden/M16-GAP-00013/task-context.json new file mode 100644 index 00000000..14d5ba94 --- /dev/null +++ b/tests/golden/M16-GAP-00013/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00013", + "parentTask": "M16-GAP-00012", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Material data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Material", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00013.py -- tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00013", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00013" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00013-datablock-Material.blend", + "tools/web/generated/M16-GAP-00013.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00013/", + "docs/status/M16-GAP-00013.md", + "tests/golden/M16-GAP-00013/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00014", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00013.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00012/manifest.json", + "parentStatus": "docs/status/M16-GAP-00012.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00013.md", + "tests/golden/M16-GAP-00012/manifest.json", + "docs/status/M16-GAP-00012.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00012", + "parentTask": "M16-GAP-00011", + "status": "done", + "nextTask": "M16-GAP-00013", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00012 Status", + "status: done ", + "task: Light data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Area Light metadata: type, color, energy, exposure, temperature, temperature enablement, shadow flag, radius, area shape/size/spread and bounded default spot/sun fields.", + "evidence:", + "- `tools/web/generated/M16-GAP-00012.py` generated a single `WebGapLight` Area Light fixture with deterministic RNA values.", + "- Desktop report reopened the fixture after save and matched exactly, including Light type 4, rectangle shape 1, color `[0.25, 0.5, 0.75]`, energy 400, exposure 1, temperature 5000, area size 3x2 and spread 2.4." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1739, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 428 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00013.md", + "bytes": 1739, + "lines": 38, + "tokens": 428 + }, + { + "path": "tests/golden/M16-GAP-00012/manifest.json", + "bytes": 2178, + "lines": 58, + "tokens": 545 + }, + { + "path": "docs/status/M16-GAP-00012.md", + "bytes": 1837, + "lines": 26, + "tokens": 460 + } + ], + "totalTokens": 1754, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00014/manifest.json b/tests/golden/M16-GAP-00014/manifest.json new file mode 100644 index 00000000..4f9c7fcd --- /dev/null +++ b/tests/golden/M16-GAP-00014/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00014", + "parentTask": "M16-GAP-00013", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "MESH_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00013/manifest.json", + "sha256": "47663ad9012f36f2947f3ac8dc0d628f8f5bc338809686692e92dd59ca46c591" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "sha256": "1676a26f95de4eb90e55ea169a497c382ca68f195c6b883de49b6a3223d84bb5" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00014.py", + "sha256": "c1333fbd1f86bac31f1db1f09056d2152f3b537fe59353f3d6f50767e8d724db" + }, + "desktopChecker": { + "path": "tools/web/check-mesh-desktop.py", + "sha256": "8fe5859138f84079ddb43030fc8d22b596044b08d4f863da5dd25acaeedafdd5" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "82796fdee398c4d97d1506610b8d4b838eeb0ea6b33218ed8c749cf06d747289" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00014/mesh-desktop-report.json", + "sha256": "e26f0333707fa915b7261f305af413340f9edb26d050a82fb3c6afac12ee2169" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00014/mesh-local-exact-report.json", + "sha256": "36066f715b9993f0e789e12a0d29f9c0c9e79e0b5ff5914268e839fa648cb28a" + } + }, + "nextTask": "M16-GAP-00015" +} diff --git a/tests/golden/M16-GAP-00014/mesh-desktop-report.json b/tests/golden/M16-GAP-00014/mesh-desktop-report.json new file mode 100644 index 00000000..ca210776 --- /dev/null +++ b/tests/golden/M16-GAP-00014/mesh-desktop-report.json @@ -0,0 +1,53 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "fixtureSha256": "1676a26f95de4eb90e55ea169a497c382ca68f195c6b883de49b6a3223d84bb5", + "mesh": { + "cornerCount": 4, + "edgeCount": 4, + "faceCount": 1, + "id": "mesh:WebGapMesh", + "indices": [ + 0, + 1, + 2, + 0, + 2, + 3 + ], + "name": "WebGapMesh", + "positions": [ + -1.0, + -1.0, + 0.0, + 1.0, + -1.0, + 0.0, + 1.0, + 1.0, + 0.25, + -1.0, + 1.0, + 0.25 + ], + "triangleCount": 2, + "uvLayers": [ + "WebGapUV" + ], + "uvs": [ + 0.0, + 0.0, + 1.0, + 0.0, + 1.0, + 1.0, + 0.0, + 1.0 + ], + "vertexCount": 4 + }, + "operation": "MESH_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00014" +} diff --git a/tests/golden/M16-GAP-00014/mesh-local-exact-report.json b/tests/golden/M16-GAP-00014/mesh-local-exact-report.json new file mode 100644 index 00000000..cf753280 --- /dev/null +++ b/tests/golden/M16-GAP-00014/mesh-local-exact-report.json @@ -0,0 +1,28 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00014", + "operation": "MESH_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "sha256": "1676a26f95de4eb90e55ea169a497c382ca68f195c6b883de49b6a3223d84bb5" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00014/mesh-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapMesh", + "vertexCount": 4, + "triangleCount": 2, + "uvLayers": [ + "WebGapUV" + ] + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00015" +} diff --git a/tests/golden/M16-GAP-00014/task-context.json b/tests/golden/M16-GAP-00014/task-context.json new file mode 100644 index 00000000..5439aa19 --- /dev/null +++ b/tests/golden/M16-GAP-00014/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00014", + "parentTask": "M16-GAP-00013", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Mesh data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Mesh", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00014.py -- tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00014", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00014" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend", + "tools/web/generated/M16-GAP-00014.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00014/", + "docs/status/M16-GAP-00014.md", + "tests/golden/M16-GAP-00014/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00015", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00014.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00013/manifest.json", + "parentStatus": "docs/status/M16-GAP-00013.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00014.md", + "tests/golden/M16-GAP-00013/manifest.json", + "docs/status/M16-GAP-00013.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00013", + "parentTask": "M16-GAP-00012", + "status": "done", + "nextTask": "M16-GAP-00014", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00013 Status", + "status: done ", + "task: Material data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Principled Material metadata and minimal shader graph: PBR values, IOR/transmission/coat, emission, alpha, two-node topology, one link and graph hash.", + "evidence:", + "- `tools/web/generated/M16-GAP-00013.py` generated a retained `WebGapMaterial` on a minimal triangle Mesh, with Principled and Material Output nodes.", + "- Desktop report reopened after save and matched exactly: base color `[0.2, 0.4, 0.8, 0.9]`, roughness 0.6, metallic 0.35, IOR 1.6, transmission 0.27, coat 0.64/0.12, emission `[0.05, 0.1, 0.2, 1]` at strength 3.5, two nodes and one link." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1719, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 423 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00014.md", + "bytes": 1719, + "lines": 38, + "tokens": 423 + }, + { + "path": "tests/golden/M16-GAP-00013/manifest.json", + "bytes": 2193, + "lines": 58, + "tokens": 549 + }, + { + "path": "docs/status/M16-GAP-00013.md", + "bytes": 1933, + "lines": 26, + "tokens": 484 + } + ], + "totalTokens": 1777, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00015/manifest.json b/tests/golden/M16-GAP-00015/manifest.json new file mode 100644 index 00000000..59f80b97 --- /dev/null +++ b/tests/golden/M16-GAP-00015/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00015", + "parentTask": "M16-GAP-00014", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "METABALL_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00014/manifest.json", + "sha256": "97e0da40860f7095157068fd4545d7cd9c25ba94a68d56ab87e32b6fd032b655" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "sha256": "b4901e5c71f10b79a2061bf7599b43ff1b20b7df59f227aa78c1e66a38080b4f" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00015.py", + "sha256": "db1da7ca090d37b6590eab38f49cbcac9972e7ade1966d78f316048c6b0acf54" + }, + "desktopChecker": { + "path": "tools/web/check-metaball-desktop.py", + "sha256": "77a03db581b17eda4219b42ffbf18e5d1809dfb3bf45f3ac0c0051f27934dc0c" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "ead5bd538ba919fa51ec303d1d1af5ae0f648b1453c02d20383824dcfd9da12f" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00015/metaball-desktop-report.json", + "sha256": "5b2b7d79397675792bf54b568646a1714f75fab355049e7227f634403345c74c" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00015/metaball-local-exact-report.json", + "sha256": "7253a7de7d2aad035ef38cceee33c0bd04ca743f181f28ac740e09799684a636" + } + }, + "nextTask": "M16-GAP-00016" +} diff --git a/tests/golden/M16-GAP-00015/metaball-desktop-report.json b/tests/golden/M16-GAP-00015/metaball-desktop-report.json new file mode 100644 index 00000000..dd33a912 --- /dev/null +++ b/tests/golden/M16-GAP-00015/metaball-desktop-report.json @@ -0,0 +1,44 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "fixtureSha256": "b4901e5c71f10b79a2061bf7599b43ff1b20b7df59f227aa78c1e66a38080b4f", + "metaball": { + "elements": [ + { + "position": [ + -0.65, + 0.0, + 0.4 + ], + "radius": 0.75, + "scale": [ + 1.1, + 0.9, + 1.2 + ] + }, + { + "position": [ + 0.65, + 0.0, + 0.4 + ], + "radius": 0.55, + "scale": [ + 0.8, + 1.05, + 0.95 + ] + } + ], + "id": "metaball:WebGapMetaBall", + "name": "WebGapMetaBall", + "pointCount": 2, + "renderResolution": 0.1, + "resolution": 0.2 + }, + "operation": "METABALL_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00015" +} diff --git a/tests/golden/M16-GAP-00015/metaball-local-exact-report.json b/tests/golden/M16-GAP-00015/metaball-local-exact-report.json new file mode 100644 index 00000000..ae39caa5 --- /dev/null +++ b/tests/golden/M16-GAP-00015/metaball-local-exact-report.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00015", + "operation": "METABALL_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "sha256": "b4901e5c71f10b79a2061bf7599b43ff1b20b7df59f227aa78c1e66a38080b4f" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00015/metaball-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "metaballId": "metaball:WebGapMetaBall", + "pointCount": 2, + "elementHash": "66c3dfc873f22b9ae92ff3ad96eebe3d98e8f31a58a026315544180c67f430bb" + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00016" +} diff --git a/tests/golden/M16-GAP-00015/task-context.json b/tests/golden/M16-GAP-00015/task-context.json new file mode 100644 index 00000000..f847372f --- /dev/null +++ b/tests/golden/M16-GAP-00015/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00015", + "parentTask": "M16-GAP-00014", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:MetaBall data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:MetaBall", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00015.py -- tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00015", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00015" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend", + "tools/web/generated/M16-GAP-00015.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00015/", + "docs/status/M16-GAP-00015.md", + "tests/golden/M16-GAP-00015/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00016", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00015.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00014/manifest.json", + "parentStatus": "docs/status/M16-GAP-00014.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00015.md", + "tests/golden/M16-GAP-00014/manifest.json", + "docs/status/M16-GAP-00014.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00014", + "parentTask": "M16-GAP-00013", + "status": "done", + "nextTask": "M16-GAP-00015", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00014 Status", + "status: done ", + "task: Mesh data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Mesh geometry metadata for one quad: counts, triangulated indices, positions, UV layer identity and UV values.", + "evidence:", + "- `tools/web/generated/M16-GAP-00014.py` generated a retained `WebGapMesh` quad with four vertices, one face and one `WebGapUV` layer.", + "- Desktop report reopened after save and matched exactly: 4 vertices, 4 edges, 1 face, 4 corners, 2 triangles, deterministic positions/indices and UV values." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1739, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 428 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00015.md", + "bytes": 1739, + "lines": 38, + "tokens": 428 + }, + { + "path": "tests/golden/M16-GAP-00014/manifest.json", + "bytes": 2173, + "lines": 58, + "tokens": 544 + }, + { + "path": "docs/status/M16-GAP-00014.md", + "bytes": 1760, + "lines": 26, + "tokens": 440 + } + ], + "totalTokens": 1733, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00016/manifest.json b/tests/golden/M16-GAP-00016/manifest.json new file mode 100644 index 00000000..75c2ed6b --- /dev/null +++ b/tests/golden/M16-GAP-00016/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00016", + "parentTask": "M16-GAP-00015", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "NODETREE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00015/manifest.json", + "sha256": "641d43e8184dd710fb5dc5a7278e943c3f8bc70287abda6f5cb5afc5a56bbb7c" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "sha256": "7075a345a9991d456fc2c6cc68b3a836fc837dbfd99328173f0018b59e0e483c" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00016.py", + "sha256": "12033eb9f1ef9f09fe86135259382e7cc938928c23a89b637d39e8e36c51982e" + }, + "desktopChecker": { + "path": "tools/web/check-nodetree-desktop.py", + "sha256": "e0fa9c2dbe5f9877c00c33d83e5aa2407606a003163be086a082e631da3cd9a5" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "942362700a8e76db689a57004024b1042ac2b796a225f0b31a25b93dc78e490d" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00016/nodetree-desktop-report.json", + "sha256": "b1a6608a41fdbbaeb670dfc0222fbef3b6b73e3728add751564194dda1eb2924" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00016/nodetree-local-exact-report.json", + "sha256": "8df89df7ef013b8eed71c19e748eff6b7288772a10f139306a87cb2431eb26b3" + } + }, + "nextTask": "M16-GAP-00017" +} diff --git a/tests/golden/M16-GAP-00016/nodetree-desktop-report.json b/tests/golden/M16-GAP-00016/nodetree-desktop-report.json new file mode 100644 index 00000000..b7371a3e --- /dev/null +++ b/tests/golden/M16-GAP-00016/nodetree-desktop-report.json @@ -0,0 +1,38 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "fixtureSha256": "7075a345a9991d456fc2c6cc68b3a836fc837dbfd99328173f0018b59e0e483c", + "nodeTree": { + "id": "nodetree:WebGapNodeTreeMaterial", + "linkCount": 2, + "links": [ + [ + "ShaderNodeBsdfPrincipled", + "BSDF", + "ShaderNodeOutputMaterial", + "Surface" + ], + [ + "ShaderNodeRGB", + "Color", + "ShaderNodeBsdfPrincipled", + "Base Color" + ] + ], + "name": "Shader Nodetree", + "nodeNames": [ + "Material Output", + "Principled BSDF", + "WebGapRGB" + ], + "nodeTypes": [ + "ShaderNodeBsdfPrincipled", + "ShaderNodeOutputMaterial", + "ShaderNodeRGB" + ] + }, + "operation": "NODETREE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00016" +} diff --git a/tests/golden/M16-GAP-00016/nodetree-local-exact-report.json b/tests/golden/M16-GAP-00016/nodetree-local-exact-report.json new file mode 100644 index 00000000..3955c6b8 --- /dev/null +++ b/tests/golden/M16-GAP-00016/nodetree-local-exact-report.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00016", + "operation": "NODETREE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "sha256": "7075a345a9991d456fc2c6cc68b3a836fc837dbfd99328173f0018b59e0e483c" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00016/nodetree-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "nodeTreeId": "nodetree:WebGapNodeTreeMaterial", + "nodeCount": 3, + "linkCount": 2, + "shaderGraphHash": "0c983ebf5de333f8314784b3a05483d222c3808db825e606620fa6df64c45a60" + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00017" +} diff --git a/tests/golden/M16-GAP-00016/task-context.json b/tests/golden/M16-GAP-00016/task-context.json new file mode 100644 index 00000000..b5cf4571 --- /dev/null +++ b/tests/golden/M16-GAP-00016/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00016", + "parentTask": "M16-GAP-00015", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:NodeTree data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:NodeTree", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00016.py -- tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00016", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00016" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend", + "tools/web/generated/M16-GAP-00016.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00016/", + "docs/status/M16-GAP-00016.md", + "tests/golden/M16-GAP-00016/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00017", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00016.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00015/manifest.json", + "parentStatus": "docs/status/M16-GAP-00015.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00016.md", + "tests/golden/M16-GAP-00015/manifest.json", + "docs/status/M16-GAP-00015.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00015", + "parentTask": "M16-GAP-00014", + "status": "done", + "nextTask": "M16-GAP-00016", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00015 Status", + "status: done ", + "task: MetaBall data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 MetaBall element metadata: point count, element positions, radii and anisotropic scale values.", + "evidence:", + "- `tools/web/generated/M16-GAP-00015.py` generated one `WebGapMetaBall` data-block with two deterministic elements and a linked object.", + "- Desktop report reopened after save and matched exactly: two elements at `[-0.65, 0, 0.4]` and `[0.65, 0, 0.4]`, radii 0.75/0.55 and scales 1.1/0.9/1.2 and 0.8/1.05/0.95." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1739, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 428 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00016.md", + "bytes": 1739, + "lines": 38, + "tokens": 428 + }, + { + "path": "tests/golden/M16-GAP-00015/manifest.json", + "bytes": 2193, + "lines": 58, + "tokens": 549 + }, + { + "path": "docs/status/M16-GAP-00015.md", + "bytes": 1719, + "lines": 26, + "tokens": 430 + } + ], + "totalTokens": 1728, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00017/manifest.json b/tests/golden/M16-GAP-00017/manifest.json new file mode 100644 index 00000000..cf97f4e6 --- /dev/null +++ b/tests/golden/M16-GAP-00017/manifest.json @@ -0,0 +1,57 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00017", + "parentTask": "M16-GAP-00016", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "OBJECT_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00016/manifest.json", + "sha256": "8d66f1e936cb08b6991465c795c12e7fa65ac0b9ae166eceec5aada32162fb10" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "sha256": "527eefc6ea01671a21634a3191790a8228038dd72a0744b6f00969be048e36ef" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00017.py", + "sha256": "64bb9f488573946dcf7d2358bd5d5f540055bb2813942e98ed154da179cb201b" + }, + "desktopChecker": { + "path": "tools/web/check-object-desktop.py", + "sha256": "3cb263b0bd2606cdce38bd433f90d50e738e93bf482c9fd16217306efb1521c0" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "b4a5475d503e53f1405a5c3339d231947151b85f3b98e1072f811422d5385f99" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "3c2c69a66d60692049956530c2570db377e5d10838d0048aa4e0f3fb210f9c62" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "7d96e706de6b42f4372d937708600be150190ae593e214066a06d030bcac8b73" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "4a33528e8bd4d50956e741cba93ab0215350943c59f56b7c82e18df19f4ee450" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00017/object-desktop-report.json", + "sha256": "6c9b16af1d114b00df2711b095778eef239c27b55588063d68872434f08631fd" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00017/object-local-exact-report.json", + "sha256": "38fbe19a794e05d1a05c0df5de7fca919c229c179ac59c452df08cc0c827ca91" + } + }, + "nextTask": "M16-GAP-00018" +} diff --git a/tests/golden/M16-GAP-00017/object-desktop-report.json b/tests/golden/M16-GAP-00017/object-desktop-report.json new file mode 100644 index 00000000..d5a13847 --- /dev/null +++ b/tests/golden/M16-GAP-00017/object-desktop-report.json @@ -0,0 +1,32 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "fixtureSha256": "527eefc6ea01671a21634a3191790a8228038dd72a0744b6f00969be048e36ef", + "object": { + "id": "object:WebGapObject", + "location": [ + 1.25, + -2.5, + 3.75 + ], + "name": "WebGapObject", + "parent": null, + "rotationEuler": [ + 0.2, + -0.35, + 0.5 + ], + "scale": [ + 1.5, + 0.75, + 2.0 + ], + "selectable": true, + "type": "EMPTY", + "visible": true + }, + "operation": "OBJECT_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00017" +} diff --git a/tests/golden/M16-GAP-00017/object-local-exact-report.json b/tests/golden/M16-GAP-00017/object-local-exact-report.json new file mode 100644 index 00000000..309227a7 --- /dev/null +++ b/tests/golden/M16-GAP-00017/object-local-exact-report.json @@ -0,0 +1,34 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00017", + "operation": "OBJECT_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "sha256": "527eefc6ea01671a21634a3191790a8228038dd72a0744b6f00969be048e36ef" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00017/object-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:WebGapObject", + "type": "EMPTY", + "translation": [ + 1.25, + -2.5, + 3.75 + ], + "scale": [ + 1.5, + 0.75, + 2 + ] + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00018" +} diff --git a/tests/golden/M16-GAP-00017/task-context.json b/tests/golden/M16-GAP-00017/task-context.json new file mode 100644 index 00000000..1ba37ca5 --- /dev/null +++ b/tests/golden/M16-GAP-00017/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00017", + "parentTask": "M16-GAP-00016", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Object data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Object", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00017.py -- tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00017", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00017" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00017-datablock-Object.blend", + "tools/web/generated/M16-GAP-00017.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00017/", + "docs/status/M16-GAP-00017.md", + "tests/golden/M16-GAP-00017/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00018", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00017.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00016/manifest.json", + "parentStatus": "docs/status/M16-GAP-00016.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00017.md", + "tests/golden/M16-GAP-00016/manifest.json", + "docs/status/M16-GAP-00016.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00016", + "parentTask": "M16-GAP-00015", + "status": "done", + "nextTask": "M16-GAP-00017", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00016 Status", + "status: done ", + "task: NodeTree data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 shader NodeTree observability through a retained Material: RGB -> Principled -> Material Output nodes, links and the reader's stable shader graph hash.", + "evidence:", + "- `tools/web/generated/M16-GAP-00016.py` generated `WebGapNodeTreeMaterial` with three nodes and two links, retained by a minimal triangle object.", + "- Desktop report reopened after save and matched exactly: ShaderNodeRGB, ShaderNodeBsdfPrincipled and ShaderNodeOutputMaterial with two deterministic links." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1729, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 426 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 1969, + "lines": 41, + "tokens": 321 + }, + { + "path": "docs/tasks/M16-GAP-00017.md", + "bytes": 1729, + "lines": 38, + "tokens": 426 + }, + { + "path": "tests/golden/M16-GAP-00016/manifest.json", + "bytes": 2193, + "lines": 58, + "tokens": 549 + }, + { + "path": "docs/status/M16-GAP-00016.md", + "bytes": 1823, + "lines": 26, + "tokens": 456 + } + ], + "totalTokens": 1752, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00018/manifest.json b/tests/golden/M16-GAP-00018/manifest.json new file mode 100644 index 00000000..cdb3b887 --- /dev/null +++ b/tests/golden/M16-GAP-00018/manifest.json @@ -0,0 +1,61 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00018", + "parentTask": "M16-GAP-00017", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "PARTICLE_SETTINGS_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": { + "path": "tests/golden/M16-GAP-00017/manifest.json", + "sha256": "f6e791e0e3df1e13ed6e85fa007c2d88b3aea9bd56e85d345a80e2cc6a5e01d3" + }, + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "sha256": "1a51117f3225e6fb1aa98fd135fc39bbfb9444f741f89956c52bc3e0252fc6c0" + }, + "generator": { + "path": "tools/web/generated/M16-GAP-00018.py", + "sha256": "c2b7b9c33e92952e9f10ca08b854b4bc0603350aa66f0277d08af4513d18d45e" + }, + "desktopChecker": { + "path": "tools/web/check-particle-settings-desktop.py", + "sha256": "d49ba0b987adf412c1692819b041a35905330f2fa633464c9425932450419afa" + }, + "webChecker": { + "path": "tools/web/check-generated-gap.mjs", + "sha256": "70356fe4075db1614907a4da3bfb9fb659b17a76d34f48f4811a1ca0f32d9fad" + }, + "reader": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "sha256": "bc8083ba6ebc4374ad10be004d2ca0a18919f47368c3171485f3bc7b75934e38" + }, + "api": { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_api.cpp", + "sha256": "7d84b022e0ae7fb76989054c55daee0491045dfbd153d7fae49109370a8cdf6f" + }, + "protocol": { + "path": "web/protocol/scene-ir.ts", + "sha256": "330b1219735fe881dc5bf96ce34c1ce8fc6df2e16c5672c67345deffb015563f" + }, + "wasm": { + "path": "web/app/src/vendor/blender/web_engine.wasm", + "sha256": "11fd301ef1823d37aaedad00bd9946e13876c517660852bd20f574d12e815d97" + }, + "wasmJs": { + "path": "web/app/src/vendor/blender/web_engine.js", + "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed" + }, + "desktopReport": { + "path": "tests/golden/M16-GAP-00018/particle-settings-desktop-report.json", + "sha256": "5d1c855ee65c7dc8f715341ed0a2b1269aa1a2f6e3ecde5ca590f393af3042eb" + }, + "webReport": { + "path": "tests/golden/M16-GAP-00018/particle-settings-local-exact-report.json", + "sha256": "fb3eb8a193cbbf8ee8b98457042d560977e309ba1496903abf638e93c7641b6f" + } + }, + "nextTask": "M16-GAP-00019" +} diff --git a/tests/golden/M16-GAP-00018/particle-settings-desktop-report.json b/tests/golden/M16-GAP-00018/particle-settings-desktop-report.json new file mode 100644 index 00000000..e5dba111 --- /dev/null +++ b/tests/golden/M16-GAP-00018/particle-settings-desktop-report.json @@ -0,0 +1,23 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "fixtureSha256": "1a51117f3225e6fb1aa98fd135fc39bbfb9444f741f89956c52bc3e0252fc6c0", + "operation": "PARTICLE_SETTINGS_DATABLOCK_DESKTOP", + "particleSettings": { + "distribution": 0, + "drawSize": 0.25, + "end": 96.0, + "from": 0, + "id": "particle-settings:WebGapParticleSettings", + "lifetime": 32.0, + "name": "WebGapParticleSettings", + "physicsType": 0, + "size": 0.125, + "start": 4.0, + "totalParticles": 128, + "type": 0 + }, + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00018" +} diff --git a/tests/golden/M16-GAP-00018/particle-settings-local-exact-report.json b/tests/golden/M16-GAP-00018/particle-settings-local-exact-report.json new file mode 100644 index 00000000..b4d31b47 --- /dev/null +++ b/tests/golden/M16-GAP-00018/particle-settings-local-exact-report.json @@ -0,0 +1,35 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00018", + "operation": "PARTICLE_SETTINGS_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "sha256": "1a51117f3225e6fb1aa98fd135fc39bbfb9444f741f89956c52bc3e0252fc6c0" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00018/particle-settings-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "particleSettingsId": "particle-settings:WebGapParticleSettings", + "fields": { + "type": 0, + "from": 0, + "distribution": 0, + "physicsType": 0, + "totalParticles": 128, + "start": 4, + "end": 96, + "lifetime": 32, + "size": 0.125, + "drawSize": 0.25 + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00019" +} diff --git a/tests/golden/M16-GAP-00018/task-context.json b/tests/golden/M16-GAP-00018/task-context.json new file mode 100644 index 00000000..b2cc27c8 --- /dev/null +++ b/tests/golden/M16-GAP-00018/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00018", + "parentTask": "M16-GAP-00017", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:ParticleSettings data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:ParticleSettings", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00018.py -- tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00018", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00018" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend", + "tools/web/generated/M16-GAP-00018.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00018/", + "docs/status/M16-GAP-00018.md", + "tests/golden/M16-GAP-00018/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00019", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00018.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00017/manifest.json", + "parentStatus": "docs/status/M16-GAP-00017.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00018.md", + "tests/golden/M16-GAP-00017/manifest.json", + "docs/status/M16-GAP-00017.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00017", + "parentTask": "M16-GAP-00016", + "status": "done", + "nextTask": "M16-GAP-00018", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00017 Status", + "status: done ", + "task: Object data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Empty Object metadata: type, visibility/selectability, translation, Euler rotation, scale and parent relation.", + "evidence:", + "- `tools/web/generated/M16-GAP-00017.py` generated a data-free `WebGapObject` Empty with deterministic transform values.", + "- Desktop report reopened after save and matched exactly: EMPTY, visible/selectable, translation `[1.25, -2.5, 3.75]`, rotation `[0.2, -0.35, 0.5]`, scale `[1.5, 0.75, 2]`, no parent." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1779, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 438 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 359 + }, + { + "path": "docs/tasks/M16-GAP-00018.md", + "bytes": 1779, + "lines": 38, + "tokens": 438 + }, + { + "path": "tests/golden/M16-GAP-00017/manifest.json", + "bytes": 2183, + "lines": 58, + "tokens": 546 + }, + { + "path": "docs/status/M16-GAP-00017.md", + "bytes": 1712, + "lines": 26, + "tokens": 428 + } + ], + "totalTokens": 1771, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00019/manifest.json b/tests/golden/M16-GAP-00019/manifest.json new file mode 100644 index 00000000..cf5ec206 --- /dev/null +++ b/tests/golden/M16-GAP-00019/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00019", + "parentTask": "M16-GAP-00018", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "POINT_CLOUD_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00018/manifest.json", "sha256": "4713266b567a14e1b9a7c2cffeb7806e054742b83684e82bfa592a0b900c5533"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", "sha256": "57ef80323ae70ce21842c00b3777e8ef484b7e332a6645c165fd5f029a522089"}, + "generator": {"path": "tools/web/generated/M16-GAP-00019.py", "sha256": "36ead922241d5372ba4ae5c4656d449faeb62bb8958b4e96231c09b6b316fa13"}, + "desktopChecker": {"path": "tools/web/check-pointcloud-desktop.py", "sha256": "7223e0684f4bb8559228ffdd118b69dfd31c42959643ed17b885f13bb57eb400"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "a1295ac16691ba55c7ca803030ac304ba0cbca7876695b0bf30658b29547c509"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "bc8083ba6ebc4374ad10be004d2ca0a18919f47368c3171485f3bc7b75934e38"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "330b1219735fe881dc5bf96ce34c1ce8fc6df2e16c5672c67345deffb015563f"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "11fd301ef1823d37aaedad00bd9946e13876c517660852bd20f574d12e815d97"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00019/pointcloud-desktop-report.json", "sha256": "c3c874f8f5e95c97f2862d6b2c4711ac78a90f3a5de289bfdb9a5ae0459dc1d7"}, + "webReport": {"path": "tests/golden/M16-GAP-00019/pointcloud-local-exact-report.json", "sha256": "e304b3dd36b08a43307f1dc2a70a14cb6b29214d324b18faf8d8225f7342b23d"} + }, + "nextTask": "M16-GAP-00020" +} diff --git a/tests/golden/M16-GAP-00019/pointcloud-desktop-report.json b/tests/golden/M16-GAP-00019/pointcloud-desktop-report.json new file mode 100644 index 00000000..0d3fa9ab --- /dev/null +++ b/tests/golden/M16-GAP-00019/pointcloud-desktop-report.json @@ -0,0 +1,34 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", + "fixtureSha256": "57ef80323ae70ce21842c00b3777e8ef484b7e332a6645c165fd5f029a522089", + "operation": "POINT_CLOUD_DATABLOCK_DESKTOP", + "pointCloud": { + "controlPoints": [ + -1.0, + 0.0, + 0.0, + 0.0, + 1.0, + 0.5, + 1.0, + 0.0, + 1.0, + 0.0, + -1.0, + 1.5 + ], + "id": "pointcloud:WebGapPointCloud", + "name": "WebGapPointCloud", + "pointCount": 4, + "radii": [ + 0.25, + 0.5, + 0.75, + 1.0 + ] + }, + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00019" +} diff --git a/tests/golden/M16-GAP-00019/pointcloud-local-exact-report.json b/tests/golden/M16-GAP-00019/pointcloud-local-exact-report.json new file mode 100644 index 00000000..0cd83312 --- /dev/null +++ b/tests/golden/M16-GAP-00019/pointcloud-local-exact-report.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00019", + "operation": "POINT_CLOUD_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", + "sha256": "57ef80323ae70ce21842c00b3777e8ef484b7e332a6645c165fd5f029a522089" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00019/pointcloud-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "pointCloudId": "pointcloud:WebGapPointCloud", + "pointCount": 4, + "geometryStatus": "available", + "pointHash": "8ebdf7eaacf3144710d905ad4e496593869f0f151bcb7b142bd462b0dad21c81", + "radiusHash": "55e896f6bf2ec386905ac6241192bb8e85f4be3965e8fcc2b068c39eb1930bf6" + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00020" +} diff --git a/tests/golden/M16-GAP-00019/task-context.json b/tests/golden/M16-GAP-00019/task-context.json new file mode 100644 index 00000000..d79e554f --- /dev/null +++ b/tests/golden/M16-GAP-00019/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00019", + "parentTask": "M16-GAP-00018", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:PointCloud data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:PointCloud", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00019.py -- tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00019", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00019" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend", + "tools/web/generated/M16-GAP-00019.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00019/", + "docs/status/M16-GAP-00019.md", + "tests/golden/M16-GAP-00019/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00020", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00019.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00018/manifest.json", + "parentStatus": "docs/status/M16-GAP-00018.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00019.md", + "tests/golden/M16-GAP-00018/manifest.json", + "docs/status/M16-GAP-00018.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00018", + "parentTask": "M16-GAP-00017", + "status": "done", + "nextTask": "M16-GAP-00019", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00018 Status", + "status: done ", + "task: ParticleSettings data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 ParticleSettings identity and bounded emission fields: type, source, distribution, physics, count, frame range, lifetime, particle size and draw size.", + "evidence:", + "- `tools/web/generated/M16-GAP-00018.py` generated a minimal retained `WebGapParticleSettings` data-block without a particle-system modifier, avoiding unrelated modifier state while preserving the exact RNA data.", + "- Desktop report reopened after save and matched exactly: emitter type, face source, JIT distribution, Newton physics, 128 particles, frames 4-96, lifetime 32, size 0.125 and draw size 0.25." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1749, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 431 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 359 + }, + { + "path": "docs/tasks/M16-GAP-00019.md", + "bytes": 1749, + "lines": 38, + "tokens": 431 + }, + { + "path": "tests/golden/M16-GAP-00018/manifest.json", + "bytes": 2416, + "lines": 62, + "tokens": 604 + }, + { + "path": "docs/status/M16-GAP-00018.md", + "bytes": 1978, + "lines": 26, + "tokens": 495 + } + ], + "totalTokens": 1889, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00020/manifest.json b/tests/golden/M16-GAP-00020/manifest.json new file mode 100644 index 00000000..2a413f88 --- /dev/null +++ b/tests/golden/M16-GAP-00020/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00020", + "parentTask": "M16-GAP-00019", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "SCENE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00019/manifest.json", "sha256": "cbd811536b02f195f1370a85fd2c13788effe1fb11375776c118390a761c9f28"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", "sha256": "c12826c7a71f092ee8dc3c32495be295dae95f1f96e6b8310476893c7c76a81b"}, + "generator": {"path": "tools/web/generated/M16-GAP-00020.py", "sha256": "51890c98ae84cd4751896e0e84b9b63d5caa3fa58d47bba6f4074489b88dc24e"}, + "desktopChecker": {"path": "tools/web/check-scene-desktop.py", "sha256": "ada4022a310510ffe37ccd7ef31a6bab8b37dfbd7a0b914f40fe379ba13db083"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "092661081aefd4bd63ecb510bfe3cd4c34f3701e55ca2979e593f42c973a7b2a"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "bc8083ba6ebc4374ad10be004d2ca0a18919f47368c3171485f3bc7b75934e38"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "330b1219735fe881dc5bf96ce34c1ce8fc6df2e16c5672c67345deffb015563f"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "11fd301ef1823d37aaedad00bd9946e13876c517660852bd20f574d12e815d97"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00020/scene-desktop-report.json", "sha256": "fc9fdf2a37f36327e7456d3c17dcfd240b67ce27d9d2f0861fde5db237b2675d"}, + "webReport": {"path": "tests/golden/M16-GAP-00020/scene-local-exact-report.json", "sha256": "d964c61c0717865a42574c28d5e4fffdcb45c3c962e9bce4608c5f9438828504"} + }, + "nextTask": "M16-GAP-00021" +} diff --git a/tests/golden/M16-GAP-00020/scene-desktop-report.json b/tests/golden/M16-GAP-00020/scene-desktop-report.json new file mode 100644 index 00000000..641cbb1c --- /dev/null +++ b/tests/golden/M16-GAP-00020/scene-desktop-report.json @@ -0,0 +1,21 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", + "fixtureSha256": "c12826c7a71f092ee8dc3c32495be295dae95f1f96e6b8310476893c7c76a81b", + "operation": "SCENE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "scene": { + "fps": 30.0, + "fpsBase": 1.0, + "frameCurrent": 48, + "frameEnd": 180, + "frameStart": 12, + "id": "scene:WebGapScene", + "name": "WebGapScene", + "renderEngine": "BLENDER_EEVEE", + "unitScale": 0.25, + "unitSystem": 1 + }, + "schemaVersion": 1, + "task": "M16-GAP-00020" +} diff --git a/tests/golden/M16-GAP-00020/scene-local-exact-report.json b/tests/golden/M16-GAP-00020/scene-local-exact-report.json new file mode 100644 index 00000000..cc77e10d --- /dev/null +++ b/tests/golden/M16-GAP-00020/scene-local-exact-report.json @@ -0,0 +1,31 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00020", + "operation": "SCENE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", + "sha256": "c12826c7a71f092ee8dc3c32495be295dae95f1f96e6b8310476893c7c76a81b" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00020/scene-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "sceneId": "scene:WebGapScene", + "frame": { + "current": 48, + "end": 180, + "start": 12 + }, + "renderEngine": "BLENDER_EEVEE", + "unitSystem": 1, + "unitScale": 0.25 + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00021" +} diff --git a/tests/golden/M16-GAP-00020/task-context.json b/tests/golden/M16-GAP-00020/task-context.json new file mode 100644 index 00000000..376cf8aa --- /dev/null +++ b/tests/golden/M16-GAP-00020/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00020", + "parentTask": "M16-GAP-00019", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Scene data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Scene", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00020.py -- tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00020", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00020" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend", + "tools/web/generated/M16-GAP-00020.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00020/", + "docs/status/M16-GAP-00020.md", + "tests/golden/M16-GAP-00020/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00021", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00020.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00019/manifest.json", + "parentStatus": "docs/status/M16-GAP-00019.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00020.md", + "tests/golden/M16-GAP-00019/manifest.json", + "docs/status/M16-GAP-00019.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00019", + "parentTask": "M16-GAP-00018", + "status": "done", + "nextTask": "M16-GAP-00020", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00019 Status", + "status: done ", + "task: PointCloud data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 PointCloud geometry with four deterministic points, position attributes and radii.", + "evidence:", + "- `tools/web/generated/M16-GAP-00019.py` generated a retained `WebGapPointCloud` through Blender's point-cloud conversion path with four deterministic points and radius values `[0.25, 0.5, 0.75, 1.0]`.", + "- Desktop report reopened after save and matched exactly: four points and all control-point/radius values." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1724, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 424 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 359 + }, + { + "path": "docs/tasks/M16-GAP-00020.md", + "bytes": 1724, + "lines": 38, + "tokens": 424 + }, + { + "path": "tests/golden/M16-GAP-00019/manifest.json", + "bytes": 2006, + "lines": 25, + "tokens": 502 + }, + { + "path": "docs/status/M16-GAP-00019.md", + "bytes": 1788, + "lines": 26, + "tokens": 447 + } + ], + "totalTokens": 1732, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00021/manifest.json b/tests/golden/M16-GAP-00021/manifest.json new file mode 100644 index 00000000..93edd38e --- /dev/null +++ b/tests/golden/M16-GAP-00021/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00021", + "parentTask": "M16-GAP-00020", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "SCREEN_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00020/manifest.json", "sha256": "4cd3a4de64fbb95386f17e096a50622c3f56380635881e2539c10d65db820b1f"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", "sha256": "0975c534e78b6a05c7c10adc7313cb611a3350cc3c7f6e9bfd4013c334b9f376"}, + "generator": {"path": "tools/web/generated/M16-GAP-00021.py", "sha256": "f6a97289626552e3e319fe72f3932beb610289c7da8710c0d4219312b0566c1e"}, + "desktopChecker": {"path": "tools/web/check-screen-desktop.py", "sha256": "16ba526404558472d2dacc48e6f51440031556483dfeab9b52a43f69a3d5644e"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "dbd2d79fd5dba004e91c79eafec46a1e520804ea447aa1b594256cee801cd88a"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "bc8083ba6ebc4374ad10be004d2ca0a18919f47368c3171485f3bc7b75934e38"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "330b1219735fe881dc5bf96ce34c1ce8fc6df2e16c5672c67345deffb015563f"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "11fd301ef1823d37aaedad00bd9946e13876c517660852bd20f574d12e815d97"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00021/screen-desktop-report.json", "sha256": "41a5d58883238d89e4e6ed3805b452bc165632b63e0065109529de3c0e230ecd"}, + "webReport": {"path": "tests/golden/M16-GAP-00021/screen-local-exact-report.json", "sha256": "792206b5b046411d921b3b916d2b76222aab39050df8028a64c39437e285023c"} + }, + "nextTask": "M16-GAP-00022" +} diff --git a/tests/golden/M16-GAP-00021/screen-desktop-report.json b/tests/golden/M16-GAP-00021/screen-desktop-report.json new file mode 100644 index 00000000..b5239d39 --- /dev/null +++ b/tests/golden/M16-GAP-00021/screen-desktop-report.json @@ -0,0 +1,21 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", + "fixtureSha256": "0975c534e78b6a05c7c10adc7313cb611a3350cc3c7f6e9bfd4013c334b9f376", + "operation": "SCREEN_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "screen": { + "areaCount": 4, + "editors": [ + "DOPESHEET_EDITOR", + "OUTLINER", + "PROPERTIES", + "VIEW_3D" + ], + "id": "screen:WebGapScreen", + "name": "WebGapScreen", + "regionCount": 18 + }, + "task": "M16-GAP-00021" +} diff --git a/tests/golden/M16-GAP-00021/screen-local-exact-report.json b/tests/golden/M16-GAP-00021/screen-local-exact-report.json new file mode 100644 index 00000000..5ecbd2e1 --- /dev/null +++ b/tests/golden/M16-GAP-00021/screen-local-exact-report.json @@ -0,0 +1,31 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00021", + "operation": "SCREEN_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", + "sha256": "0975c534e78b6a05c7c10adc7313cb611a3350cc3c7f6e9bfd4013c334b9f376" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00021/screen-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "workflowStatus": "AVAILABLE", + "workspaceId": "workspace:Layout", + "areaCount": 4, + "editorTypes": [ + "DOPE_SHEET", + "OUTLINER", + "PROPERTIES", + "VIEW_3D" + ] + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00022" +} diff --git a/tests/golden/M16-GAP-00021/task-context.json b/tests/golden/M16-GAP-00021/task-context.json new file mode 100644 index 00000000..92f069fe --- /dev/null +++ b/tests/golden/M16-GAP-00021/task-context.json @@ -0,0 +1,124 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00021", + "parentTask": "M16-GAP-00020", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Screen data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Screen", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00021.py -- tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00021", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00021" + ], + "inputPaths": [ + "tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend", + "tools/web/generated/M16-GAP-00021.py", + "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "tools/web/check-generated-gap.mjs", + "tests/golden/M16-GAP-00021/", + "docs/status/M16-GAP-00021.md", + "tests/golden/M16-GAP-00021/manifest.json" + ], + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00022", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00021.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00020/manifest.json", + "parentStatus": "docs/status/M16-GAP-00020.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00021.md", + "tests/golden/M16-GAP-00020/manifest.json", + "docs/status/M16-GAP-00020.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00020", + "parentTask": "M16-GAP-00019", + "status": "done", + "nextTask": "M16-GAP-00021", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00020 Status", + "status: done ", + "task: Scene data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 Scene identity and bounded timeline/render/unit metadata: current/start/end frames, FPS, render engine and unit scale.", + "evidence:", + "- `tools/web/generated/M16-GAP-00020.py` generated `WebGapScene` with frame 48 in range 12-180, 30 FPS, Eevee render and metric unit scale 0.25.", + "- Desktop report reopened after save and matched exactly for scene identity, timeline, render engine and unit metadata." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1729, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 426 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 359 + }, + { + "path": "docs/tasks/M16-GAP-00021.md", + "bytes": 1729, + "lines": 38, + "tokens": 426 + }, + { + "path": "tests/golden/M16-GAP-00020/manifest.json", + "bytes": 1980, + "lines": 25, + "tokens": 495 + }, + { + "path": "docs/status/M16-GAP-00020.md", + "bytes": 1724, + "lines": 26, + "tokens": 431 + } + ], + "totalTokens": 1711, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00022/manifest.json b/tests/golden/M16-GAP-00022/manifest.json new file mode 100644 index 00000000..b23ce1af --- /dev/null +++ b/tests/golden/M16-GAP-00022/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00022", + "parentTask": "M16-GAP-00021", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "SOUND_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00021/manifest.json", "sha256": "e56411fd47be3a03814560e9b8e1d6ece0e5e5a50cbdb44256e20e0976daea54"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", "sha256": "42785a635a7ac560a01e00135555c31e20a60c454ffb62a466da25ddbe3b5c39"}, + "generator": {"path": "tools/web/generated/M16-GAP-00022.py", "sha256": "10ef16727dfee1c69ea7e6b48f151016cc02a18a6586c478c286be2ed0c7a3ea"}, + "desktopChecker": {"path": "tools/web/check-sound-desktop.py", "sha256": "aeeebdac9d14740843cc703150143087b7985138372ac1278fd3894e850c1ab7"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "a9fc6a8b9fbe567a20b68b794f57eca1a383e6637146e5513d7f79a8f7b"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "4651844c5e9c4e00ee1186f102a78d86d184df8980409d73825ee2449e25eb77"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "841b33000ca9b1bca24a029a1a5d82afc653189f8209865a66bdfa58716833a7"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "1e01c786313bd4b20748a2eb474c350c9b9ab1a0a216f2c6362405a9fc20a5da"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "1e01c786313bd4b20748a2eb474c350c9b9ab1a0a216f2c6362405a9fc20a5da"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00022/sound-desktop-report.json", "sha256": "cb23ace7920d6762f931296701a596f3453ccfa7e966447d0efa198b92d65a69"}, + "webReport": {"path": "tests/golden/M16-GAP-00022/sound-local-exact-report.json", "sha256": "741b67484c81c156c51b5b88e52f32d5e0114292dcbe689c641d2670cd4e82bd"} + }, + "nextTask": "M16-GAP-00023" +} diff --git a/tests/golden/M16-GAP-00022/sound-desktop-report.json b/tests/golden/M16-GAP-00022/sound-desktop-report.json new file mode 100644 index 00000000..1f394e77 --- /dev/null +++ b/tests/golden/M16-GAP-00022/sound-desktop-report.json @@ -0,0 +1,19 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", + "fixtureSha256": "42785a635a7ac560a01e00135555c31e20a60c454ffb62a466da25ddbe3b5c39", + "operation": "SOUND_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "sound": { + "audioChannels": 1, + "id": "sound:WebGapSound", + "name": "WebGapSound", + "packed": false, + "pitch": 0.0, + "sampleRate": 8000, + "sourcePath": "//WebGapSound.wav", + "volume": 0.0 + }, + "task": "M16-GAP-00022" +} diff --git a/tests/golden/M16-GAP-00022/sound-local-exact-report.json b/tests/golden/M16-GAP-00022/sound-local-exact-report.json new file mode 100644 index 00000000..2a9b509e --- /dev/null +++ b/tests/golden/M16-GAP-00022/sound-local-exact-report.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00022", + "operation": "SOUND_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", + "sha256": "42785a635a7ac560a01e00135555c31e20a60c454ffb62a466da25ddbe3b5c39" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00022/sound-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "soundId": "sound:WebGapSound", + "sourcePath": "//WebGapSound.wav", + "packed": false, + "volume": 0, + "pitch": 0, + "audioChannels": 1, + "sampleRate": 8000 + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00023" +} diff --git a/tests/golden/M16-GAP-00022/task-context.json b/tests/golden/M16-GAP-00022/task-context.json new file mode 100644 index 00000000..5d064fb5 --- /dev/null +++ b/tests/golden/M16-GAP-00022/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00022", + "parentTask": "M16-GAP-00021", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Sound data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Sound", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00022.py -- tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00022", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00022" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00022.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6333, + "contextRemainingTokens": 1582 + }, + "source": { + "bytes": 7667, + "tokens": 1918 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00022.py", + "bytes": 762, + "tokens": 191 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", + "bytes": 85859, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 216980, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 80795, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00022/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00022.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00022/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 762, + "tokens": 191 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00023", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00022.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00021/manifest.json", + "parentStatus": "docs/status/M16-GAP-00021.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00022.md", + "tests/golden/M16-GAP-00021/manifest.json", + "docs/status/M16-GAP-00021.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00021", + "parentTask": "M16-GAP-00020", + "status": "done", + "nextTask": "M16-GAP-00022", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00021 Status", + "status: done ", + "task: Screen data-block LOCAL_EXACT slice ", + "updated: 2026-08-19 America/New_York", + "scope: Blender 5.2 `bScreen` identity and bounded editor layout observability through the linked editor workflow: four areas, editor types and regions.", + "evidence:", + "- `tools/web/generated/M16-GAP-00021.py` renamed the factory startup screen to `WebGapScreen`, preserving its deterministic four-area layout.", + "- Desktop report reopened after save and matched exactly: `screen:WebGapScreen`, four areas, `VIEW_3D`, `OUTLINER`, `PROPERTIES`, `DOPESHEET_EDITOR`, and 18 regions." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1724, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 431 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00022.md", + "bytes": 1724, + "lines": 38, + "tokens": 431 + }, + { + "path": "tests/golden/M16-GAP-00021/manifest.json", + "bytes": 1985, + "lines": 25, + "tokens": 497 + }, + { + "path": "docs/status/M16-GAP-00021.md", + "bytes": 1790, + "lines": 26, + "tokens": 448 + } + ], + "sourceTokens": 1918, + "evidenceFiles": 1, + "evidenceBytes": 762, + "evidenceTokens": 191, + "totalTokens": 2109, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00023/manifest.json b/tests/golden/M16-GAP-00023/manifest.json new file mode 100644 index 00000000..cc98a6f1 --- /dev/null +++ b/tests/golden/M16-GAP-00023/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00023", + "parentTask": "M16-GAP-00022", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "SPEAKER_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00022/manifest.json", "sha256": "fac4a48e35b052acec9e50a5b26c801e532a1faa80185eda477dfa8a05f8dec3"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", "sha256": "6e422e16f6e020af7ab0a6f3fad3c721b42c924c8a0392bc98546c3f39ee9d23"}, + "generator": {"path": "tools/web/generated/M16-GAP-00023.py", "sha256": "7bb8465ba094c9f7edbfbb66fd9f6d8b0a2e2b955d5fb990313daea09adbd22c"}, + "desktopChecker": {"path": "tools/web/check-speaker-desktop.py", "sha256": "4f2b6e3359aeba90754ade475f1683acccc8d2f44a75552c3b04f79a0ddf13d5"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "8db1897b073b8a995e70747daabd11e52c4e235a7f45d4fb3b6f93df642b8bd1"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "dda3f81b178856faf5d05a3e84d4820928e35bda66a47cdf52a55b443f50f015"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "abbc02872f89bfd2e488c3b4c4e01c69a1e366bdfa3871e8564f1599b05d784e"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "76264df82ce5f21d6b3af2514bda865f902f8485be37cffa74145f2af387e5fd"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "76264df82ce5f21d6b3af2514bda865f902f8485be37cffa74145f2af387e5fd"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00023/speaker-desktop-report.json", "sha256": "8ee6e52568f2c37098a8f64983f90243b2df69df1c16a0c4eaae855a7e9fad9d"}, + "webReport": {"path": "tests/golden/M16-GAP-00023/speaker-local-exact-report.json", "sha256": "7d48447d03e39e5e29f41bf18a95040c5436ed73229cee1bdc32e09f7aae594d"} + }, + "nextTask": "M16-GAP-00024" +} diff --git a/tests/golden/M16-GAP-00023/speaker-desktop-report.json b/tests/golden/M16-GAP-00023/speaker-desktop-report.json new file mode 100644 index 00000000..b5abc63e --- /dev/null +++ b/tests/golden/M16-GAP-00023/speaker-desktop-report.json @@ -0,0 +1,24 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", + "fixtureSha256": "6e422e16f6e020af7ab0a6f3fad3c721b42c924c8a0392bc98546c3f39ee9d23", + "operation": "SPEAKER_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "speaker": { + "attenuation": 0.75, + "coneAngleInner": 120.0, + "coneAngleOuter": 270.0, + "coneVolumeOuter": 0.3499999940395355, + "distanceMax": 12.5, + "distanceReference": 2.25, + "id": "speaker:WebGapSpeaker", + "name": "WebGapSpeaker", + "pitch": 1.100000023841858, + "soundId": "sound:WebGapSpeakerSound", + "volume": 0.6499999761581421, + "volumeMax": 0.8500000238418579, + "volumeMin": 0.15000000596046448 + }, + "task": "M16-GAP-00023" +} diff --git a/tests/golden/M16-GAP-00023/speaker-local-exact-report.json b/tests/golden/M16-GAP-00023/speaker-local-exact-report.json new file mode 100644 index 00000000..21df5743 --- /dev/null +++ b/tests/golden/M16-GAP-00023/speaker-local-exact-report.json @@ -0,0 +1,34 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00023", + "operation": "SPEAKER_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", + "sha256": "6e422e16f6e020af7ab0a6f3fad3c721b42c924c8a0392bc98546c3f39ee9d23" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00023/speaker-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "speakerId": "speaker:WebGapSpeaker", + "soundId": "sound:WebGapSpeakerSound", + "volumeMax": 0.8500000238418579, + "volumeMin": 0.15000000596046448, + "distanceMax": 12.5, + "distanceReference": 2.25, + "attenuation": 0.75, + "coneAngleOuter": 270, + "coneAngleInner": 120, + "coneVolumeOuter": 0.3499999940395355, + "volume": 0.6499999761581421, + "pitch": 1.100000023841858 + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00024" +} diff --git a/tests/golden/M16-GAP-00023/task-context.json b/tests/golden/M16-GAP-00023/task-context.json new file mode 100644 index 00000000..2107b9c9 --- /dev/null +++ b/tests/golden/M16-GAP-00023/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00023", + "parentTask": "M16-GAP-00022", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Speaker data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Speaker", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00023.py -- tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00023", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00023" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00023.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6069, + "contextRemainingTokens": 1516 + }, + "source": { + "bytes": 7931, + "tokens": 1984 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00023.py", + "bytes": 1162, + "tokens": 291 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend", + "bytes": 85935, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 218721, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 84337, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00023/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00023.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00023/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1162, + "tokens": 291 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00024", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00023.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00022/manifest.json", + "parentStatus": "docs/status/M16-GAP-00022.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00023.md", + "tests/golden/M16-GAP-00022/manifest.json", + "docs/status/M16-GAP-00022.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00022", + "parentTask": "M16-GAP-00021", + "status": "done", + "nextTask": "M16-GAP-00023", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00022 Status", + "status: done ", + "task: Sound data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Blender 5.2 `bSound` identity and bounded sound resource fields through the same generated fixture in desktop and WASM/Main: source path, packing state, volume, pitch, channel count and sample rate.", + "evidence:", + "- `tools/web/generated/M16-GAP-00022.py` deterministically creates `sound:WebGapSound` from the repository WAV fixture and saves the Blend fixture.", + "- Desktop reopen report matches exactly: `sound:WebGapSound`, `//WebGapSound.wav`, unpacked, volume/pitch `0.0`, one audio channel and `8000` Hz." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1734, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 434 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00023.md", + "bytes": 1734, + "lines": 38, + "tokens": 434 + }, + { + "path": "tests/golden/M16-GAP-00022/manifest.json", + "bytes": 2130, + "lines": 26, + "tokens": 533 + }, + { + "path": "docs/status/M16-GAP-00022.md", + "bytes": 1899, + "lines": 26, + "tokens": 475 + } + ], + "sourceTokens": 1984, + "evidenceFiles": 1, + "evidenceBytes": 1162, + "evidenceTokens": 291, + "totalTokens": 2275, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00024/manifest.json b/tests/golden/M16-GAP-00024/manifest.json new file mode 100644 index 00000000..f0ce7d6d --- /dev/null +++ b/tests/golden/M16-GAP-00024/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00024", + "parentTask": "M16-GAP-00023", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "TEXT_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00023/manifest.json", "sha256": "f845a8578a2ce9f106f0ca8ea02ef6ccddca87086e779eb7ddcf9fef5b8934f2"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", "sha256": "7999f758dfbf7b5984f16464d1e5346d806c54c83ca68a583df54942c5e3b7d3"}, + "generator": {"path": "tools/web/generated/M16-GAP-00024.py", "sha256": "85a16b7ebb4b00dffdc9277d11780b744267e0c789e75844b2749517c23e8ebd"}, + "desktopChecker": {"path": "tools/web/check-text-desktop.py", "sha256": "9ff73dbca7389f05aaf4834c4fb5a734a5c2cb2ef5e1a65962edbc0662ce0557"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "1c655b9500d50d1c08bf3beb77bea93165c194dcca3bca2ed3fad9e503db18b6"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "c1dc68608100b359d9b6451cc02820849bd516b553bc91bd80e7cf50a8218ea9"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "ebf7c55085be0ae10f1c97efc4e0a4d487f79ced689810138ee80401995000e3"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "3a757942bf7514850b1d6f6e1abc008aeea99640785fe60951ae18d3b3dcb301"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "3a757942bf7514850b1d6f6e1abc008aeea99640785fe60951ae18d3b3dcb301"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00024/text-desktop-report.json", "sha256": "50006b807fc8f41603e939f9f2748c4d5cacfcaa19a1c60a7270e9f9962b621c"}, + "webReport": {"path": "tests/golden/M16-GAP-00024/text-local-exact-report.json", "sha256": "73c22077cbbe47e1effd7c24d310e43010fbd48925587cb00efe507838b4f1eb"} + }, + "nextTask": "M16-GAP-00025" +} diff --git a/tests/golden/M16-GAP-00024/task-context.json b/tests/golden/M16-GAP-00024/task-context.json new file mode 100644 index 00000000..d57a09d6 --- /dev/null +++ b/tests/golden/M16-GAP-00024/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00024", + "parentTask": "M16-GAP-00023", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Text data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Text", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00024.py -- tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00024", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00024" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00024.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6045, + "contextRemainingTokens": 1510 + }, + "source": { + "bytes": 7955, + "tokens": 1990 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00024.py", + "bytes": 659, + "tokens": 165 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", + "bytes": 85906, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 219676, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 87542, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00024/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00024.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00024/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 659, + "tokens": 165 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00025", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00024.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00023/manifest.json", + "parentStatus": "docs/status/M16-GAP-00023.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00024.md", + "tests/golden/M16-GAP-00023/manifest.json", + "docs/status/M16-GAP-00023.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00023", + "parentTask": "M16-GAP-00022", + "status": "done", + "nextTask": "M16-GAP-00024", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00023 Status", + "status: done ", + "task: Speaker data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Blender 5.2 `Speaker` identity and bounded speaker resource fields through the same generated fixture in desktop and WASM/Main: linked sound identity, volume limits, distance controls, attenuation, cone controls, volume and pitch.", + "evidence:", + "- `tools/web/generated/M16-GAP-00023.py` deterministically creates `speaker:WebGapSpeaker` linked to `sound:WebGapSpeakerSound` and saves the Blend fixture.", + "- Desktop reopen report matches exactly for the speaker identity, linked sound and all bounded fields." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1719, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 430 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00024.md", + "bytes": 1719, + "lines": 38, + "tokens": 430 + }, + { + "path": "tests/golden/M16-GAP-00023/manifest.json", + "bytes": 2145, + "lines": 26, + "tokens": 537 + }, + { + "path": "docs/status/M16-GAP-00023.md", + "bytes": 1923, + "lines": 26, + "tokens": 481 + } + ], + "sourceTokens": 1990, + "evidenceFiles": 1, + "evidenceBytes": 659, + "evidenceTokens": 165, + "totalTokens": 2155, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00024/text-desktop-report.json b/tests/golden/M16-GAP-00024/text-desktop-report.json new file mode 100644 index 00000000..523d97bc --- /dev/null +++ b/tests/golden/M16-GAP-00024/text-desktop-report.json @@ -0,0 +1,21 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", + "fixtureSha256": "7999f758dfbf7b5984f16464d1e5346d806c54c83ca68a583df54942c5e3b7d3", + "operation": "TEXT_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00024", + "text": { + "byteLength": 39, + "id": "text:WebGapText", + "internal": false, + "isDirty": true, + "lineCount": 3, + "name": "WebGapText", + "source": "Web Blender text datablock\nSecond line\n", + "sourcePath": "//WebGapText.txt", + "sourceSha256": "668dbf9bb49e80ef41a1850cf82dee8572ea18cafd73360c155f3f3f63a15f82", + "useModule": false + } +} diff --git a/tests/golden/M16-GAP-00024/text-local-exact-report.json b/tests/golden/M16-GAP-00024/text-local-exact-report.json new file mode 100644 index 00000000..1da8894b --- /dev/null +++ b/tests/golden/M16-GAP-00024/text-local-exact-report.json @@ -0,0 +1,30 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00024", + "operation": "TEXT_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00024-datablock-Text.blend", + "sha256": "7999f758dfbf7b5984f16464d1e5346d806c54c83ca68a583df54942c5e3b7d3" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00024/text-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "textId": "text:WebGapText", + "sourceSha256": "668dbf9bb49e80ef41a1850cf82dee8572ea18cafd73360c155f3f3f63a15f82", + "byteLength": 39, + "lineCount": 3, + "sourcePath": "//WebGapText.txt", + "internal": false, + "isDirty": true, + "useModule": false + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00025" +} diff --git a/tests/golden/M16-GAP-00025/manifest.json b/tests/golden/M16-GAP-00025/manifest.json new file mode 100644 index 00000000..d49ed90e --- /dev/null +++ b/tests/golden/M16-GAP-00025/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00025", + "parentTask": "M16-GAP-00024", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "TEXTURE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00024/manifest.json", "sha256": "681be76208e29366e616a4d8fa51f15e05ec27d2e60b46b140053646468f759d"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", "sha256": "482857e3b3868f7d4dc87d9b53c5552d10d608ed26a301cc5a6a080b275651c2"}, + "generator": {"path": "tools/web/generated/M16-GAP-00025.py", "sha256": "849dddfddf9841b866cf2531af3f74b3fc42b5b6303eaa5f2273cba2a0b1cee0"}, + "desktopChecker": {"path": "tools/web/check-texture-desktop.py", "sha256": "a91f9f69d389df79d7292e75ad64bd7a65a19bab063bac2ba311342b7d4fbb03"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "aaa9ead20a4b7f8d50acf93af7f4ea3a791de8996f75d7f6321278959d3689fe"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "2a15121e4fa1cb8f04c0112458d5ef0fa92ed92d1efc49e1b938d2c00cfe58da"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "1dae06614aea42c97949b7f13f0d38663e8fce1eb18d475bf1479e326064b16f"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "43d84158eaeec907c5f04018ceb4e3a6948860243a619f0d035be3c5c6a63a5a"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "43d84158eaeec907c5f04018ceb4e3a6948860243a619f0d035be3c5c6a63a5a"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00025/texture-desktop-report.json", "sha256": "ead3d25554f69580a272c3a4c45139632592ba2ca83370c79174683b2c7a982a"}, + "webReport": {"path": "tests/golden/M16-GAP-00025/texture-local-exact-report.json", "sha256": "4e503817eb7053370b627cc9a2edb03fc2ac8b8919534a90064133eaf9e0f4e7"} + }, + "nextTask": "M16-GAP-00026" +} diff --git a/tests/golden/M16-GAP-00025/task-context.json b/tests/golden/M16-GAP-00025/task-context.json new file mode 100644 index 00000000..d6377054 --- /dev/null +++ b/tests/golden/M16-GAP-00025/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00025", + "parentTask": "M16-GAP-00024", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Texture data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Texture", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00025.py -- tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00025", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00025" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00025.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 5979, + "contextRemainingTokens": 1493 + }, + "source": { + "bytes": 8021, + "tokens": 2007 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00025.py", + "bytes": 732, + "tokens": 183 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", + "bytes": 85833, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 220590, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 90919, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00025/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00025.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00025/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 732, + "tokens": 183 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00026", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00025.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00024/manifest.json", + "parentStatus": "docs/status/M16-GAP-00024.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00025.md", + "tests/golden/M16-GAP-00024/manifest.json", + "docs/status/M16-GAP-00024.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00024", + "parentTask": "M16-GAP-00023", + "status": "done", + "nextTask": "M16-GAP-00025", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00024 Status", + "status: done ", + "task: Text data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Blender 5.2 `Text` identity and bounded internal text resource fields through the same generated fixture in desktop and WASM/Main: source content, SHA-256, UTF-8 byte length, line count, path, internal state, dirty state and module flag.", + "evidence:", + "- `tools/web/generated/M16-GAP-00024.py` deterministically creates `text:WebGapText` with two text lines and project-relative filepath.", + "- Desktop reopen report matches exactly: source hash `668dbf...15f82`, 39 UTF-8 bytes, three stored lines, `//WebGapText.txt`, and stable flags." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1734, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 434 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00025.md", + "bytes": 1734, + "lines": 38, + "tokens": 434 + }, + { + "path": "tests/golden/M16-GAP-00024/manifest.json", + "bytes": 2130, + "lines": 26, + "tokens": 533 + }, + { + "path": "docs/status/M16-GAP-00024.md", + "bytes": 1989, + "lines": 27, + "tokens": 498 + } + ], + "sourceTokens": 2007, + "evidenceFiles": 1, + "evidenceBytes": 732, + "evidenceTokens": 183, + "totalTokens": 2190, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00025/texture-desktop-report.json b/tests/golden/M16-GAP-00025/texture-desktop-report.json new file mode 100644 index 00000000..b41aed28 --- /dev/null +++ b/tests/golden/M16-GAP-00025/texture-desktop-report.json @@ -0,0 +1,19 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", + "fixtureSha256": "482857e3b3868f7d4dc87d9b53c5552d10d608ed26a301cc5a6a080b275651c2", + "operation": "TEXTURE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00025", + "texture": { + "contrast": 1.25, + "id": "texture:WebGapTexture", + "intensity": 0.7200000286102295, + "name": "WebGapTexture", + "noiseDepth": 4, + "noiseScale": 0.41999998688697815, + "saturation": 0.800000011920929, + "type": 1 + } +} diff --git a/tests/golden/M16-GAP-00025/texture-local-exact-report.json b/tests/golden/M16-GAP-00025/texture-local-exact-report.json new file mode 100644 index 00000000..ad986c73 --- /dev/null +++ b/tests/golden/M16-GAP-00025/texture-local-exact-report.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00025", + "operation": "TEXTURE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend", + "sha256": "482857e3b3868f7d4dc87d9b53c5552d10d608ed26a301cc5a6a080b275651c2" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00025/texture-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "textureId": "texture:WebGapTexture", + "type": 1, + "noiseScale": 0.41999998688697815, + "noiseDepth": 4, + "intensity": 0.7200000286102295, + "contrast": 1.25, + "saturation": 0.800000011920929 + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00026" +} diff --git a/tests/golden/M16-GAP-00026/manifest.json b/tests/golden/M16-GAP-00026/manifest.json new file mode 100644 index 00000000..f186b2ec --- /dev/null +++ b/tests/golden/M16-GAP-00026/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00026", + "parentTask": "M16-GAP-00025", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "VOLUME_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00025/manifest.json", "sha256": "acc4b2d2d617b49bd274ae18e07475885eaa566269fe038c7df173a6a58f4964"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", "sha256": "725ee2ac502aec3ffe6fc91bcaaf9ce1c8225dc71b3162b10db8d598bed0b8d0"}, + "generator": {"path": "tools/web/generated/M16-GAP-00026.py", "sha256": "e8cf1a2397e5a03f6cd246add30287ead990b9bfb932e34bfbbb4e95d7a98036"}, + "desktopChecker": {"path": "tools/web/check-volume-desktop.py", "sha256": "fd5b2110877e9372056292b543d23f1912ffcad32ea5d882054110202c6e3b16"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "025f75b03eb228956f35084c5413f8fac96ed1837ac4938a734e7db0c0c0fb67"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "2a15121e4fa1cb8f04c0112458d5ef0fa92ed92d1efc49e1b938d2c00cfe58da"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "1dae06614aea42c97949b7f13f0d38663e8fce1eb18d475bf1479e326064b16f"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "43d84158eaeec907c5f04018ceb4e3a6948860243a619f0d035be3c5c6a63a5a"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "43d84158eaeec907c5f04018ceb4e3a6948860243a619f0d035be3c5c6a63a5a"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00026/volume-desktop-report.json", "sha256": "60c12879158b8a8e548a135778f90618cec8d42b39a95e460398fe6cfe563c86"}, + "webReport": {"path": "tests/golden/M16-GAP-00026/volume-local-exact-report.json", "sha256": "649e2bace33f8d9708b3ce0b4979e0cd6e9a0b78b8f4ee2b75776a94e68362be"} + }, + "nextTask": "M16-GAP-00027" +} diff --git a/tests/golden/M16-GAP-00026/task-context.json b/tests/golden/M16-GAP-00026/task-context.json new file mode 100644 index 00000000..073c920a --- /dev/null +++ b/tests/golden/M16-GAP-00026/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00026", + "parentTask": "M16-GAP-00025", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:Volume data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:Volume", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00026.py -- tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00026", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00026" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00026.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6721, + "contextRemainingTokens": 1678 + }, + "source": { + "bytes": 7279, + "tokens": 1822 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00026.py", + "bytes": 732, + "tokens": 183 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", + "bytes": 85843, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 220590, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 94646, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00026/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00026.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00026/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 732, + "tokens": 183 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00027", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00026.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00025/manifest.json", + "parentStatus": "docs/status/M16-GAP-00025.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00026.md", + "tests/golden/M16-GAP-00025/manifest.json", + "docs/status/M16-GAP-00025.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00025", + "parentTask": "M16-GAP-00024", + "status": "done", + "nextTask": "M16-GAP-00026", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00025 Status", + "status: done ", + "task: Texture data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Blender 5.2 `Tex` identity and bounded procedural texture fields: type, noise scale/depth, intensity, contrast and saturation.", + "evidence:", + "- `tools/web/generated/M16-GAP-00025.py` deterministically creates `texture:WebGapTexture` as a CLOUDS texture.", + "- Desktop reopen report matches exactly; WASM/Main matched all fields, save/reopen was identical, and truncated Blend input was rejected without Main mutation." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1729, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 433 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00026.md", + "bytes": 1729, + "lines": 38, + "tokens": 433 + }, + { + "path": "tests/golden/M16-GAP-00025/manifest.json", + "bytes": 2145, + "lines": 26, + "tokens": 537 + }, + { + "path": "docs/status/M16-GAP-00025.md", + "bytes": 1237, + "lines": 23, + "tokens": 310 + } + ], + "sourceTokens": 1822, + "evidenceFiles": 1, + "evidenceBytes": 732, + "evidenceTokens": 183, + "totalTokens": 2005, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00026/volume-desktop-report.json b/tests/golden/M16-GAP-00026/volume-desktop-report.json new file mode 100644 index 00000000..e5c4276e --- /dev/null +++ b/tests/golden/M16-GAP-00026/volume-desktop-report.json @@ -0,0 +1,19 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", + "fixtureSha256": "725ee2ac502aec3ffe6fc91bcaaf9ce1c8225dc71b3162b10db8d598bed0b8d0", + "operation": "VOLUME_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00026", + "volume": { + "displayDensity": 2.5, + "id": "volume:WebGapVolume", + "interpolation": "NEAREST", + "name": "WebGapVolume", + "sourcePath": "//WebGapVolume.vdb", + "stepSize": 0.125, + "velocityGrid": "velocity", + "velocityScale": 1.0 + } +} diff --git a/tests/golden/M16-GAP-00026/volume-local-exact-report.json b/tests/golden/M16-GAP-00026/volume-local-exact-report.json new file mode 100644 index 00000000..8739601b --- /dev/null +++ b/tests/golden/M16-GAP-00026/volume-local-exact-report.json @@ -0,0 +1,32 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00026", + "operation": "VOLUME_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend", + "sha256": "725ee2ac502aec3ffe6fc91bcaaf9ce1c8225dc71b3162b10db8d598bed0b8d0" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00026/volume-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "volumeId": "volume:WebGapVolume", + "geometryStatus": "blocked", + "sourcePath": "//WebGapVolume.vdb", + "volumeProperties": { + "displayDensity": 2.5, + "interpolation": "NEAREST", + "stepSize": 0.125, + "velocityGrid": "velocity", + "velocityScale": 1 + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00027" +} diff --git a/tests/golden/M16-GAP-00027/manifest.json b/tests/golden/M16-GAP-00027/manifest.json new file mode 100644 index 00000000..730034d1 --- /dev/null +++ b/tests/golden/M16-GAP-00027/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00027", + "parentTask": "M16-GAP-00026", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "WINDOW_MANAGER_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00026/manifest.json", "sha256": "08f5fe0a60d924bbd0f3cb85d95678d05a62d16940703cb989cf9201e73cbf73"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", "sha256": "88052ddeb5b8e35ce537910d9ce3b005b92c58b001f9b74a369a3c854ccebb23"}, + "generator": {"path": "tools/web/generated/M16-GAP-00027.py", "sha256": "f93ea3ef289853f45ad9e1553007e47e89376d15ac2dd2e623ed2c3b783cd036"}, + "desktopChecker": {"path": "tools/web/check-window-manager-desktop.py", "sha256": "29ac8b293e20b71a917fa834809cd15d881362cec0749a6ea1f7241b7409c6f1"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "aa84d8b44354d9c594d9b67a67f0b72a8f1789c9ac87af57bfde917d721fb09b"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "f7cacc6e4ca79c761f74dc44baeb95c704af74b6b575116c3667c6e513626cb7"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "50e407db59ec8dc6f73084c3d2db51e2e32bcaa8134f57dea7d130a3683ce06d"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "3792889825b9488e3644baf3e4d03b4297683bc628c2c66f1823e541f4b4ca6c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "3792889825b9488e3644baf3e4d03b4297683bc628c2c66f1823e541f4b4ca6c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00027/window-manager-desktop-report.json", "sha256": "2b50759c964b06b38410f44c11679616a8f172d5bc05bd2e5b54a416ec781c15"}, + "webReport": {"path": "tests/golden/M16-GAP-00027/window-manager-local-exact-report.json", "sha256": "9e92475873db0072f32d708e6f1468387637fac39008c4928060c39a719a5dc0"} + }, + "nextTask": "M16-GAP-00028" +} diff --git a/tests/golden/M16-GAP-00027/task-context.json b/tests/golden/M16-GAP-00027/task-context.json new file mode 100644 index 00000000..cccdcec6 --- /dev/null +++ b/tests/golden/M16-GAP-00027/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00027", + "parentTask": "M16-GAP-00026", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:WindowManager data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:WindowManager", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00027.py -- tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00027", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00027" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00027.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6671, + "contextRemainingTokens": 1667 + }, + "source": { + "bytes": 7329, + "tokens": 1833 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00027.py", + "bytes": 553, + "tokens": 139 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", + "bytes": 85714, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 220753, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 97214, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00027/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00027.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00027/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 553, + "tokens": 139 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00028", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00027.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00026/manifest.json", + "parentStatus": "docs/status/M16-GAP-00026.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00027.md", + "tests/golden/M16-GAP-00026/manifest.json", + "docs/status/M16-GAP-00026.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00026", + "parentTask": "M16-GAP-00025", + "status": "done", + "nextTask": "M16-GAP-00027", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00026 Status", + "status: done ", + "task: Volume data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Blender 5.2 `Volume` resource observability through bounded non-mesh Scene IR fields: source path, geometry status and volume display/render properties.", + "evidence:", + "- `tools/web/generated/M16-GAP-00026.py` deterministically creates `volume:WebGapVolume` with project-relative OpenVDB path, density `2.5`, nearest interpolation and step size `0.125`.", + "- Desktop and WASM reports match exactly; save/reopen is stable and malformed Blend input leaves Main unchanged." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1764, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 441 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00027.md", + "bytes": 1764, + "lines": 38, + "tokens": 441 + }, + { + "path": "tests/golden/M16-GAP-00026/manifest.json", + "bytes": 2140, + "lines": 26, + "tokens": 535 + }, + { + "path": "docs/status/M16-GAP-00026.md", + "bytes": 1257, + "lines": 23, + "tokens": 315 + } + ], + "sourceTokens": 1833, + "evidenceFiles": 1, + "evidenceBytes": 553, + "evidenceTokens": 139, + "totalTokens": 1972, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00027/window-manager-desktop-report.json b/tests/golden/M16-GAP-00027/window-manager-desktop-report.json new file mode 100644 index 00000000..c8493094 --- /dev/null +++ b/tests/golden/M16-GAP-00027/window-manager-desktop-report.json @@ -0,0 +1,16 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", + "fixtureSha256": "88052ddeb5b8e35ce537910d9ce3b005b92c58b001f9b74a369a3c854ccebb23", + "operation": "WINDOW_MANAGER_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00027", + "windowManager": { + "id": "window-manager:WinMan", + "interfaceLocked": false, + "name": "WinMan", + "presetName": "New Preset", + "windowCount": 1 + } +} diff --git a/tests/golden/M16-GAP-00027/window-manager-local-exact-report.json b/tests/golden/M16-GAP-00027/window-manager-local-exact-report.json new file mode 100644 index 00000000..c7cd9219 --- /dev/null +++ b/tests/golden/M16-GAP-00027/window-manager-local-exact-report.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00027", + "operation": "WINDOW_MANAGER_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend", + "sha256": "88052ddeb5b8e35ce537910d9ce3b005b92c58b001f9b74a369a3c854ccebb23" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00027/window-manager-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "windowManager": { + "id": "window-manager:WinMan", + "interfaceLocked": false, + "name": "WinMan", + "presetName": "New Preset", + "windowCount": 1 + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00028" +} diff --git a/tests/golden/M16-GAP-00028/manifest.json b/tests/golden/M16-GAP-00028/manifest.json new file mode 100644 index 00000000..0f7e2192 --- /dev/null +++ b/tests/golden/M16-GAP-00028/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00028", + "parentTask": "M16-GAP-00027", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "WORKSPACE_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00027/manifest.json", "sha256": "1feb7365ae2590ada5408d47075d8151e9c023918b4822668619b4ba7c07f8e3"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", "sha256": "fbb4fc85b46a30dd8913e5d2d75b73688cef1a3f64861337c7fbd94a687c87df"}, + "generator": {"path": "tools/web/generated/M16-GAP-00028.py", "sha256": "6d1a74f7340820917461720442888c5a705ac8140d6ad0d4809aace082c27469"}, + "desktopChecker": {"path": "tools/web/check-workspace-desktop.py", "sha256": "5e01f8a7802eface955fcb0396c99a3f0c2570751bb672cd2b3401389e80cf08"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "9beda9925a369ce09e2aa0f6955be2b3df158fab70a8e62343fae230a1357198"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1f962be51a8201d1d0a119761a51de7864fbda4e553a13dcf7b14f19fbec79db"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00028/workspace-desktop-report.json", "sha256": "4ab3274ecfcd512964db37e661f8b5e8c53077687094115c11dab4fbe39a12b9"}, + "webReport": {"path": "tests/golden/M16-GAP-00028/workspace-local-exact-report.json", "sha256": "3b12cbb0533284f29ad1d0f4659ecd1ce128ae5b24545610819f994252b79e6d"} + }, + "nextTask": "M16-GAP-00029" +} diff --git a/tests/golden/M16-GAP-00028/task-context.json b/tests/golden/M16-GAP-00028/task-context.json new file mode 100644 index 00000000..6e77f45a --- /dev/null +++ b/tests/golden/M16-GAP-00028/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00028", + "parentTask": "M16-GAP-00027", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:WorkSpace data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:WorkSpace", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00028.py -- tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00028", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00028" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00028.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7139, + "contextRemainingTokens": 1784 + }, + "source": { + "bytes": 6861, + "tokens": 1716 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00028.py", + "bytes": 627, + "tokens": 157 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", + "bytes": 85705, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221094, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 99845, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00028/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00028.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00028/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 627, + "tokens": 157 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00029", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00028.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00027/manifest.json", + "parentStatus": "docs/status/M16-GAP-00027.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00028.md", + "tests/golden/M16-GAP-00027/manifest.json", + "docs/status/M16-GAP-00027.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00027", + "parentTask": "M16-GAP-00026", + "status": "done", + "nextTask": "M16-GAP-00028", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00027 Status", + "status: done ", + "task: WindowManager data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Headless `WindowManager` identity and bounded runtime state: manager identity/name, preset name, window count and interface lock state.", + "evidence:", + "- Desktop fixture and reopen report are exact: `window-manager:WinMan`, preset `New Preset`, one window, interface unlocked.", + "- WASM/Main exposes the same bounded `windowManager` resource, save/reopen is exact, and malformed Blend input leaves Main unchanged." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1744, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 436 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00028.md", + "bytes": 1744, + "lines": 38, + "tokens": 436 + }, + { + "path": "tests/golden/M16-GAP-00027/manifest.json", + "bytes": 2179, + "lines": 26, + "tokens": 545 + }, + { + "path": "docs/status/M16-GAP-00027.md", + "bytes": 770, + "lines": 18, + "tokens": 193 + } + ], + "sourceTokens": 1716, + "evidenceFiles": 1, + "evidenceBytes": 627, + "evidenceTokens": 157, + "totalTokens": 1873, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00028/workspace-desktop-report.json b/tests/golden/M16-GAP-00028/workspace-desktop-report.json new file mode 100644 index 00000000..2d258f16 --- /dev/null +++ b/tests/golden/M16-GAP-00028/workspace-desktop-report.json @@ -0,0 +1,14 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", + "fixtureSha256": "fbb4fc85b46a30dd8913e5d2d75b73688cef1a3f64861337c7fbd94a687c87df", + "operation": "WORKSPACE_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00028", + "workspace": { + "id": "workspace:WebGapWorkspace", + "name": "WebGapWorkspace", + "screenCount": 1 + } +} diff --git a/tests/golden/M16-GAP-00028/workspace-local-exact-report.json b/tests/golden/M16-GAP-00028/workspace-local-exact-report.json new file mode 100644 index 00000000..1713f8e3 --- /dev/null +++ b/tests/golden/M16-GAP-00028/workspace-local-exact-report.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00028", + "operation": "WORKSPACE_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend", + "sha256": "fbb4fc85b46a30dd8913e5d2d75b73688cef1a3f64861337c7fbd94a687c87df" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00028/workspace-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "workspace": { + "id": "workspace:WebGapWorkspace", + "name": "WebGapWorkspace", + "screenCount": 1 + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00029" +} diff --git a/tests/golden/M16-GAP-00029/manifest.json b/tests/golden/M16-GAP-00029/manifest.json new file mode 100644 index 00000000..d8d5d1aa --- /dev/null +++ b/tests/golden/M16-GAP-00029/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00029", + "parentTask": "M16-GAP-00028", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "WORLD_DATABLOCK_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00028/manifest.json", "sha256": "90c983a8c7602649ca536ade7131d5b0d726ef6834de2e1665c7e4656156c638"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00029-datablock-World.blend", "sha256": "33501247b59cec137aa857b0bd4ea59526f30bb3632de9996e6026d4bd3f0401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00029.py", "sha256": "b57d5f058a3f3862d6c4a8e4383ebd8c544ec2118338298eb5756fadc8aa306f"}, + "desktopChecker": {"path": "tools/web/check-world-desktop.py", "sha256": "fb4d115af8370f0d48a94ecc6d609eac5c0ca826a0f6d5bef90304b8c593d34b"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "df6865db07b9b9456bfed583277aa0cdbec5ed39f298d87251fe8bcdecdcf909"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1f962be51a8201d1d0a119761a51de7864fbda4e553a13dcf7b14f19fbec79db"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00029/world-desktop-report.json", "sha256": "2818f250b67524e0517ad117619a00fbcb09f51141c4f228e3c0095f0ee4afad"}, + "webReport": {"path": "tests/golden/M16-GAP-00029/world-local-exact-report.json", "sha256": "22eacfe0c2fa9cdce05b0965fac8f8f59bbd17726a89606678a8d3ed804dbf4d"} + }, + "nextTask": "M16-GAP-00030" +} diff --git a/tests/golden/M16-GAP-00029/task-context.json b/tests/golden/M16-GAP-00029/task-context.json new file mode 100644 index 00000000..06b412eb --- /dev/null +++ b/tests/golden/M16-GAP-00029/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00029", + "parentTask": "M16-GAP-00028", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable datablock:World data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "datablock:World", + "ownerFamily": "RNA_DATABLOCK", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00029.py -- tests/files/web/generated/M16-GAP-00029-datablock-World.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00029", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00029" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00029.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7241, + "contextRemainingTokens": 1810 + }, + "source": { + "bytes": 6759, + "tokens": 1690 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00029.py", + "bytes": 742, + "tokens": 186 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00029-datablock-World.blend", + "bytes": 86353, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221094, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 102400, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00029/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00029.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00029/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 742, + "tokens": 186 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00030", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00029.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00028/manifest.json", + "parentStatus": "docs/status/M16-GAP-00028.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00029.md", + "tests/golden/M16-GAP-00028/manifest.json", + "docs/status/M16-GAP-00028.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00028", + "parentTask": "M16-GAP-00027", + "status": "done", + "nextTask": "M16-GAP-00029", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00028 Status", + "status: done ", + "task: WorkSpace data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Workspace identity and bounded screen linkage count for `workspace:WebGapWorkspace`.", + "evidence:", + "- Desktop fixture renamed the Layout workspace to `WebGapWorkspace`; reopen is exact.", + "- WASM/Main exposes the same workspace resource and screen count, save/reopen is exact, and malformed Blend input leaves Main unchanged." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1724, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 431 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00029.md", + "bytes": 1724, + "lines": 38, + "tokens": 431 + }, + { + "path": "tests/golden/M16-GAP-00028/manifest.json", + "bytes": 2155, + "lines": 26, + "tokens": 539 + }, + { + "path": "docs/status/M16-GAP-00028.md", + "bytes": 712, + "lines": 18, + "tokens": 178 + } + ], + "sourceTokens": 1690, + "evidenceFiles": 1, + "evidenceBytes": 742, + "evidenceTokens": 186, + "totalTokens": 1876, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00029/world-desktop-report.json b/tests/golden/M16-GAP-00029/world-desktop-report.json new file mode 100644 index 00000000..06c6dfd6 --- /dev/null +++ b/tests/golden/M16-GAP-00029/world-desktop-report.json @@ -0,0 +1,29 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00029-datablock-World.blend", + "fixtureSha256": "33501247b59cec137aa857b0bd4ea59526f30bb3632de9996e6026d4bd3f0401", + "operation": "WORLD_DATABLOCK_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00029", + "world": { + "backgroundVisible": true, + "color": [ + 0.11999999731779099, + 0.20000000298023224, + 0.3499999940395355 + ], + "environmentStrength": 1.0, + "exposure": 0.0, + "id": "world:WebGapWorld", + "mist": { + "depth": 18.0, + "enabled": true, + "height": 0.0, + "intensity": 0.4000000059604645, + "start": 3.0, + "type": "QUADRATIC" + }, + "name": "WebGapWorld" + } +} diff --git a/tests/golden/M16-GAP-00029/world-local-exact-report.json b/tests/golden/M16-GAP-00029/world-local-exact-report.json new file mode 100644 index 00000000..95ddf1a4 --- /dev/null +++ b/tests/golden/M16-GAP-00029/world-local-exact-report.json @@ -0,0 +1,42 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00029", + "operation": "WORLD_DATABLOCK_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00029-datablock-World.blend", + "sha256": "33501247b59cec137aa857b0bd4ea59526f30bb3632de9996e6026d4bd3f0401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00029/world-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "world": { + "backgroundVisible": true, + "color": [ + 0.11999999731779099, + 0.20000000298023224, + 0.3499999940395355 + ], + "environmentStrength": 1, + "exposure": 0, + "id": "world:WebGapWorld", + "mist": { + "depth": 18, + "enabled": true, + "height": 0, + "intensity": 0.4000000059604645, + "start": 3, + "type": "QUADRATIC" + }, + "name": "WebGapWorld" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00030" +} diff --git a/tests/golden/M16-GAP-00030/armature-modifier-desktop-report.json b/tests/golden/M16-GAP-00030/armature-modifier-desktop-report.json new file mode 100644 index 00000000..016a9726 --- /dev/null +++ b/tests/golden/M16-GAP-00030/armature-modifier-desktop-report.json @@ -0,0 +1,27 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", + "fixtureSha256": "4725dda93e7bece9fb121a5cf91856c43ac043a598c038b297eef8aad95d2552", + "modifier": { + "armatureDataId": "armature:WebGapArmature", + "armatureObjectId": "object:WebGapArmatureObject", + "meshId": "mesh:WebGapArmatureMesh", + "meshName": "WebGapArmatureMesh", + "modifier": { + "enabled": true, + "name": "WebGapArmature", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "targetObjectId": "object:WebGapArmatureObject", + "type": "ARMATURE", + "typeCode": 8, + "vertexGroup": "Root" + } + }, + "operation": "ARMATURE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00030" +} diff --git a/tests/golden/M16-GAP-00030/armature-modifier-local-exact-report.json b/tests/golden/M16-GAP-00030/armature-modifier-local-exact-report.json new file mode 100644 index 00000000..b6006884 --- /dev/null +++ b/tests/golden/M16-GAP-00030/armature-modifier-local-exact-report.json @@ -0,0 +1,49 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00030", + "operation": "ARMATURE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", + "sha256": "4725dda93e7bece9fb121a5cf91856c43ac043a598c038b297eef8aad95d2552" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00030/armature-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapArmatureMesh", + "modifier": { + "dependsOn": [ + "object:WebGapArmatureObject" + ], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapArmature", + "parameters": { + "armatureObjectId": "object:WebGapArmatureObject", + "deformFlags": 1, + "flag": 5, + "mode": 7, + "persistentUid": 312629205, + "targetObjectIds": [ + "object:WebGapArmatureObject" + ], + "typeCode": 8, + "vertexGroup": "Root" + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "ARMATURE", + "uuid": "modifier:object:WebGapArmatureMeshObject:312629205" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00031" +} diff --git a/tests/golden/M16-GAP-00030/manifest.json b/tests/golden/M16-GAP-00030/manifest.json new file mode 100644 index 00000000..104542c1 --- /dev/null +++ b/tests/golden/M16-GAP-00030/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00030", + "parentTask": "M16-GAP-00029", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "ARMATURE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00029/manifest.json", "sha256": "2475bd5cd1dad8bc459f3a2508b8006af77b18464be35f42ef140e7af6796d5a"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", "sha256": "4725dda93e7bece9fb121a5cf91856c43ac043a598c038b297eef8aad95d2552"}, + "generator": {"path": "tools/web/generated/M16-GAP-00030.py", "sha256": "f3fb565611e07d2eb5a30f6557a3848d5f1d6e5231dcc9d4da80ec4973158f24"}, + "desktopChecker": {"path": "tools/web/check-armature-modifier-desktop.py", "sha256": "3cb59a6bd15b97a5fb33fc5643bd58fe3155264a2598e1cdae17aa72626e146f"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "4dd273697a66ec6262558bff8948e7c5042d11869b2b6687490f3b04ae703542"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1f962be51a8201d1d0a119761a51de7864fbda4e553a13dcf7b14f19fbec79db"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00030/armature-modifier-desktop-report.json", "sha256": "32ca0be514d0f5b02150c23a42e99784903da9c211aebb7f2736229daa069220"}, + "webReport": {"path": "tests/golden/M16-GAP-00030/armature-modifier-local-exact-report.json", "sha256": "fad61c1ebb8396b4af4143e7079a7fc1db4bf3f7ff945ce4717650c5493510a5"} + }, + "nextTask": "M16-GAP-00031" +} diff --git a/tests/golden/M16-GAP-00030/task-context.json b/tests/golden/M16-GAP-00030/task-context.json new file mode 100644 index 00000000..fb5474ae --- /dev/null +++ b/tests/golden/M16-GAP-00030/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00030", + "parentTask": "M16-GAP-00029", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:ARMATURE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:ARMATURE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00030.py -- tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00030", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00030" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00030.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7229, + "contextRemainingTokens": 1806 + }, + "source": { + "bytes": 6771, + "tokens": 1694 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00030.py", + "bytes": 1850, + "tokens": 463 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend", + "bytes": 86858, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221094, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 106052, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00030/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00030.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00030/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1850, + "tokens": 463 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00031", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00030.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00029/manifest.json", + "parentStatus": "docs/status/M16-GAP-00029.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00030.md", + "tests/golden/M16-GAP-00029/manifest.json", + "docs/status/M16-GAP-00029.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00029", + "parentTask": "M16-GAP-00028", + "status": "done", + "nextTask": "M16-GAP-00030", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00029 Status", + "status: done ", + "task: World data-block LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: World identity, background color and bounded mist settings for `world:WebGapWorld`.", + "evidence:", + "- Desktop fixture exposes `WebGapWorld` with the configured color and mist fields; save/reopen is exact.", + "- WASM/Main exposes the same world resource from the same fixture, save/reopen is exact, and malformed Blend input leaves Main unchanged." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1729, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 433 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00030.md", + "bytes": 1729, + "lines": 38, + "tokens": 433 + }, + { + "path": "tests/golden/M16-GAP-00029/manifest.json", + "bytes": 2135, + "lines": 26, + "tokens": 534 + }, + { + "path": "docs/status/M16-GAP-00029.md", + "bytes": 739, + "lines": 18, + "tokens": 185 + } + ], + "sourceTokens": 1694, + "evidenceFiles": 1, + "evidenceBytes": 1850, + "evidenceTokens": 463, + "totalTokens": 2157, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00031/array-modifier-desktop-report.json b/tests/golden/M16-GAP-00031/array-modifier-desktop-report.json new file mode 100644 index 00000000..c771ec81 --- /dev/null +++ b/tests/golden/M16-GAP-00031/array-modifier-desktop-report.json @@ -0,0 +1,24 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", + "fixtureSha256": "ff8619e63a5611dbc78599f849d27f0e4e2dc3c1c5849e9db86349e00106c23b", + "modifier": { + "meshId": "mesh:WebGapArrayObjectMesh", + "modifier": { + "count": 4, + "endCapObjectId": "object:WebGapArrayEndCap", + "name": "WebGapArray", + "showEditMode": true, + "showOnCage": false, + "showRender": false, + "showViewport": true, + "startCapObjectId": "object:WebGapArrayStartCap", + "type": "ARRAY", + "typeCode": 12 + } + }, + "operation": "ARRAY_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00031" +} diff --git a/tests/golden/M16-GAP-00031/array-modifier-local-exact-report.json b/tests/golden/M16-GAP-00031/array-modifier-local-exact-report.json new file mode 100644 index 00000000..1ab340b2 --- /dev/null +++ b/tests/golden/M16-GAP-00031/array-modifier-local-exact-report.json @@ -0,0 +1,49 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00031", + "operation": "ARRAY_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", + "sha256": "ff8619e63a5611dbc78599f849d27f0e4e2dc3c1c5849e9db86349e00106c23b" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00031/array-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapArrayObjectMesh", + "modifier": { + "dependsOn": [ + "object:WebGapArrayStartCap", + "object:WebGapArrayEndCap" + ], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapArray", + "parameters": { + "count": 4, + "flag": 5, + "mode": 5, + "persistentUid": 650905928, + "targetObjectIds": [ + "object:WebGapArrayStartCap", + "object:WebGapArrayEndCap" + ], + "typeCode": 12 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": false, + "showViewport": true, + "type": "ARRAY", + "uuid": "modifier:object:WebGapArrayObject:650905928" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00032" +} diff --git a/tests/golden/M16-GAP-00031/manifest.json b/tests/golden/M16-GAP-00031/manifest.json new file mode 100644 index 00000000..82734c3a --- /dev/null +++ b/tests/golden/M16-GAP-00031/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00031", + "parentTask": "M16-GAP-00030", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "ARRAY_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00030/manifest.json", "sha256": "65f93b217bc35c886da135c52079ed52df24d9834b67551a1fb6c302da313014"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", "sha256": "ff8619e63a5611dbc78599f849d27f0e4e2dc3c1c5849e9db86349e00106c23b"}, + "generator": {"path": "tools/web/generated/M16-GAP-00031.py", "sha256": "28504da60ebf881eda9ed407884b403029bb8ced6131c425b64f512c82b2d292"}, + "desktopChecker": {"path": "tools/web/check-array-modifier-desktop.py", "sha256": "82d5e59a60324101b1c97a277ab07afa2e1c52c55d1914fee27076d1c1619489"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "f6dd8efad7849574ae479a707792e2b3f837b8c22e434afa44b5fe60a85673ec"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1f962be51a8201d1d0a119761a51de7864fbda4e553a13dcf7b14f19fbec79db"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00031/array-modifier-desktop-report.json", "sha256": "739ae5333a5046cd4b0c60333eec89bf4f0bb9508d95022238a173f4a698833f"}, + "webReport": {"path": "tests/golden/M16-GAP-00031/array-modifier-local-exact-report.json", "sha256": "df9326e8ddbb5ace859ade67dff067229c55f19536c568ee6e102d981971c17a"} + }, + "nextTask": "M16-GAP-00032" +} diff --git a/tests/golden/M16-GAP-00031/task-context.json b/tests/golden/M16-GAP-00031/task-context.json new file mode 100644 index 00000000..7fc4368d --- /dev/null +++ b/tests/golden/M16-GAP-00031/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00031", + "parentTask": "M16-GAP-00030", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:ARRAY data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:ARRAY", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00031.py -- tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00031", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00031" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00031.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7029, + "contextRemainingTokens": 1756 + }, + "source": { + "bytes": 6971, + "tokens": 1744 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00031.py", + "bytes": 1701, + "tokens": 426 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend", + "bytes": 87078, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221094, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 109698, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00031/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00031.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00031/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1701, + "tokens": 426 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00032", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00031.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00030/manifest.json", + "parentStatus": "docs/status/M16-GAP-00030.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00031.md", + "tests/golden/M16-GAP-00030/manifest.json", + "docs/status/M16-GAP-00030.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00030", + "parentTask": "M16-GAP-00029", + "status": "done", + "nextTask": "M16-GAP-00031", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00030 Status", + "status: done ", + "task: ARMATURE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: ARMATURE modifier identity, target object, vertex group, deform flags, visibility modes and dependency linkage for `mesh:WebGapArmatureMesh`.", + "evidence:", + "- Desktop fixture exposes one ARMATURE modifier targeting `object:WebGapArmatureObject`; save/reopen is exact.", + "- WASM/Main exposes the same modifier stack from the same fixture, including `armatureObjectId`, `vertexGroup`, `deformFlags`, and dependency; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1714, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 429 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00031.md", + "bytes": 1714, + "lines": 38, + "tokens": 429 + }, + { + "path": "tests/golden/M16-GAP-00030/manifest.json", + "bytes": 2175, + "lines": 26, + "tokens": 544 + }, + { + "path": "docs/status/M16-GAP-00030.md", + "bytes": 914, + "lines": 19, + "tokens": 229 + } + ], + "sourceTokens": 1744, + "evidenceFiles": 1, + "evidenceBytes": 1701, + "evidenceTokens": 426, + "totalTokens": 2170, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00032/bevel-modifier-desktop-report.json b/tests/golden/M16-GAP-00032/bevel-modifier-desktop-report.json new file mode 100644 index 00000000..d1b1aef5 --- /dev/null +++ b/tests/golden/M16-GAP-00032/bevel-modifier-desktop-report.json @@ -0,0 +1,24 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", + "fixtureSha256": "3a27883c1faf12a8a0281b7c0e9747915784138efb24c0f1680b525cd50b84c7", + "modifier": { + "meshId": "mesh:WebGapBevelMesh", + "modifier": { + "name": "WebGapBevel", + "profile": 0.35, + "segments": 3, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "BEVEL", + "typeCode": 24, + "width": 0.2 + } + }, + "operation": "BEVEL_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00032" +} diff --git a/tests/golden/M16-GAP-00032/bevel-modifier-local-exact-report.json b/tests/golden/M16-GAP-00032/bevel-modifier-local-exact-report.json new file mode 100644 index 00000000..f702af83 --- /dev/null +++ b/tests/golden/M16-GAP-00032/bevel-modifier-local-exact-report.json @@ -0,0 +1,44 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00032", + "operation": "BEVEL_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", + "sha256": "3a27883c1faf12a8a0281b7c0e9747915784138efb24c0f1680b525cd50b84c7" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00032/bevel-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapBevelMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapBevel", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 1277244409, + "profile": 0.3499999940395355, + "segments": 3, + "typeCode": 24, + "width": 0.20000000298023224 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "BEVEL", + "uuid": "modifier:object:WebGapBevelObject:1277244409" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00033" +} diff --git a/tests/golden/M16-GAP-00032/manifest.json b/tests/golden/M16-GAP-00032/manifest.json new file mode 100644 index 00000000..2bef9c9f --- /dev/null +++ b/tests/golden/M16-GAP-00032/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00032", + "parentTask": "M16-GAP-00031", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "BEVEL_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00031/manifest.json", "sha256": "b2b60b46152a9fcb177ec04166fd096d6e595ba66fc8591959bca91df0729bad"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", "sha256": "3a27883c1faf12a8a0281b7c0e9747915784138efb24c0f1680b525cd50b84c7"}, + "generator": {"path": "tools/web/generated/M16-GAP-00032.py", "sha256": "1af887a0beed22a1eaf199723535e2d1952c7458ea60bf22485c5b433dc17d2d"}, + "desktopChecker": {"path": "tools/web/check-bevel-modifier-desktop.py", "sha256": "abf8dd2a65c48883c8e8ad7c022d06629206f2e55a63184a8e26abc44e678279"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "caac80c57f7e403581a63224419c95625f61ca2ea58984a691396b1b101c306a"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1f962be51a8201d1d0a119761a51de7864fbda4e553a13dcf7b14f19fbec79db"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00032/bevel-modifier-desktop-report.json", "sha256": "a6e1e88a9e418bb18b2a323285c0d05a07e6c038bf2cf4f7e04bfa188900daf3"}, + "webReport": {"path": "tests/golden/M16-GAP-00032/bevel-modifier-local-exact-report.json", "sha256": "318d68f88e3838fc3920d33a8d1b2995411de39c9c2f39d97e1f2c3b4e7a7c1e"} + }, + "nextTask": "M16-GAP-00033" +} diff --git a/tests/golden/M16-GAP-00032/task-context.json b/tests/golden/M16-GAP-00032/task-context.json new file mode 100644 index 00000000..e50b514b --- /dev/null +++ b/tests/golden/M16-GAP-00032/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00032", + "parentTask": "M16-GAP-00031", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:BEVEL data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:BEVEL", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00032.py -- tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00032", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00032" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00032.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7121, + "contextRemainingTokens": 1779 + }, + "source": { + "bytes": 6879, + "tokens": 1721 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00032.py", + "bytes": 1382, + "tokens": 346 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend", + "bytes": 86569, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221094, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 113221, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00032/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00032.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00032/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1382, + "tokens": 346 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00033", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00032.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00031/manifest.json", + "parentStatus": "docs/status/M16-GAP-00031.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00032.md", + "tests/golden/M16-GAP-00031/manifest.json", + "docs/status/M16-GAP-00031.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00031", + "parentTask": "M16-GAP-00030", + "status": "done", + "nextTask": "M16-GAP-00032", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00031 Status", + "status: done ", + "task: ARRAY modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: ARRAY modifier identity, fixed duplicate count, start/end cap targets and visibility modes for `mesh:WebGapArrayObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapArray` with count 4 and stable start/end cap targets; save/reopen is exact.", + "- WASM/Main exposes the same modifier parameters and dependency targets from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1714, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 429 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00032.md", + "bytes": 1714, + "lines": 38, + "tokens": 429 + }, + { + "path": "tests/golden/M16-GAP-00031/manifest.json", + "bytes": 2160, + "lines": 26, + "tokens": 540 + }, + { + "path": "docs/status/M16-GAP-00031.md", + "bytes": 837, + "lines": 19, + "tokens": 210 + } + ], + "sourceTokens": 1721, + "evidenceFiles": 1, + "evidenceBytes": 1382, + "evidenceTokens": 346, + "totalTokens": 2067, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00033/boolean-modifier-desktop-report.json b/tests/golden/M16-GAP-00033/boolean-modifier-desktop-report.json new file mode 100644 index 00000000..9c03bc60 --- /dev/null +++ b/tests/golden/M16-GAP-00033/boolean-modifier-desktop-report.json @@ -0,0 +1,24 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", + "fixtureSha256": "ea909948fb2b92f288684886a3d488f74a707108dc94778e9a78a6cb082cbe38", + "modifier": { + "meshId": "mesh:WebGapBooleanObjectMesh", + "modifier": { + "name": "WebGapBoolean", + "operation": "DIFFERENCE", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "solver": "EXACT", + "targetObjectId": "object:WebGapBooleanCutter", + "type": "BOOLEAN", + "typeCode": 11 + } + }, + "operation": "BOOLEAN_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00033" +} diff --git a/tests/golden/M16-GAP-00033/boolean-modifier-local-exact-report.json b/tests/golden/M16-GAP-00033/boolean-modifier-local-exact-report.json new file mode 100644 index 00000000..21111423 --- /dev/null +++ b/tests/golden/M16-GAP-00033/boolean-modifier-local-exact-report.json @@ -0,0 +1,48 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00033", + "operation": "BOOLEAN_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", + "sha256": "ea909948fb2b92f288684886a3d488f74a707108dc94778e9a78a6cb082cbe38" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00033/boolean-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapBooleanObjectMesh", + "modifier": { + "dependsOn": [ + "object:WebGapBooleanCutter" + ], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapBoolean", + "parameters": { + "flag": 5, + "mode": 3, + "operation": 2, + "persistentUid": 1355493870, + "solver": 1, + "targetObjectIds": [ + "object:WebGapBooleanCutter" + ], + "typeCode": 11 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "BOOLEAN", + "uuid": "modifier:object:WebGapBooleanObject:1355493870" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00034" +} diff --git a/tests/golden/M16-GAP-00033/manifest.json b/tests/golden/M16-GAP-00033/manifest.json new file mode 100644 index 00000000..33d1816c --- /dev/null +++ b/tests/golden/M16-GAP-00033/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00033", + "parentTask": "M16-GAP-00032", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "BOOLEAN_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00032/manifest.json", "sha256": "6009f0bdb35b49e2cc387cfa6661bde7f155f81c07476ef7d4700e056279f64b"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", "sha256": "ea909948fb2b92f288684886a3d488f74a707108dc94778e9a78a6cb082cbe38"}, + "generator": {"path": "tools/web/generated/M16-GAP-00033.py", "sha256": "4eeb3bae0015883cd91ebebed89b78ebd5c7732d3be16ac88561eca87eb5d053"}, + "desktopChecker": {"path": "tools/web/check-boolean-modifier-desktop.py", "sha256": "b84d0c7d6cc1554d59de2a11ce4140d504816fe140e74faf892a5495e8c3905f"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "e0d2371544ac6ed297bc3f13830758c11bfc744cd2697d9ba47c75048d7e7298"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1f962be51a8201d1d0a119761a51de7864fbda4e553a13dcf7b14f19fbec79db"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "bf5361e4b5e3e2105b59494c548617b463063e64a340398494cde77632b9424c"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00033/boolean-modifier-desktop-report.json", "sha256": "2f0c9dfb183f39a65ef018d1618ef6f12fe05ada0a6c7ff40011491686ea00c7"}, + "webReport": {"path": "tests/golden/M16-GAP-00033/boolean-modifier-local-exact-report.json", "sha256": "aa33f396b5910e3829c1965e62c80bd1267ac764a58862b72be555ebd5bd1b0d"} + }, + "nextTask": "M16-GAP-00034" +} diff --git a/tests/golden/M16-GAP-00033/task-context.json b/tests/golden/M16-GAP-00033/task-context.json new file mode 100644 index 00000000..f8ebca44 --- /dev/null +++ b/tests/golden/M16-GAP-00033/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00033", + "parentTask": "M16-GAP-00032", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:BOOLEAN data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:BOOLEAN", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00033.py -- tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00033", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00033" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00033.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7158, + "contextRemainingTokens": 1789 + }, + "source": { + "bytes": 6842, + "tokens": 1711 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00033.py", + "bytes": 1567, + "tokens": 392 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend", + "bytes": 86903, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221094, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 116775, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00033/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00033.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00033/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1567, + "tokens": 392 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00034", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00033.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00032/manifest.json", + "parentStatus": "docs/status/M16-GAP-00032.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00033.md", + "tests/golden/M16-GAP-00032/manifest.json", + "docs/status/M16-GAP-00032.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00032", + "parentTask": "M16-GAP-00031", + "status": "done", + "nextTask": "M16-GAP-00033", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00032 Status", + "status: done ", + "task: BEVEL modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: BEVEL modifier identity, width, segments, profile and visibility modes for `mesh:WebGapBevelMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapBevel` with width 0.2, three segments and profile 0.35; save/reopen is exact.", + "- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1724, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 431 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00033.md", + "bytes": 1724, + "lines": 38, + "tokens": 431 + }, + { + "path": "tests/golden/M16-GAP-00032/manifest.json", + "bytes": 2160, + "lines": 26, + "tokens": 540 + }, + { + "path": "docs/status/M16-GAP-00032.md", + "bytes": 790, + "lines": 19, + "tokens": 198 + } + ], + "sourceTokens": 1711, + "evidenceFiles": 1, + "evidenceBytes": 1567, + "evidenceTokens": 392, + "totalTokens": 2103, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00034/build-modifier-desktop-report.json b/tests/golden/M16-GAP-00034/build-modifier-desktop-report.json new file mode 100644 index 00000000..6efb8057 --- /dev/null +++ b/tests/golden/M16-GAP-00034/build-modifier-desktop-report.json @@ -0,0 +1,26 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", + "fixtureSha256": "46b05aed641ab8cd6cc280587cf9672223190c2b730af8d8c21f1cf98cb68901", + "modifier": { + "meshId": "mesh:WebGapBuildMesh", + "modifier": { + "length": 12.0, + "name": "WebGapBuild", + "randomize": true, + "reverse": true, + "seed": 17, + "showEditMode": true, + "showOnCage": false, + "showRender": false, + "showViewport": true, + "start": 3.0, + "type": "BUILD", + "typeCode": 4 + } + }, + "operation": "BUILD_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00034" +} diff --git a/tests/golden/M16-GAP-00034/build-modifier-local-exact-report.json b/tests/golden/M16-GAP-00034/build-modifier-local-exact-report.json new file mode 100644 index 00000000..887ff646 --- /dev/null +++ b/tests/golden/M16-GAP-00034/build-modifier-local-exact-report.json @@ -0,0 +1,45 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00034", + "operation": "BUILD_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", + "sha256": "46b05aed641ab8cd6cc280587cf9672223190c2b730af8d8c21f1cf98cb68901" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00034/build-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapBuildMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapBuild", + "parameters": { + "flag": 5, + "length": 12, + "mode": 5, + "persistentUid": 421891574, + "randomize": 0, + "seed": 17, + "start": 3, + "typeCode": 4 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": false, + "showViewport": true, + "type": "BUILD", + "uuid": "modifier:object:WebGapBuildObject:421891574" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00035" +} diff --git a/tests/golden/M16-GAP-00034/manifest.json b/tests/golden/M16-GAP-00034/manifest.json new file mode 100644 index 00000000..f66d7b74 --- /dev/null +++ b/tests/golden/M16-GAP-00034/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00034", + "parentTask": "M16-GAP-00033", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "BUILD_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00033/manifest.json", "sha256": "5343b375977ea4e9dcfffa023bbcb6313a2a3d2e23b76b35e5b138f60d7f5a29"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", "sha256": "46b05aed641ab8cd6cc280587cf9672223190c2b730af8d8c21f1cf98cb68901"}, + "generator": {"path": "tools/web/generated/M16-GAP-00034.py", "sha256": "4523e086c326df712e621a9fdbc54bd29af0d94d241a09c437a247f824bbd8db"}, + "desktopChecker": {"path": "tools/web/check-build-modifier-desktop.py", "sha256": "18bbc10043f8a8820370fb4ea6c5a411398e4622c7956fea20add56f1f8d1087"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "ff620b70f28a4e3c67a2c217929732bbcf43e86a476cccb3ece21c47356adf48"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00034/build-modifier-desktop-report.json", "sha256": "b05d06b2408cfa2b0509489434d80489e11d967748f48639d1d50febbcd64974"}, + "webReport": {"path": "tests/golden/M16-GAP-00034/build-modifier-local-exact-report.json", "sha256": "6e5e3f89148decd1996802bddf903ee704700308be90e1af9c3c66e7e58796fa"} + }, + "nextTask": "M16-GAP-00035" +} diff --git a/tests/golden/M16-GAP-00034/task-context.json b/tests/golden/M16-GAP-00034/task-context.json new file mode 100644 index 00000000..9a83cb98 --- /dev/null +++ b/tests/golden/M16-GAP-00034/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00034", + "parentTask": "M16-GAP-00033", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:BUILD data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:BUILD", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00034.py -- tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00034", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00034" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00034.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7097, + "contextRemainingTokens": 1773 + }, + "source": { + "bytes": 6903, + "tokens": 1727 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00034.py", + "bytes": 1180, + "tokens": 295 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend", + "bytes": 86383, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 120325, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00034/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00034.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00034/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1180, + "tokens": 295 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00035", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00034.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00033/manifest.json", + "parentStatus": "docs/status/M16-GAP-00033.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00034.md", + "tests/golden/M16-GAP-00033/manifest.json", + "docs/status/M16-GAP-00033.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00033", + "parentTask": "M16-GAP-00032", + "status": "done", + "nextTask": "M16-GAP-00034", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00033 Status", + "status: done ", + "task: BOOLEAN modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: BOOLEAN modifier identity, Difference operation, Exact solver and cutter target linkage for `mesh:WebGapBooleanObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapBoolean` with Difference/Exact settings and stable cutter target; save/reopen is exact.", + "- WASM/Main exposes the same modifier parameters and target dependency from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1714, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 429 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00034.md", + "bytes": 1714, + "lines": 38, + "tokens": 429 + }, + { + "path": "tests/golden/M16-GAP-00033/manifest.json", + "bytes": 2170, + "lines": 26, + "tokens": 543 + }, + { + "path": "docs/status/M16-GAP-00033.md", + "bytes": 851, + "lines": 19, + "tokens": 213 + } + ], + "sourceTokens": 1727, + "evidenceFiles": 1, + "evidenceBytes": 1180, + "evidenceTokens": 295, + "totalTokens": 2022, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00035/cast-modifier-desktop-report.json b/tests/golden/M16-GAP-00035/cast-modifier-desktop-report.json new file mode 100644 index 00000000..df8c5e52 --- /dev/null +++ b/tests/golden/M16-GAP-00035/cast-modifier-desktop-report.json @@ -0,0 +1,27 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", + "fixtureSha256": "7dfe1faa6b605f6bd394f07c4da96a3e70401eeedd00714b3dbf533d0100ed4e", + "modifier": { + "meshId": "mesh:WebGapCastMesh", + "modifier": { + "castType": "CUBOID", + "factor": 0.65, + "name": "WebGapCast", + "radius": 2.5, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CAST", + "typeCode": 17, + "useX": true, + "useY": false, + "useZ": true + } + }, + "operation": "CAST_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00035" +} diff --git a/tests/golden/M16-GAP-00035/cast-modifier-local-exact-report.json b/tests/golden/M16-GAP-00035/cast-modifier-local-exact-report.json new file mode 100644 index 00000000..44d3e4ad --- /dev/null +++ b/tests/golden/M16-GAP-00035/cast-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00035", + "operation": "CAST_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", + "sha256": "7dfe1faa6b605f6bd394f07c4da96a3e70401eeedd00714b3dbf533d0100ed4e" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00035/cast-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapCastMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapCast", + "parameters": { + "factor": 0.6499999761581421, + "flag": 5, + "mode": 3, + "persistentUid": 117463478, + "radius": 2.5, + "typeCode": 17 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CAST", + "uuid": "modifier:object:WebGapCastObject:117463478" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00036" +} diff --git a/tests/golden/M16-GAP-00035/manifest.json b/tests/golden/M16-GAP-00035/manifest.json new file mode 100644 index 00000000..0ba37ac3 --- /dev/null +++ b/tests/golden/M16-GAP-00035/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00035", + "parentTask": "M16-GAP-00034", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CAST_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00034/manifest.json", "sha256": "137c50a05af32efdab54974f9f63d980394fff204f1ec39b2f522324f906ace6"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", "sha256": "7dfe1faa6b605f6bd394f07c4da96a3e70401eeedd00714b3dbf533d0100ed4e"}, + "generator": {"path": "tools/web/generated/M16-GAP-00035.py", "sha256": "24e6f54012d0454bfd6dc99a0fa6fe9fbfd3482781534479cdc1afb461305324"}, + "desktopChecker": {"path": "tools/web/check-cast-modifier-desktop.py", "sha256": "c8a28c4f06077a9649b150cde2537055f64c0b27163b820148ba81e36b49c251"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "6bef66d353d44bbca3317bcac48e9b00d22815d97945216fb201fbf555b88131"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00035/cast-modifier-desktop-report.json", "sha256": "46d920371f2b315034286e20db585b5830edde5c12f97470db05141acdfa3975"}, + "webReport": {"path": "tests/golden/M16-GAP-00035/cast-modifier-local-exact-report.json", "sha256": "56d0c12614b99a60617ca6b3aaa8308c103b0d926c67ffa6d374713f1939923c"} + }, + "nextTask": "M16-GAP-00036" +} diff --git a/tests/golden/M16-GAP-00035/task-context.json b/tests/golden/M16-GAP-00035/task-context.json new file mode 100644 index 00000000..814bff4a --- /dev/null +++ b/tests/golden/M16-GAP-00035/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00035", + "parentTask": "M16-GAP-00034", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:CAST data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:CAST", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00035.py -- tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00035", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00035" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00035.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7101, + "contextRemainingTokens": 1774 + }, + "source": { + "bytes": 6899, + "tokens": 1726 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00035.py", + "bytes": 1302, + "tokens": 326 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend", + "bytes": 86512, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 123616, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00035/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00035.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00035/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1302, + "tokens": 326 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00036", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00035.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00034/manifest.json", + "parentStatus": "docs/status/M16-GAP-00034.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00035.md", + "tests/golden/M16-GAP-00034/manifest.json", + "docs/status/M16-GAP-00034.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00034", + "parentTask": "M16-GAP-00033", + "status": "done", + "nextTask": "M16-GAP-00035", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00034 Status", + "status: done ", + "task: BUILD modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: BUILD modifier identity, frame start/length, randomization flags/seed and visibility modes for `mesh:WebGapBuildMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapBuild` with start 3, length 12 and stable seed; save/reopen is exact.", + "- Fixed reader field decoding for BUILD `randomize`/`seed` and rebuilt the Chromium WASM engine; WASM/Main exposes matching fields from the same fixture." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1709, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 428 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00035.md", + "bytes": 1709, + "lines": 38, + "tokens": 428 + }, + { + "path": "tests/golden/M16-GAP-00034/manifest.json", + "bytes": 2160, + "lines": 26, + "tokens": 540 + }, + { + "path": "docs/status/M16-GAP-00034.md", + "bytes": 862, + "lines": 19, + "tokens": 216 + } + ], + "sourceTokens": 1726, + "evidenceFiles": 1, + "evidenceBytes": 1302, + "evidenceTokens": 326, + "totalTokens": 2052, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00036/cloth-modifier-desktop-report.json b/tests/golden/M16-GAP-00036/cloth-modifier-desktop-report.json new file mode 100644 index 00000000..a73ced86 --- /dev/null +++ b/tests/golden/M16-GAP-00036/cloth-modifier-desktop-report.json @@ -0,0 +1,21 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", + "fixtureSha256": "c2da02610f891f4de38f3b8d55929a599c84528d3c67317a8e698854367d2d74", + "modifier": { + "meshId": "mesh:WebGapClothMesh", + "modifier": { + "name": "WebGapCloth", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CLOTH", + "typeCode": 22 + } + }, + "operation": "CLOTH_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00036" +} diff --git a/tests/golden/M16-GAP-00036/cloth-modifier-local-exact-report.json b/tests/golden/M16-GAP-00036/cloth-modifier-local-exact-report.json new file mode 100644 index 00000000..1ea6af31 --- /dev/null +++ b/tests/golden/M16-GAP-00036/cloth-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00036", + "operation": "CLOTH_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", + "sha256": "c2da02610f891f4de38f3b8d55929a599c84528d3c67317a8e698854367d2d74" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00036/cloth-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapClothMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapCloth", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 2008667047, + "typeCode": 22 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CLOTH", + "uuid": "modifier:object:WebGapClothObject:2008667047" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00037" +} diff --git a/tests/golden/M16-GAP-00036/manifest.json b/tests/golden/M16-GAP-00036/manifest.json new file mode 100644 index 00000000..1b234dff --- /dev/null +++ b/tests/golden/M16-GAP-00036/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00036", + "parentTask": "M16-GAP-00035", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CLOTH_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00035/manifest.json", "sha256": "ed79f18df0fdd6e0ee1960df56f70801bc81a604659d4f1349c3f68705912d6d"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", "sha256": "c2da02610f891f4de38f3b8d55929a599c84528d3c67317a8e698854367d2d74"}, + "generator": {"path": "tools/web/generated/M16-GAP-00036.py", "sha256": "219d0f2ecc7b67050865a46163e64cf7b28de75ce5c8cc52cdcf3a32817bd093"}, + "desktopChecker": {"path": "tools/web/check-cloth-modifier-desktop.py", "sha256": "308e449c9d896a870f33c8eb15fb6604a4fe7a22f646d754d356d5bc55fd94dc"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "6e6a8eff5d7d90d043e530802c76ae5607210de95ff603e95cf3e48f018f830e"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00036/cloth-modifier-desktop-report.json", "sha256": "bcfa83207cc5d5d6d971c41d8bb649d272c7e8f03e7499dc0efa4f3bbcb4d1ef"}, + "webReport": {"path": "tests/golden/M16-GAP-00036/cloth-modifier-local-exact-report.json", "sha256": "37344e3d5c930fb6815016b03432a6f86a2e763a89546e2e435e0f957f99270a"} + }, + "nextTask": "M16-GAP-00037" +} diff --git a/tests/golden/M16-GAP-00036/task-context.json b/tests/golden/M16-GAP-00036/task-context.json new file mode 100644 index 00000000..7fe3516c --- /dev/null +++ b/tests/golden/M16-GAP-00036/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00036", + "parentTask": "M16-GAP-00035", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:CLOTH data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:CLOTH", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00036.py -- tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00036", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00036" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00036.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7168, + "contextRemainingTokens": 1791 + }, + "source": { + "bytes": 6832, + "tokens": 1709 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00036.py", + "bytes": 1008, + "tokens": 252 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend", + "bytes": 86552, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 126602, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00036/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00036.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00036/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1008, + "tokens": 252 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00037", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00036.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00035/manifest.json", + "parentStatus": "docs/status/M16-GAP-00035.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00036.md", + "tests/golden/M16-GAP-00035/manifest.json", + "docs/status/M16-GAP-00035.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00035", + "parentTask": "M16-GAP-00034", + "status": "done", + "nextTask": "M16-GAP-00036", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00035 Status", + "status: done ", + "task: CAST modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: CAST modifier identity, factor, radius, cast mode flags and visibility modes for `mesh:WebGapCastMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapCast` with factor 0.65, radius 2.5 and stable cast flags; save/reopen is exact.", + "- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1714, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 429 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00036.md", + "bytes": 1714, + "lines": 38, + "tokens": 429 + }, + { + "path": "tests/golden/M16-GAP-00035/manifest.json", + "bytes": 2155, + "lines": 26, + "tokens": 539 + }, + { + "path": "docs/status/M16-GAP-00035.md", + "bytes": 795, + "lines": 19, + "tokens": 199 + } + ], + "sourceTokens": 1709, + "evidenceFiles": 1, + "evidenceBytes": 1008, + "evidenceTokens": 252, + "totalTokens": 1961, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00037/collision-modifier-desktop-report.json b/tests/golden/M16-GAP-00037/collision-modifier-desktop-report.json new file mode 100644 index 00000000..ea390e4a --- /dev/null +++ b/tests/golden/M16-GAP-00037/collision-modifier-desktop-report.json @@ -0,0 +1,21 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", + "fixtureSha256": "20cd128c83e9729377864f496c85393a2090c72a22f7d1c0b15f834293100764", + "modifier": { + "meshId": "mesh:WebGapCollisionMesh", + "modifier": { + "name": "WebGapCollision", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "COLLISION", + "typeCode": 23 + } + }, + "operation": "COLLISION_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00037" +} diff --git a/tests/golden/M16-GAP-00037/collision-modifier-local-exact-report.json b/tests/golden/M16-GAP-00037/collision-modifier-local-exact-report.json new file mode 100644 index 00000000..16f7bfbf --- /dev/null +++ b/tests/golden/M16-GAP-00037/collision-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00037", + "operation": "COLLISION_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", + "sha256": "20cd128c83e9729377864f496c85393a2090c72a22f7d1c0b15f834293100764" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00037/collision-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapCollisionMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapCollision", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 955736860, + "typeCode": 23 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "COLLISION", + "uuid": "modifier:object:WebGapCollisionObject:955736860" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00038" +} diff --git a/tests/golden/M16-GAP-00037/manifest.json b/tests/golden/M16-GAP-00037/manifest.json new file mode 100644 index 00000000..a2a250d7 --- /dev/null +++ b/tests/golden/M16-GAP-00037/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00037", + "parentTask": "M16-GAP-00036", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "COLLISION_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00036/manifest.json", "sha256": "8b451d833ea14dbac429a03f4c552ca82c16c3baba378d988d30d12f3e951a86"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", "sha256": "20cd128c83e9729377864f496c85393a2090c72a22f7d1c0b15f834293100764"}, + "generator": {"path": "tools/web/generated/M16-GAP-00037.py", "sha256": "b96eb3c62c590e55be3e442757a40c30b3b9c1deb8abc67d71f61b00b9c61fc1"}, + "desktopChecker": {"path": "tools/web/check-collision-modifier-desktop.py", "sha256": "21d816a1c929b96c873d15a719ee79187ba7201d79740a2ba9ccf81e4e566a32"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "ca0e546f0c8f7a7a0d209d7a4e97de38d78fc7dccfdf50d35dd772123533bad4"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00037/collision-modifier-desktop-report.json", "sha256": "be458864a8ce628d18002e69cbba9d524377fadff0bb7a3c3a6ed07a6fcb6bc0"}, + "webReport": {"path": "tests/golden/M16-GAP-00037/collision-modifier-local-exact-report.json", "sha256": "3352147756f312df1ffb4b9c889347e74403147cafb770128c6fbd61810acc8a"} + }, + "nextTask": "M16-GAP-00038" +} diff --git a/tests/golden/M16-GAP-00037/task-context.json b/tests/golden/M16-GAP-00037/task-context.json new file mode 100644 index 00000000..d756f7aa --- /dev/null +++ b/tests/golden/M16-GAP-00037/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00037", + "parentTask": "M16-GAP-00036", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:COLLISION data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:COLLISION", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00037.py -- tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00037", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00037" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00037.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7225, + "contextRemainingTokens": 1805 + }, + "source": { + "bytes": 6775, + "tokens": 1695 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00037.py", + "bytes": 936, + "tokens": 234 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend", + "bytes": 86434, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 129399, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00037/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00037.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00037/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 936, + "tokens": 234 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00038", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00037.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00036/manifest.json", + "parentStatus": "docs/status/M16-GAP-00036.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00037.md", + "tests/golden/M16-GAP-00036/manifest.json", + "docs/status/M16-GAP-00036.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00036", + "parentTask": "M16-GAP-00035", + "status": "done", + "nextTask": "M16-GAP-00037", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00036 Status", + "status: done ", + "task: CLOTH modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: CLOTH modifier identity and visibility modes for `mesh:WebGapClothMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapCloth`; save/reopen is exact.", + "- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1734, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 434 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00037.md", + "bytes": 1734, + "lines": 38, + "tokens": 434 + }, + { + "path": "tests/golden/M16-GAP-00036/manifest.json", + "bytes": 2160, + "lines": 26, + "tokens": 540 + }, + { + "path": "docs/status/M16-GAP-00036.md", + "bytes": 713, + "lines": 19, + "tokens": 179 + } + ], + "sourceTokens": 1695, + "evidenceFiles": 1, + "evidenceBytes": 936, + "evidenceTokens": 234, + "totalTokens": 1929, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00038/corrective-smooth-modifier-desktop-report.json b/tests/golden/M16-GAP-00038/corrective-smooth-modifier-desktop-report.json new file mode 100644 index 00000000..34747eef --- /dev/null +++ b/tests/golden/M16-GAP-00038/corrective-smooth-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", + "fixtureSha256": "059890c5b228851c6e32643e71a142523cb1c0f02726a72902a6b88e24e71fbf", + "modifier": { + "meshId": "mesh:WebGapCorrectiveSmoothObjectMesh", + "modifier": { + "name": "WebGapCorrectiveSmooth", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CORRECTIVE_SMOOTH", + "typeCode": 51 + }, + "task": "M16-GAP-00038" + }, + "operation": "CORRECTIVE_SMOOTH_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00038" +} diff --git a/tests/golden/M16-GAP-00038/corrective-smooth-modifier-local-exact-report.json b/tests/golden/M16-GAP-00038/corrective-smooth-modifier-local-exact-report.json new file mode 100644 index 00000000..3f3d11dc --- /dev/null +++ b/tests/golden/M16-GAP-00038/corrective-smooth-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00038", + "operation": "CORRECTIVE_SMOOTH_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", + "sha256": "059890c5b228851c6e32643e71a142523cb1c0f02726a72902a6b88e24e71fbf" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00038/corrective-smooth-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapCorrectiveSmoothObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapCorrectiveSmooth", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 697597798, + "typeCode": 51 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CORRECTIVE_SMOOTH", + "uuid": "modifier:object:WebGapCorrectiveSmoothObject:697597798" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00039" +} diff --git a/tests/golden/M16-GAP-00038/manifest.json b/tests/golden/M16-GAP-00038/manifest.json new file mode 100644 index 00000000..9f42ba09 --- /dev/null +++ b/tests/golden/M16-GAP-00038/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00038", + "parentTask": "M16-GAP-00037", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CORRECTIVE_SMOOTH_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00037/manifest.json", "sha256": "a4506659340af52a0ede5af619362e5a3c07463a2718cb7cdc64f97647145d71"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", "sha256": "059890c5b228851c6e32643e71a142523cb1c0f02726a72902a6b88e24e71fbf"}, + "generator": {"path": "tools/web/generated/M16-GAP-00038.py", "sha256": "e0726e2db3c360e0397d6aa1d480a63e5f4800c381c9d4e1cde33e36ebc0a5dc"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "d548079159b6680090c29cd344d846aef39fea32bca09cc698531b0de0a2bb68"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "2ecbf4c74f335a96772479742407d51926fc476416e7d3cff9aace9ae74ceb91"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00038/corrective-smooth-modifier-desktop-report.json", "sha256": "81b0dac10d007f32a7ccd1939fb82494ad230cfd09a5d5e3d9051716631a6012"}, + "webReport": {"path": "tests/golden/M16-GAP-00038/corrective-smooth-modifier-local-exact-report.json", "sha256": "e0f51299b53f2694cc0421d249acc633d6d3db07d2302d1358927aab15981d0b"} + }, + "nextTask": "M16-GAP-00039" +} diff --git a/tests/golden/M16-GAP-00038/task-context.json b/tests/golden/M16-GAP-00038/task-context.json new file mode 100644 index 00000000..5e0998c5 --- /dev/null +++ b/tests/golden/M16-GAP-00038/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00038", + "parentTask": "M16-GAP-00037", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:CORRECTIVE_SMOOTH data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:CORRECTIVE_SMOOTH", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00038.py -- tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00038", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00038" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00038.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7145, + "contextRemainingTokens": 1785 + }, + "source": { + "bytes": 6855, + "tokens": 1715 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00038.py", + "bytes": 438, + "tokens": 110 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00038-modifier-CORRECTIVE_SMOOTH.blend", + "bytes": 86517, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 132863, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00038/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00038.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00038/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 438, + "tokens": 110 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00039", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00038.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00037/manifest.json", + "parentStatus": "docs/status/M16-GAP-00037.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00038.md", + "tests/golden/M16-GAP-00037/manifest.json", + "docs/status/M16-GAP-00037.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00037", + "parentTask": "M16-GAP-00036", + "status": "done", + "nextTask": "M16-GAP-00038", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00037 Status", + "status: done ", + "task: COLLISION modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: COLLISION modifier identity and visibility modes for `mesh:WebGapCollisionMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapCollision`; save/reopen is exact.", + "- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1774, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 444 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00038.md", + "bytes": 1774, + "lines": 38, + "tokens": 444 + }, + { + "path": "tests/golden/M16-GAP-00037/manifest.json", + "bytes": 2180, + "lines": 26, + "tokens": 545 + }, + { + "path": "docs/status/M16-GAP-00037.md", + "bytes": 733, + "lines": 19, + "tokens": 184 + } + ], + "sourceTokens": 1715, + "evidenceFiles": 1, + "evidenceBytes": 438, + "evidenceTokens": 110, + "totalTokens": 1825, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00039/curve-modifier-desktop-report.json b/tests/golden/M16-GAP-00039/curve-modifier-desktop-report.json new file mode 100644 index 00000000..905ab541 --- /dev/null +++ b/tests/golden/M16-GAP-00039/curve-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", + "fixtureSha256": "b68aa51151cf19b1795701967eb1fa514387c04b967c646547ed33a727a8a58a", + "modifier": { + "meshId": "mesh:WebGapCurveModifierObjectMesh", + "modifier": { + "name": "WebGapCurveModifier", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CURVE", + "typeCode": 3 + }, + "task": "M16-GAP-00039" + }, + "operation": "CURVE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00039" +} diff --git a/tests/golden/M16-GAP-00039/curve-modifier-local-exact-report.json b/tests/golden/M16-GAP-00039/curve-modifier-local-exact-report.json new file mode 100644 index 00000000..8e241af4 --- /dev/null +++ b/tests/golden/M16-GAP-00039/curve-modifier-local-exact-report.json @@ -0,0 +1,44 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00039", + "operation": "CURVE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", + "sha256": "b68aa51151cf19b1795701967eb1fa514387c04b967c646547ed33a727a8a58a" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00039/curve-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapCurveModifierObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapCurveModifier", + "parameters": { + "curveFlags": 0, + "deformAxis": 1, + "flag": 5, + "mode": 3, + "persistentUid": 1954521455, + "typeCode": 3, + "vertexGroup": "" + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "CURVE", + "uuid": "modifier:object:WebGapCurveModifierObject:1954521455" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00040" +} diff --git a/tests/golden/M16-GAP-00039/manifest.json b/tests/golden/M16-GAP-00039/manifest.json new file mode 100644 index 00000000..ae3fe0be --- /dev/null +++ b/tests/golden/M16-GAP-00039/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00039", + "parentTask": "M16-GAP-00038", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "CURVE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00038/manifest.json", "sha256": "047c4cd2a500a80e4be02ad2f55d796b03609f9327090e4369225f6aba4fbf6e"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", "sha256": "b68aa51151cf19b1795701967eb1fa514387c04b967c646547ed33a727a8a58a"}, + "generator": {"path": "tools/web/generated/M16-GAP-00039.py", "sha256": "3709078f49c92c34424c6e47d7f8870ba81c0bc2765bb5522199adfd4231e8e5"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "d548079159b6680090c29cd344d846aef39fea32bca09cc698531b0de0a2bb68"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "ed94ef09c48453aecea597074d9e28e48abb5c99f6967d26f5c70f1e462b9d9e"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00039/curve-modifier-desktop-report.json", "sha256": "7758f93e53d1b01a80e7cc2d4ce4948cadfb6882a2eec0d34e7e9fbdc7ac69bf"}, + "webReport": {"path": "tests/golden/M16-GAP-00039/curve-modifier-local-exact-report.json", "sha256": "7b3cf6ec8eec1a1b0c8d630578bfa09b29d8e8597ed860aa98737e7c7798cf91"} + }, + "nextTask": "M16-GAP-00040" +} diff --git a/tests/golden/M16-GAP-00039/task-context.json b/tests/golden/M16-GAP-00039/task-context.json new file mode 100644 index 00000000..a80da59a --- /dev/null +++ b/tests/golden/M16-GAP-00039/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00039", + "parentTask": "M16-GAP-00038", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:CURVE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:CURVE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00039.py -- tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00039", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00039" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00039.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6983, + "contextRemainingTokens": 1744 + }, + "source": { + "bytes": 7017, + "tokens": 1756 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00039.py", + "bytes": 412, + "tokens": 103 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00039-modifier-CURVE.blend", + "bytes": 86516, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 132957, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00039/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00039.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00039/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 412, + "tokens": 103 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00040", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00039.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00038/manifest.json", + "parentStatus": "docs/status/M16-GAP-00038.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00039.md", + "tests/golden/M16-GAP-00038/manifest.json", + "docs/status/M16-GAP-00038.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00038", + "parentTask": "M16-GAP-00037", + "status": "done", + "nextTask": "M16-GAP-00039", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00038 Status", + "status: done ", + "task: CORRECTIVE_SMOOTH modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: CORRECTIVE_SMOOTH modifier identity and visibility modes for `mesh:WebGapCorrectiveSmoothObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapCorrectiveSmooth`; save/reopen is exact.", + "- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1714, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 429 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00039.md", + "bytes": 1714, + "lines": 38, + "tokens": 429 + }, + { + "path": "tests/golden/M16-GAP-00038/manifest.json", + "bytes": 2366, + "lines": 27, + "tokens": 592 + }, + { + "path": "docs/status/M16-GAP-00038.md", + "bytes": 769, + "lines": 19, + "tokens": 193 + } + ], + "sourceTokens": 1756, + "evidenceFiles": 1, + "evidenceBytes": 412, + "evidenceTokens": 103, + "totalTokens": 1859, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00040/data-transfer-modifier-desktop-report.json b/tests/golden/M16-GAP-00040/data-transfer-modifier-desktop-report.json new file mode 100644 index 00000000..869c5dfb --- /dev/null +++ b/tests/golden/M16-GAP-00040/data-transfer-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", + "fixtureSha256": "5cbcab6db651f6b44387e6688cf02a8813aeeccb07e6fdc5fbb6e4ac34da050b", + "modifier": { + "meshId": "mesh:WebGapDataTransferObjectMesh", + "modifier": { + "name": "WebGapDataTransfer", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DATA_TRANSFER", + "typeCode": 49 + }, + "task": "M16-GAP-00040" + }, + "operation": "DATA_TRANSFER_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00040" +} diff --git a/tests/golden/M16-GAP-00040/data-transfer-modifier-local-exact-report.json b/tests/golden/M16-GAP-00040/data-transfer-modifier-local-exact-report.json new file mode 100644 index 00000000..b8c1022c --- /dev/null +++ b/tests/golden/M16-GAP-00040/data-transfer-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00040", + "operation": "DATA_TRANSFER_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", + "sha256": "5cbcab6db651f6b44387e6688cf02a8813aeeccb07e6fdc5fbb6e4ac34da050b" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00040/data-transfer-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapDataTransferObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapDataTransfer", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 864389176, + "typeCode": 49 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DATA_TRANSFER", + "uuid": "modifier:object:WebGapDataTransferObject:864389176" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00041" +} diff --git a/tests/golden/M16-GAP-00040/manifest.json b/tests/golden/M16-GAP-00040/manifest.json new file mode 100644 index 00000000..da1a3582 --- /dev/null +++ b/tests/golden/M16-GAP-00040/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00040", + "parentTask": "M16-GAP-00039", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "DATA_TRANSFER_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00039/manifest.json", "sha256": "4f85c33a57e35c628ce8bf041bdf30df37e298de9cc961c93c969e8bfbb0e276"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", "sha256": "5cbcab6db651f6b44387e6688cf02a8813aeeccb07e6fdc5fbb6e4ac34da050b"}, + "generator": {"path": "tools/web/generated/M16-GAP-00040.py", "sha256": "62aec1123186b57c5e1ffa58eea9833ea5d996a7509d49473331ac5f1843be44"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "d548079159b6680090c29cd344d846aef39fea32bca09cc698531b0de0a2bb68"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "6fd4494c21de3c807d31e244de8361156f5bd0a69b10529e3c80accc6a8743bd"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00040/data-transfer-modifier-desktop-report.json", "sha256": "3b75a6318947c1c18b04af6a05bc275aac4f6fde4352cc249c431c64fde7174d"}, + "webReport": {"path": "tests/golden/M16-GAP-00040/data-transfer-modifier-local-exact-report.json", "sha256": "45c8b9c2b0a07902e7680fc44b648cd0fc349e4a248c52824c3ed70debb0c9a1"} + }, + "nextTask": "M16-GAP-00041" +} diff --git a/tests/golden/M16-GAP-00040/task-context.json b/tests/golden/M16-GAP-00040/task-context.json new file mode 100644 index 00000000..ed6661a4 --- /dev/null +++ b/tests/golden/M16-GAP-00040/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00040", + "parentTask": "M16-GAP-00039", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:DATA_TRANSFER data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:DATA_TRANSFER", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00040.py -- tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00040", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00040" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00040.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7024, + "contextRemainingTokens": 1755 + }, + "source": { + "bytes": 6976, + "tokens": 1745 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00040.py", + "bytes": 427, + "tokens": 107 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00040-modifier-DATA_TRANSFER.blend", + "bytes": 86540, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 133058, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00040/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00040.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00040/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 427, + "tokens": 107 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00041", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00040.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00039/manifest.json", + "parentStatus": "docs/status/M16-GAP-00039.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00040.md", + "tests/golden/M16-GAP-00039/manifest.json", + "docs/status/M16-GAP-00039.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00039", + "parentTask": "M16-GAP-00038", + "status": "done", + "nextTask": "M16-GAP-00040", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00039 Status", + "status: done ", + "task: CURVE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: CURVE modifier identity and visibility modes for `mesh:WebGapCurveModifierObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapCurveModifier`; save/reopen is exact.", + "- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1754, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 439 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00040.md", + "bytes": 1754, + "lines": 38, + "tokens": 439 + }, + { + "path": "tests/golden/M16-GAP-00039/manifest.json", + "bytes": 2318, + "lines": 27, + "tokens": 580 + }, + { + "path": "docs/status/M16-GAP-00039.md", + "bytes": 736, + "lines": 19, + "tokens": 184 + } + ], + "sourceTokens": 1745, + "evidenceFiles": 1, + "evidenceBytes": 427, + "evidenceTokens": 107, + "totalTokens": 1852, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00041/decimate-modifier-desktop-report.json b/tests/golden/M16-GAP-00041/decimate-modifier-desktop-report.json new file mode 100644 index 00000000..66d3395c --- /dev/null +++ b/tests/golden/M16-GAP-00041/decimate-modifier-desktop-report.json @@ -0,0 +1,27 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", + "fixtureSha256": "24161163630d29eedb3dd194070dff9b5a4f762f8a0ce4889b9e6a5310e54153", + "modifier": { + "meshId": "mesh:WebGapDecimateObjectMesh", + "modifier": { + "angleLimit": 0.4000000059604645, + "decimateMode": 0, + "decimateType": "COLLAPSE", + "iterations": 2, + "name": "WebGapDecimate", + "ratio": 0.6499999761581421, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DECIMATE", + "typeCode": 6 + }, + "task": "M16-GAP-00041" + }, + "operation": "DECIMATE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00041" +} diff --git a/tests/golden/M16-GAP-00041/decimate-modifier-local-exact-report.json b/tests/golden/M16-GAP-00041/decimate-modifier-local-exact-report.json new file mode 100644 index 00000000..332ecc7d --- /dev/null +++ b/tests/golden/M16-GAP-00041/decimate-modifier-local-exact-report.json @@ -0,0 +1,47 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00041", + "operation": "DECIMATE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", + "sha256": "24161163630d29eedb3dd194070dff9b5a4f762f8a0ce4889b9e6a5310e54153" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00041/decimate-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapDecimateObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapDecimate", + "parameters": { + "angleLimit": 0.4000000059604645, + "decimateMode": 0, + "delimit": 0, + "flag": 5, + "iterations": 2, + "mode": 3, + "persistentUid": 559072788, + "ratio": 0.6499999761581421, + "symmetryAxis": 0, + "typeCode": 6 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DECIMATE", + "uuid": "modifier:object:WebGapDecimateObject:559072788" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00042" +} diff --git a/tests/golden/M16-GAP-00041/manifest.json b/tests/golden/M16-GAP-00041/manifest.json new file mode 100644 index 00000000..ab7d8af8 --- /dev/null +++ b/tests/golden/M16-GAP-00041/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00041", + "parentTask": "M16-GAP-00040", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "DECIMATE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00040/manifest.json", "sha256": "115064d3b16a2b8b36e19a8d92b4c3a4dd761c76ec57d67a803a66b02b2b03d8"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", "sha256": "24161163630d29eedb3dd194070dff9b5a4f762f8a0ce4889b9e6a5310e54153"}, + "generator": {"path": "tools/web/generated/M16-GAP-00041.py", "sha256": "241568c40f9308d09a1d33d87b47bb2549204f28820901133b778b640f086ec2"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "95ba2c90e7126cc762703f12522362407027af84194b3c8ebd32caf1301b14b7"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "65c14296176456e1b8452569ad2cd5e0877587d6b0879e70cd9ed7188ad4fc02"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00041/decimate-modifier-desktop-report.json", "sha256": "a056e81f2d0dceca465b185060d9874f4e0a10099b0820a42e50de3c20f56433"}, + "webReport": {"path": "tests/golden/M16-GAP-00041/decimate-modifier-local-exact-report.json", "sha256": "ac3efd1614cd440aff79d370f61a8243a69feac82d9aa4afb2c2d2ac2196d811"} + }, + "nextTask": "M16-GAP-00042" +} diff --git a/tests/golden/M16-GAP-00041/task-context.json b/tests/golden/M16-GAP-00041/task-context.json new file mode 100644 index 00000000..bf96acd3 --- /dev/null +++ b/tests/golden/M16-GAP-00041/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00041", + "parentTask": "M16-GAP-00040", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:DECIMATE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:DECIMATE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00041.py -- tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00041", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00041" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00041.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7007, + "contextRemainingTokens": 1750 + }, + "source": { + "bytes": 6993, + "tokens": 1750 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00041.py", + "bytes": 1026, + "tokens": 257 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00041-modifier-DECIMATE.blend", + "bytes": 86540, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 133566, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00041/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00041.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00041/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1026, + "tokens": 257 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00042", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00041.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00040/manifest.json", + "parentStatus": "docs/status/M16-GAP-00040.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00041.md", + "tests/golden/M16-GAP-00040/manifest.json", + "docs/status/M16-GAP-00040.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00040", + "parentTask": "M16-GAP-00039", + "status": "done", + "nextTask": "M16-GAP-00041", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00040 Status", + "status: done ", + "task: DATA_TRANSFER modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: DATA_TRANSFER modifier identity and visibility modes for `mesh:WebGapDataTransferObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapDataTransfer`; save/reopen is exact.", + "- WASM/Main exposes the same modifier stack from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1729, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 433 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00041.md", + "bytes": 1729, + "lines": 38, + "tokens": 433 + }, + { + "path": "tests/golden/M16-GAP-00040/manifest.json", + "bytes": 2350, + "lines": 27, + "tokens": 588 + }, + { + "path": "docs/status/M16-GAP-00040.md", + "bytes": 746, + "lines": 19, + "tokens": 187 + } + ], + "sourceTokens": 1750, + "evidenceFiles": 1, + "evidenceBytes": 1026, + "evidenceTokens": 257, + "totalTokens": 2007, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00042/displace-modifier-desktop-report.json b/tests/golden/M16-GAP-00042/displace-modifier-desktop-report.json new file mode 100644 index 00000000..f8bcc09a --- /dev/null +++ b/tests/golden/M16-GAP-00042/displace-modifier-desktop-report.json @@ -0,0 +1,27 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", + "fixtureSha256": "d6314c42a4bccfe4ff125bf19570bd8b52eb196f3cd3dfc82fcad21a5390ba76", + "modifier": { + "meshId": "mesh:WebGapDisplaceObjectMesh", + "modifier": { + "direction": 2, + "midLevel": 0.25, + "name": "WebGapDisplace", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "space": 0, + "strength": 0.75, + "textureMapping": 1, + "type": "DISPLACE", + "typeCode": 14 + }, + "task": "M16-GAP-00042" + }, + "operation": "DISPLACE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00042" +} diff --git a/tests/golden/M16-GAP-00042/displace-modifier-local-exact-report.json b/tests/golden/M16-GAP-00042/displace-modifier-local-exact-report.json new file mode 100644 index 00000000..222f0dcc --- /dev/null +++ b/tests/golden/M16-GAP-00042/displace-modifier-local-exact-report.json @@ -0,0 +1,47 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00042", + "operation": "DISPLACE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", + "sha256": "d6314c42a4bccfe4ff125bf19570bd8b52eb196f3cd3dfc82fcad21a5390ba76" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00042/displace-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapDisplaceObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapDisplace", + "parameters": { + "direction": 2, + "flag": 5, + "midLevel": 0.25, + "mode": 3, + "persistentUid": 44964863, + "space": 0, + "strength": 0.75, + "textureMapping": 1, + "typeCode": 14, + "vertexGroup": "" + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DISPLACE", + "uuid": "modifier:object:WebGapDisplaceObject:44964863" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00043" +} diff --git a/tests/golden/M16-GAP-00042/manifest.json b/tests/golden/M16-GAP-00042/manifest.json new file mode 100644 index 00000000..75c2176c --- /dev/null +++ b/tests/golden/M16-GAP-00042/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00042", + "parentTask": "M16-GAP-00041", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "DISPLACE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00041/manifest.json", "sha256": "02591ee5f0094ba2c027fa4349effa0e1d731305467d005e474c14b2292b5b8a"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", "sha256": "d6314c42a4bccfe4ff125bf19570bd8b52eb196f3cd3dfc82fcad21a5390ba76"}, + "generator": {"path": "tools/web/generated/M16-GAP-00042.py", "sha256": "b9ed8fdb43f5b4b7b1830881db7c770432f0023627429ffe51989e16b2f09746"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "daf88b0692e1decb4799d8b93f96ec91a6e3f4abc30e56b6b0a414173b60d712"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "5f00762a7267b62865071874213492a0fd11fb15c2e0e90b14890bbadf254a00"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00042/displace-modifier-desktop-report.json", "sha256": "8b5e69f2643e33607c36c6e786477d13c962eb041f64044be4b5d1277b2ad4a3"}, + "webReport": {"path": "tests/golden/M16-GAP-00042/displace-modifier-local-exact-report.json", "sha256": "f29ae1fd8d9dd004194347d9ab9d138d9c10db71ffae8baba554748de835fe09"} + }, + "nextTask": "M16-GAP-00043" +} diff --git a/tests/golden/M16-GAP-00042/task-context.json b/tests/golden/M16-GAP-00042/task-context.json new file mode 100644 index 00000000..08eccf7d --- /dev/null +++ b/tests/golden/M16-GAP-00042/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00042", + "parentTask": "M16-GAP-00041", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:DISPLACE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:DISPLACE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00042.py -- tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00042", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00042" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00042.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6906, + "contextRemainingTokens": 1725 + }, + "source": { + "bytes": 7094, + "tokens": 1775 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00042.py", + "bytes": 1028, + "tokens": 257 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00042-modifier-DISPLACE.blend", + "bytes": 86522, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 134156, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00042/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00042.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00042/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1028, + "tokens": 257 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00043", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00042.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00041/manifest.json", + "parentStatus": "docs/status/M16-GAP-00041.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00042.md", + "tests/golden/M16-GAP-00041/manifest.json", + "docs/status/M16-GAP-00041.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00041", + "parentTask": "M16-GAP-00040", + "status": "done", + "nextTask": "M16-GAP-00042", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00041 Status", + "status: done ", + "task: DECIMATE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: DECIMATE modifier metadata and collapse parameters for `mesh:WebGapDecimateObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapDecimate` with ratio 0.65, two iterations, collapse mode, and angle limit 0.4; save/reopen is exact.", + "- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1729, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 433 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00042.md", + "bytes": 1729, + "lines": 38, + "tokens": 433 + }, + { + "path": "tests/golden/M16-GAP-00041/manifest.json", + "bytes": 2330, + "lines": 27, + "tokens": 583 + }, + { + "path": "docs/status/M16-GAP-00041.md", + "bytes": 867, + "lines": 19, + "tokens": 217 + } + ], + "sourceTokens": 1775, + "evidenceFiles": 1, + "evidenceBytes": 1028, + "evidenceTokens": 257, + "totalTokens": 2032, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00043/dynamic-paint-modifier-desktop-report.json b/tests/golden/M16-GAP-00043/dynamic-paint-modifier-desktop-report.json new file mode 100644 index 00000000..794e0205 --- /dev/null +++ b/tests/golden/M16-GAP-00043/dynamic-paint-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", + "fixtureSha256": "f715974fc528ade28e3658a9468a36ba2ac8605f009c284ada97de3dec5091f1", + "modifier": { + "meshId": "mesh:WebGapDynamicPaintObjectMesh", + "modifier": { + "name": "WebGapDynamicPaint", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DYNAMIC_PAINT", + "typeCode": 40 + }, + "task": "M16-GAP-00043" + }, + "operation": "DYNAMIC_PAINT_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00043" +} diff --git a/tests/golden/M16-GAP-00043/dynamic-paint-modifier-local-exact-report.json b/tests/golden/M16-GAP-00043/dynamic-paint-modifier-local-exact-report.json new file mode 100644 index 00000000..5c76d52c --- /dev/null +++ b/tests/golden/M16-GAP-00043/dynamic-paint-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00043", + "operation": "DYNAMIC_PAINT_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", + "sha256": "f715974fc528ade28e3658a9468a36ba2ac8605f009c284ada97de3dec5091f1" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00043/dynamic-paint-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapDynamicPaintObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapDynamicPaint", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 1142069749, + "typeCode": 40 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "DYNAMIC_PAINT", + "uuid": "modifier:object:WebGapDynamicPaintObject:1142069749" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00044" +} diff --git a/tests/golden/M16-GAP-00043/manifest.json b/tests/golden/M16-GAP-00043/manifest.json new file mode 100644 index 00000000..05ca32c6 --- /dev/null +++ b/tests/golden/M16-GAP-00043/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00043", + "parentTask": "M16-GAP-00042", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "DYNAMIC_PAINT_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00042/manifest.json", "sha256": "2420cf04248b07c100bd5421cdd127f4efd86eae3dccf41b12620f056d7423b6"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", "sha256": "f715974fc528ade28e3658a9468a36ba2ac8605f009c284ada97de3dec5091f1"}, + "generator": {"path": "tools/web/generated/M16-GAP-00043.py", "sha256": "1fb842dde99a67cda98ec4a6feb139216ad277388b490ff65699e9f742ae095a"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "daf88b0692e1decb4799d8b93f96ec91a6e3f4abc30e56b6b0a414173b60d712"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "b87a00aae0be7c60980a80b2273cb2a2a93bc684b2666217ab7e3dee0cef2af3"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00043/dynamic-paint-modifier-desktop-report.json", "sha256": "d15d596c1c2fbf176c59b7fb933f6a2ceeb09ff578ba2cf894c12deec480471b"}, + "webReport": {"path": "tests/golden/M16-GAP-00043/dynamic-paint-modifier-local-exact-report.json", "sha256": "e04b9f0427010f85ffd5119eeb2d926ad0fa5d7099c67807ba46b6e66db5b0f3"} + }, + "nextTask": "M16-GAP-00044" +} diff --git a/tests/golden/M16-GAP-00043/task-context.json b/tests/golden/M16-GAP-00043/task-context.json new file mode 100644 index 00000000..8fd04def --- /dev/null +++ b/tests/golden/M16-GAP-00043/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00043", + "parentTask": "M16-GAP-00042", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:DYNAMIC_PAINT data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:DYNAMIC_PAINT", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00043.py -- tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00043", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00043" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00043.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6827, + "contextRemainingTokens": 1705 + }, + "source": { + "bytes": 7173, + "tokens": 1795 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00043.py", + "bytes": 428, + "tokens": 107 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00043-modifier-DYNAMIC_PAINT.blend", + "bytes": 86512, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 134257, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00043/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00043.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00043/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 428, + "tokens": 107 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00044", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00043.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00042/manifest.json", + "parentStatus": "docs/status/M16-GAP-00042.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00043.md", + "tests/golden/M16-GAP-00042/manifest.json", + "docs/status/M16-GAP-00042.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00042", + "parentTask": "M16-GAP-00041", + "status": "done", + "nextTask": "M16-GAP-00043", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00042 Status", + "status: done ", + "task: DISPLACE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: DISPLACE modifier direction, strength, level, space, and texture mapping for `mesh:WebGapDisplaceObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapDisplace` with Z direction, strength 0.75, mid-level 0.25, global space, and global texture mapping; save/reopen is exact.", + "- WASM/Main exposes the same modifier parameters from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1754, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 439 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00043.md", + "bytes": 1754, + "lines": 38, + "tokens": 439 + }, + { + "path": "tests/golden/M16-GAP-00042/manifest.json", + "bytes": 2330, + "lines": 27, + "tokens": 583 + }, + { + "path": "docs/status/M16-GAP-00042.md", + "bytes": 921, + "lines": 19, + "tokens": 231 + } + ], + "sourceTokens": 1795, + "evidenceFiles": 1, + "evidenceBytes": 428, + "evidenceTokens": 107, + "totalTokens": 1902, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00044/edge-split-modifier-desktop-report.json b/tests/golden/M16-GAP-00044/edge-split-modifier-desktop-report.json new file mode 100644 index 00000000..1d6b8816 --- /dev/null +++ b/tests/golden/M16-GAP-00044/edge-split-modifier-desktop-report.json @@ -0,0 +1,23 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", + "fixtureSha256": "825b593e3792dbb69379ae5d83713226fe8818317c1b68285a19e9070bd76bae", + "modifier": { + "meshId": "mesh:WebGapEdgeSplitObjectMesh", + "modifier": { + "name": "WebGapEdgeSplit", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "splitAngle": 0.3499999940395355, + "type": "EDGE_SPLIT", + "typeCode": 13 + }, + "task": "M16-GAP-00044" + }, + "operation": "EDGE_SPLIT_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00044" +} diff --git a/tests/golden/M16-GAP-00044/edge-split-modifier-local-exact-report.json b/tests/golden/M16-GAP-00044/edge-split-modifier-local-exact-report.json new file mode 100644 index 00000000..51f81e88 --- /dev/null +++ b/tests/golden/M16-GAP-00044/edge-split-modifier-local-exact-report.json @@ -0,0 +1,42 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00044", + "operation": "EDGE_SPLIT_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", + "sha256": "825b593e3792dbb69379ae5d83713226fe8818317c1b68285a19e9070bd76bae" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00044/edge-split-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapEdgeSplitObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "METADATA_ONLY", + "name": "WebGapEdgeSplit", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 1204352453, + "splitAngle": 0.3499999940395355, + "typeCode": 13 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "EDGE_SPLIT", + "uuid": "modifier:object:WebGapEdgeSplitObject:1204352453" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00045" +} diff --git a/tests/golden/M16-GAP-00044/manifest.json b/tests/golden/M16-GAP-00044/manifest.json new file mode 100644 index 00000000..4037433e --- /dev/null +++ b/tests/golden/M16-GAP-00044/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00044", + "parentTask": "M16-GAP-00043", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "EDGE_SPLIT_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00043/manifest.json", "sha256": "5ad7947dc7e6fd971965a5fa6945875ee2d61325e81b9e600542a3048b3f61a9"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", "sha256": "825b593e3792dbb69379ae5d83713226fe8818317c1b68285a19e9070bd76bae"}, + "generator": {"path": "tools/web/generated/M16-GAP-00044.py", "sha256": "835413a7f88c4f2eb6b508d1913f1eb20489b8b5b1b1c35bceb2d094ee4f7292"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "0a7b1676dd3b1b3d944c971acd4518cc2a7f83004fb231560a1a622ef2d23043"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "567ff6cd2cc5508903e94b7979f831b2098276349138d804d4bd5b82e8d3a2a5"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00044/edge-split-modifier-desktop-report.json", "sha256": "4f741f923ed60af4142691643fb70cd650b3e7c12507002595d8f52d78a41a61"}, + "webReport": {"path": "tests/golden/M16-GAP-00044/edge-split-modifier-local-exact-report.json", "sha256": "114e41e7c6f3238d4888b61f2d9fd59b37d4a9a4f2f7485fd1a9b9a48c8ba9ac"} + }, + "nextTask": "M16-GAP-00045" +} diff --git a/tests/golden/M16-GAP-00044/task-context.json b/tests/golden/M16-GAP-00044/task-context.json new file mode 100644 index 00000000..1112b669 --- /dev/null +++ b/tests/golden/M16-GAP-00044/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00044", + "parentTask": "M16-GAP-00043", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:EDGE_SPLIT data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:EDGE_SPLIT", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00044.py -- tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00044", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00044" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00044.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6845, + "contextRemainingTokens": 1710 + }, + "source": { + "bytes": 7155, + "tokens": 1790 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00044.py", + "bytes": 1008, + "tokens": 252 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00044-modifier-EDGE_SPLIT.blend", + "bytes": 86521, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 134497, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00044/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00044.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00044/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 1008, + "tokens": 252 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00045", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00044.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00043/manifest.json", + "parentStatus": "docs/status/M16-GAP-00043.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00044.md", + "tests/golden/M16-GAP-00043/manifest.json", + "docs/status/M16-GAP-00043.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00043", + "parentTask": "M16-GAP-00042", + "status": "done", + "nextTask": "M16-GAP-00044", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00043 Status", + "status: done ", + "task: DYNAMIC_PAINT modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: DYNAMIC_PAINT modifier identity, type code, visibility, and blocked evaluation status for `mesh:WebGapDynamicPaintObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapDynamicPaint`; save/reopen is exact.", + "- WASM/Main exposes the same modifier with typeCode 40 and the expected blocked evaluation status from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1739, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 435 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00044.md", + "bytes": 1739, + "lines": 38, + "tokens": 435 + }, + { + "path": "tests/golden/M16-GAP-00043/manifest.json", + "bytes": 2350, + "lines": 27, + "tokens": 588 + }, + { + "path": "docs/status/M16-GAP-00043.md", + "bytes": 898, + "lines": 19, + "tokens": 225 + } + ], + "sourceTokens": 1790, + "evidenceFiles": 1, + "evidenceBytes": 1008, + "evidenceTokens": 252, + "totalTokens": 2042, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00045/explode-modifier-desktop-report.json b/tests/golden/M16-GAP-00045/explode-modifier-desktop-report.json new file mode 100644 index 00000000..fbe652d8 --- /dev/null +++ b/tests/golden/M16-GAP-00045/explode-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", + "fixtureSha256": "f05a2ee7c15544e1b39de2a35fd6eee19a31deb821ca56fc642418c939e28b12", + "modifier": { + "meshId": "mesh:WebGapExplodeObjectMesh", + "modifier": { + "name": "WebGapExplode", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "EXPLODE", + "typeCode": 21 + }, + "task": "M16-GAP-00045" + }, + "operation": "EXPLODE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00045" +} diff --git a/tests/golden/M16-GAP-00045/explode-modifier-local-exact-report.json b/tests/golden/M16-GAP-00045/explode-modifier-local-exact-report.json new file mode 100644 index 00000000..55bd1315 --- /dev/null +++ b/tests/golden/M16-GAP-00045/explode-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00045", + "operation": "EXPLODE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", + "sha256": "f05a2ee7c15544e1b39de2a35fd6eee19a31deb821ca56fc642418c939e28b12" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00045/explode-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapExplodeObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapExplode", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 1886000045, + "typeCode": 21 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "EXPLODE", + "uuid": "modifier:object:WebGapExplodeObject:1886000045" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00046" +} diff --git a/tests/golden/M16-GAP-00045/manifest.json b/tests/golden/M16-GAP-00045/manifest.json new file mode 100644 index 00000000..36b0f596 --- /dev/null +++ b/tests/golden/M16-GAP-00045/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00045", + "parentTask": "M16-GAP-00044", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "EXPLODE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00044/manifest.json", "sha256": "ff007eb22d3a362fc0284cd60b90e2bec3257822d04bdc3eb46fca872d8a1ea5"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", "sha256": "f05a2ee7c15544e1b39de2a35fd6eee19a31deb821ca56fc642418c939e28b12"}, + "generator": {"path": "tools/web/generated/M16-GAP-00045.py", "sha256": "ac5a0a3c7a0a842a12499f06336700e0b17923619f27ce3872f6f05f299508ad"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "0a7b1676dd3b1b3d944c971acd4518cc2a7f83004fb231560a1a622ef2d23043"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "f3eb255f54ff6bf5298022daea73e554722d3b7d47515abc1e29604bf96530c3"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00045/explode-modifier-desktop-report.json", "sha256": "6f2da8d3cc19177ceedef1e31d2ddd2bb73e061a40164393fb717050b442b43c"}, + "webReport": {"path": "tests/golden/M16-GAP-00045/explode-modifier-local-exact-report.json", "sha256": "fdd2bfc6407872afbb3f1393b79c1d551f030f485ce4169863b07742c994122f"} + }, + "nextTask": "M16-GAP-00046" +} diff --git a/tests/golden/M16-GAP-00045/task-context.json b/tests/golden/M16-GAP-00045/task-context.json new file mode 100644 index 00000000..d92c492e --- /dev/null +++ b/tests/golden/M16-GAP-00045/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00045", + "parentTask": "M16-GAP-00044", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:EXPLODE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:EXPLODE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00045.py -- tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00045", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00045" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00045.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6943, + "contextRemainingTokens": 1735 + }, + "source": { + "bytes": 7057, + "tokens": 1765 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00045.py", + "bytes": 417, + "tokens": 105 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00045-modifier-EXPLODE.blend", + "bytes": 86513, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 134587, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00045/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00045.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00045/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 417, + "tokens": 105 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00046", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00045.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00044/manifest.json", + "parentStatus": "docs/status/M16-GAP-00044.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00045.md", + "tests/golden/M16-GAP-00044/manifest.json", + "docs/status/M16-GAP-00044.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00044", + "parentTask": "M16-GAP-00043", + "status": "done", + "nextTask": "M16-GAP-00045", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00044 Status", + "status: done ", + "task: EDGE_SPLIT modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: EDGE_SPLIT modifier split angle and visibility for `mesh:WebGapEdgeSplitObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapEdgeSplit` with split angle 0.35; save/reopen is exact.", + "- WASM/Main exposes the same split angle and modifier stack from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1724, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 431 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00045.md", + "bytes": 1724, + "lines": 38, + "tokens": 431 + }, + { + "path": "tests/golden/M16-GAP-00044/manifest.json", + "bytes": 2338, + "lines": 27, + "tokens": 585 + }, + { + "path": "docs/status/M16-GAP-00044.md", + "bytes": 827, + "lines": 19, + "tokens": 207 + } + ], + "sourceTokens": 1765, + "evidenceFiles": 1, + "evidenceBytes": 417, + "evidenceTokens": 105, + "totalTokens": 1870, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00046/fluid-modifier-desktop-report.json b/tests/golden/M16-GAP-00046/fluid-modifier-desktop-report.json new file mode 100644 index 00000000..98e46b8d --- /dev/null +++ b/tests/golden/M16-GAP-00046/fluid-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", + "fixtureSha256": "e5061df121df88e723c87360ab0ccef630ada11c31183f11d6ee17114ad70690", + "modifier": { + "meshId": "mesh:WebGapFluidObjectMesh", + "modifier": { + "name": "WebGapFluid", + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "FLUID", + "typeCode": 56 + }, + "task": "M16-GAP-00046" + }, + "operation": "FLUID_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00046" +} diff --git a/tests/golden/M16-GAP-00046/fluid-modifier-local-exact-report.json b/tests/golden/M16-GAP-00046/fluid-modifier-local-exact-report.json new file mode 100644 index 00000000..bba62e81 --- /dev/null +++ b/tests/golden/M16-GAP-00046/fluid-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00046", + "operation": "FLUID_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", + "sha256": "e5061df121df88e723c87360ab0ccef630ada11c31183f11d6ee17114ad70690" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00046/fluid-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "meshId": "mesh:WebGapFluidObjectMesh", + "modifier": { + "dependsOn": [], + "enabled": true, + "evaluationStatus": "BLOCKED", + "name": "WebGapFluid", + "parameters": { + "flag": 5, + "mode": 3, + "persistentUid": 874629360, + "typeCode": 56 + }, + "showEditMode": false, + "showOnCage": false, + "showRender": true, + "showViewport": true, + "type": "FLUID", + "uuid": "modifier:object:WebGapFluidObject:874629360" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00047" +} diff --git a/tests/golden/M16-GAP-00046/manifest.json b/tests/golden/M16-GAP-00046/manifest.json new file mode 100644 index 00000000..47f51d69 --- /dev/null +++ b/tests/golden/M16-GAP-00046/manifest.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00046", + "parentTask": "M16-GAP-00045", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "FLUID_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00045/manifest.json", "sha256": "a6a63c7ede70a0716a49bd5ef0bf4ee23e11586c953f8b7e6a06530a73618177"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", "sha256": "e5061df121df88e723c87360ab0ccef630ada11c31183f11d6ee17114ad70690"}, + "generator": {"path": "tools/web/generated/M16-GAP-00046.py", "sha256": "16cc612933b0c0137b4b986d4807ce12f838bae52457e941fd53f79c48677cab"}, + "fixtureHelper": {"path": "tools/web/generated/modifier_gap_fixture.py", "sha256": "85d5bc91e433a402099aeefccb5bed1a3711c88ea3484ac6083ce45a6c4517aa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "0a7b1676dd3b1b3d944c971acd4518cc2a7f83004fb231560a1a622ef2d23043"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "4f4a40b65293d712b9cafc675d579121b14659072d7c7cdf44ea5da6b0b4c6ce"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "1d11bd9ceab05a8937d50b25601829f53c7d827ed7f38577ab1624c118d486e6"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "91c06755b48b8b7a42277e55d32790b8ed52fa781e8b17d1b3c02ab71b9fcbb8"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00046/fluid-modifier-desktop-report.json", "sha256": "5e2140d9a0e8089c6fe1f31f34bfe7fa8473f642556051598436cb78636d451b"}, + "webReport": {"path": "tests/golden/M16-GAP-00046/fluid-modifier-local-exact-report.json", "sha256": "3e0adc749a8f15c52231fdd37afd01246b21d0c5630be569a0756b4f7d05194c"} + }, + "nextTask": "M16-GAP-00047" +} diff --git a/tests/golden/M16-GAP-00046/task-context.json b/tests/golden/M16-GAP-00046/task-context.json new file mode 100644 index 00000000..fe8d02cf --- /dev/null +++ b/tests/golden/M16-GAP-00046/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00046", + "parentTask": "M16-GAP-00045", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:FLUID data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:FLUID", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00046.py -- tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00046", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00046" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00046.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6942, + "contextRemainingTokens": 1734 + }, + "source": { + "bytes": 7058, + "tokens": 1766 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00046.py", + "bytes": 413, + "tokens": 104 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00046-modifier-FLUID.blend", + "bytes": 86520, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221177, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 134673, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00046/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00046.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00046/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 413, + "tokens": 104 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00047", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00046.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00045/manifest.json", + "parentStatus": "docs/status/M16-GAP-00045.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00046.md", + "tests/golden/M16-GAP-00045/manifest.json", + "docs/status/M16-GAP-00045.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00045", + "parentTask": "M16-GAP-00044", + "status": "done", + "nextTask": "M16-GAP-00046", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00045 Status", + "status: done ", + "task: EXPLODE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: EXPLODE modifier identity, type code, visibility, and blocked evaluation status for `mesh:WebGapExplodeObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapExplode`; save/reopen is exact.", + "- WASM/Main exposes the same modifier with typeCode 21 and blocked evaluation status from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1714, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 429 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00046.md", + "bytes": 1714, + "lines": 38, + "tokens": 429 + }, + { + "path": "tests/golden/M16-GAP-00045/manifest.json", + "bytes": 2326, + "lines": 27, + "tokens": 582 + }, + { + "path": "docs/status/M16-GAP-00045.md", + "bytes": 850, + "lines": 19, + "tokens": 213 + } + ], + "sourceTokens": 1766, + "evidenceFiles": 1, + "evidenceBytes": 413, + "evidenceTokens": 104, + "totalTokens": 1870, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-desktop-report.json b/tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-desktop-report.json new file mode 100644 index 00000000..7ef4d18a --- /dev/null +++ b/tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Armature", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_ARMATURE", + "typeCode": 79 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00047" + }, + "operation": "GREASE_PENCIL_ARMATURE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00047" +} diff --git a/tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-local-exact-report.json b/tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-local-exact-report.json new file mode 100644 index 00000000..c033a917 --- /dev/null +++ b/tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-local-exact-report.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00047", + "operation": "GREASE_PENCIL_ARMATURE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Armature", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 312629205, + "typeCode": 79 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_ARMATURE", + "uuid": "modifier:object:GreasePencilObject:312629205" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00048" +} diff --git a/tests/golden/M16-GAP-00047/manifest.json b/tests/golden/M16-GAP-00047/manifest.json new file mode 100644 index 00000000..0192cc69 --- /dev/null +++ b/tests/golden/M16-GAP-00047/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00047", + "parentTask": "M16-GAP-00046", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_ARMATURE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00046/manifest.json", "sha256": "4430ac4a19fcfea771b6a688ac0b59e5ed6f477ad086effa9df8ec66189ff059"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00047.py", "sha256": "d107f117b147b955027c694f6a82147e64a931dbb57e8ce0425ade9cbc9a1d99"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "28ae36eb491838ca2657682ba8681d8635e3f8d953195e3be8e528d4c9e394c3"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-desktop-report.json", "sha256": "aaa319ab7fc68ba6763c29b97659cb3a4f71425df5edd93dbd9aa5b998e96c1a"}, + "webReport": {"path": "tests/golden/M16-GAP-00047/grease-pencil-armature-modifier-local-exact-report.json", "sha256": "0e343bf170e7cb7c0b61a20308a7034f3ced1572580c4f94074e162e14bfcf43"} + }, + "nextTask": "M16-GAP-00048" +} diff --git a/tests/golden/M16-GAP-00047/task-context.json b/tests/golden/M16-GAP-00047/task-context.json new file mode 100644 index 00000000..6056572d --- /dev/null +++ b/tests/golden/M16-GAP-00047/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00047", + "parentTask": "M16-GAP-00046", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_ARMATURE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_ARMATURE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00047.py -- tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00047", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00047" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00047.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 6864, + "contextRemainingTokens": 1715 + }, + "source": { + "bytes": 7136, + "tokens": 1785 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00047.py", + "bytes": 551, + "tokens": 138 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00047-modifier-GREASE_PENCIL_ARMATURE.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 135211, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00047/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00047.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00047/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 551, + "tokens": 138 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00048", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00047.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00046/manifest.json", + "parentStatus": "docs/status/M16-GAP-00046.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00047.md", + "tests/golden/M16-GAP-00046/manifest.json", + "docs/status/M16-GAP-00046.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00046", + "parentTask": "M16-GAP-00045", + "status": "done", + "nextTask": "M16-GAP-00047", + "artifactCount": 13 + }, + "statusSummary": [ + "# M16-GAP-00046 Status", + "status: done ", + "task: FLUID modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: FLUID modifier identity, type code, visibility, and blocked evaluation status for `mesh:WebGapFluidObjectMesh`.", + "evidence:", + "- Desktop fixture exposes `WebGapFluid`; save/reopen is exact.", + "- WASM/Main exposes the same modifier with typeCode 56 and blocked evaluation status from the same fixture; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1799, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 450 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00047.md", + "bytes": 1799, + "lines": 38, + "tokens": 450 + }, + { + "path": "tests/golden/M16-GAP-00046/manifest.json", + "bytes": 2318, + "lines": 27, + "tokens": 580 + }, + { + "path": "docs/status/M16-GAP-00046.md", + "bytes": 851, + "lines": 19, + "tokens": 213 + } + ], + "sourceTokens": 1785, + "evidenceFiles": 1, + "evidenceBytes": 551, + "evidenceTokens": 138, + "totalTokens": 1923, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00048/grease-pencil-array-modifier-desktop-report.json b/tests/golden/M16-GAP-00048/grease-pencil-array-modifier-desktop-report.json new file mode 100644 index 00000000..ca54207e --- /dev/null +++ b/tests/golden/M16-GAP-00048/grease-pencil-array-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Array", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_ARRAY", + "typeCode": 75 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00048" + }, + "operation": "GREASE_PENCIL_ARRAY_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00048" +} diff --git a/tests/golden/M16-GAP-00048/grease-pencil-array-modifier-local-exact-report.json b/tests/golden/M16-GAP-00048/grease-pencil-array-modifier-local-exact-report.json new file mode 100644 index 00000000..93934e4d --- /dev/null +++ b/tests/golden/M16-GAP-00048/grease-pencil-array-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00048", + "operation": "GREASE_PENCIL_ARRAY_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00048/grease-pencil-array-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:312629205" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Array", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 650905928, + "typeCode": 75 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_ARRAY", + "uuid": "modifier:object:GreasePencilObject:650905928" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00049" +} diff --git a/tests/golden/M16-GAP-00048/manifest.json b/tests/golden/M16-GAP-00048/manifest.json new file mode 100644 index 00000000..a056e0f8 --- /dev/null +++ b/tests/golden/M16-GAP-00048/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00048", + "parentTask": "M16-GAP-00047", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_ARRAY_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00047/manifest.json", "sha256": "fe5ac01d72c9ab1f18f485a02748e4a4a53d409f2c65b0f9507b0fba2b16201a"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00048.py", "sha256": "46d0a48bac2f893ce03ffb055881159a3f55327e8314ef24f2530a6212ddf868"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "4e902d7936cf3cd3be92c37fa15ec7a7f1ce9fc3bddce82dab814c1627e32b53"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00048/grease-pencil-array-modifier-desktop-report.json", "sha256": "caf437b45e130c12406ce3ee8d699d7266673f8e595d63d017f5482c474f29f3"}, + "webReport": {"path": "tests/golden/M16-GAP-00048/grease-pencil-array-modifier-local-exact-report.json", "sha256": "e583037d0c80eb40b6e511cb2b11feae3c9f5f0e1c0374727f5af6c8c1b0c6b5"} + }, + "nextTask": "M16-GAP-00049" +} diff --git a/tests/golden/M16-GAP-00048/task-context.json b/tests/golden/M16-GAP-00048/task-context.json new file mode 100644 index 00000000..f765e1c5 --- /dev/null +++ b/tests/golden/M16-GAP-00048/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00048", + "parentTask": "M16-GAP-00047", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_ARRAY data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_ARRAY", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00048.py -- tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00048", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00048" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00048.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7021, + "contextRemainingTokens": 1754 + }, + "source": { + "bytes": 6979, + "tokens": 1746 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00048.py", + "bytes": 608, + "tokens": 152 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00048-modifier-GREASE_PENCIL_ARRAY.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 135357, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00048/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00048.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00048/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 608, + "tokens": 152 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00049", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00048.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00047/manifest.json", + "parentStatus": "docs/status/M16-GAP-00047.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00048.md", + "tests/golden/M16-GAP-00047/manifest.json", + "docs/status/M16-GAP-00047.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00047", + "parentTask": "M16-GAP-00046", + "status": "done", + "nextTask": "M16-GAP-00048", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00047 Status", + "status: done ", + "task: GREASE_PENCIL_ARMATURE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil object modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Armature` on `GreasePencilObject`; save/reopen is exact.", + "- WASM/Main now exposes non-Mesh object modifier stacks on scene nodes, including `GREASE_PENCIL_ARMATURE` typeCode 79; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1784, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 446 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00048.md", + "bytes": 1784, + "lines": 38, + "tokens": 446 + }, + { + "path": "tests/golden/M16-GAP-00047/manifest.json", + "bytes": 2230, + "lines": 26, + "tokens": 558 + }, + { + "path": "docs/status/M16-GAP-00047.md", + "bytes": 797, + "lines": 19, + "tokens": 200 + } + ], + "sourceTokens": 1746, + "evidenceFiles": 1, + "evidenceBytes": 608, + "evidenceTokens": 152, + "totalTokens": 1898, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00049/grease-pencil-build-modifier-desktop-report.json b/tests/golden/M16-GAP-00049/grease-pencil-build-modifier-desktop-report.json new file mode 100644 index 00000000..b284c8c8 --- /dev/null +++ b/tests/golden/M16-GAP-00049/grease-pencil-build-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Build", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_BUILD", + "typeCode": 84 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00049" + }, + "operation": "GREASE_PENCIL_BUILD_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00049" +} diff --git a/tests/golden/M16-GAP-00049/grease-pencil-build-modifier-local-exact-report.json b/tests/golden/M16-GAP-00049/grease-pencil-build-modifier-local-exact-report.json new file mode 100644 index 00000000..d59728c7 --- /dev/null +++ b/tests/golden/M16-GAP-00049/grease-pencil-build-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00049", + "operation": "GREASE_PENCIL_BUILD_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00049/grease-pencil-build-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:650905928" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Build", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 421891574, + "typeCode": 84 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_BUILD", + "uuid": "modifier:object:GreasePencilObject:421891574" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00050" +} diff --git a/tests/golden/M16-GAP-00049/manifest.json b/tests/golden/M16-GAP-00049/manifest.json new file mode 100644 index 00000000..9d81e89e --- /dev/null +++ b/tests/golden/M16-GAP-00049/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00049", + "parentTask": "M16-GAP-00048", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_BUILD_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00048/manifest.json", "sha256": "e7267000f7ec4c472025b0f876b2c91f30d2b25716a59c91339c944e2e1459f3"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00049.py", "sha256": "1d351d2f7f82f92d41ce1e1837b7bbaff41ec7046d51d118cb9a744b2f130347"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "e6d7e8019a67bf357c63fbbc9d51e4ed6d4d7fd303b2ad259eec30b2b37a5644"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00049/grease-pencil-build-modifier-desktop-report.json", "sha256": "e9d70bb6ba43a387d29683473bfc8286ab9818f771e796194a0344ed31bd00cb"}, + "webReport": {"path": "tests/golden/M16-GAP-00049/grease-pencil-build-modifier-local-exact-report.json", "sha256": "b1df18f0aafe0a47ef55b7fd64ac5935020a99e45e58708cd7958d919d8fa558"} + }, + "nextTask": "M16-GAP-00050" +} diff --git a/tests/golden/M16-GAP-00049/task-context.json b/tests/golden/M16-GAP-00049/task-context.json new file mode 100644 index 00000000..965b6e86 --- /dev/null +++ b/tests/golden/M16-GAP-00049/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00049", + "parentTask": "M16-GAP-00048", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_BUILD data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_BUILD", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00049.py -- tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00049", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00049" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00049.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7173, + "contextRemainingTokens": 1792 + }, + "source": { + "bytes": 6827, + "tokens": 1708 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00049.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00049-modifier-GREASE_PENCIL_BUILD.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 135503, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00049/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00049.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00049/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00050", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00049.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00048/manifest.json", + "parentStatus": "docs/status/M16-GAP-00048.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00049.md", + "tests/golden/M16-GAP-00048/manifest.json", + "docs/status/M16-GAP-00048.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00048", + "parentTask": "M16-GAP-00047", + "status": "done", + "nextTask": "M16-GAP-00049", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00048 Status", + "status: done ", + "task: GREASE_PENCIL_ARRAY modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil ARRAY modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Array`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_ARRAY` typeCode 75 on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1784, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 446 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00049.md", + "bytes": 1784, + "lines": 38, + "tokens": 446 + }, + { + "path": "tests/golden/M16-GAP-00048/manifest.json", + "bytes": 2218, + "lines": 26, + "tokens": 555 + }, + { + "path": "docs/status/M16-GAP-00048.md", + "bytes": 657, + "lines": 19, + "tokens": 165 + } + ], + "sourceTokens": 1708, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1842, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00050/grease-pencil-color-modifier-desktop-report.json b/tests/golden/M16-GAP-00050/grease-pencil-color-modifier-desktop-report.json new file mode 100644 index 00000000..f16ace69 --- /dev/null +++ b/tests/golden/M16-GAP-00050/grease-pencil-color-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Color", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_COLOR", + "typeCode": 63 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00050" + }, + "operation": "GREASE_PENCIL_COLOR_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00050" +} diff --git a/tests/golden/M16-GAP-00050/grease-pencil-color-modifier-local-exact-report.json b/tests/golden/M16-GAP-00050/grease-pencil-color-modifier-local-exact-report.json new file mode 100644 index 00000000..4fba602f --- /dev/null +++ b/tests/golden/M16-GAP-00050/grease-pencil-color-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00050", + "operation": "GREASE_PENCIL_COLOR_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00050/grease-pencil-color-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:421891574" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Color", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 252453400, + "typeCode": 63 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_COLOR", + "uuid": "modifier:object:GreasePencilObject:252453400" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00051" +} diff --git a/tests/golden/M16-GAP-00050/manifest.json b/tests/golden/M16-GAP-00050/manifest.json new file mode 100644 index 00000000..4503ef7c --- /dev/null +++ b/tests/golden/M16-GAP-00050/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00050", + "parentTask": "M16-GAP-00049", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_COLOR_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00049/manifest.json", "sha256": "40a1973a8c461d876e93115c4ccc0e7c6f3cd19ba495947d6c30b50b03aef49c"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00050.py", "sha256": "3940edc4cca7b1d5cf9a335b8190be744cbbd6e6201614372dbf39163ff9efa1"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "9d7f692b1907b7e54d307bd0325a7cedefb75d10b5e9a8a356bda032084b1d5c"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00050/grease-pencil-color-modifier-desktop-report.json", "sha256": "79e44b5d0443f81d2ba334902990f73c20601b4c15e890aff1b73fae4879f771"}, + "webReport": {"path": "tests/golden/M16-GAP-00050/grease-pencil-color-modifier-local-exact-report.json", "sha256": "73126cf9fc415f9eccf9538d1d23055857fa9c772e1b15721470e1653bc2ce73"} + }, + "nextTask": "M16-GAP-00051" +} diff --git a/tests/golden/M16-GAP-00050/task-context.json b/tests/golden/M16-GAP-00050/task-context.json new file mode 100644 index 00000000..57969feb --- /dev/null +++ b/tests/golden/M16-GAP-00050/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00050", + "parentTask": "M16-GAP-00049", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_COLOR data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_COLOR", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00050.py -- tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00050", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00050" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00050.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7185, + "contextRemainingTokens": 1795 + }, + "source": { + "bytes": 6815, + "tokens": 1705 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00050.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00050-modifier-GREASE_PENCIL_COLOR.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 135649, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00050/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00050.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00050/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00051", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00050.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00049/manifest.json", + "parentStatus": "docs/status/M16-GAP-00049.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00050.md", + "tests/golden/M16-GAP-00049/manifest.json", + "docs/status/M16-GAP-00049.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00049", + "parentTask": "M16-GAP-00048", + "status": "done", + "nextTask": "M16-GAP-00050", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00049 Status", + "status: done ", + "task: GREASE_PENCIL_BUILD modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil BUILD modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Build`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_BUILD` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1784, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 446 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00050.md", + "bytes": 1784, + "lines": 38, + "tokens": 446 + }, + { + "path": "tests/golden/M16-GAP-00049/manifest.json", + "bytes": 2218, + "lines": 26, + "tokens": 555 + }, + { + "path": "docs/status/M16-GAP-00049.md", + "bytes": 645, + "lines": 19, + "tokens": 162 + } + ], + "sourceTokens": 1705, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1839, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-desktop-report.json b/tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-desktop-report.json new file mode 100644 index 00000000..350e50e8 --- /dev/null +++ b/tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Dash", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_DASH", + "typeCode": 71 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00051" + }, + "operation": "GREASE_PENCIL_DASH_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00051" +} diff --git a/tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-local-exact-report.json b/tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-local-exact-report.json new file mode 100644 index 00000000..b4d6ed4b --- /dev/null +++ b/tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00051", + "operation": "GREASE_PENCIL_DASH_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:252453400" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Dash", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 753317068, + "typeCode": 71 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_DASH", + "uuid": "modifier:object:GreasePencilObject:753317068" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00052" +} diff --git a/tests/golden/M16-GAP-00051/manifest.json b/tests/golden/M16-GAP-00051/manifest.json new file mode 100644 index 00000000..bbb16cd0 --- /dev/null +++ b/tests/golden/M16-GAP-00051/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00051", + "parentTask": "M16-GAP-00050", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_DASH_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00050/manifest.json", "sha256": "9b399fb391588b8bedba10997876cb4b3104ecdfe6481a022dd2f106f4920dbb"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00051.py", "sha256": "c6f60bcce29d2015308c78d764b57579616d644d84dc27bb98a118b162348808"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "91f5008bc93838eb4ceda37fd6878598f34816dc7f27600f4a243b00bf295b6c"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-desktop-report.json", "sha256": "0c87ebea369c798bbb2f0f70f698066e482ce372eda0042008f9993cfe116bf6"}, + "webReport": {"path": "tests/golden/M16-GAP-00051/grease-pencil-dash-modifier-local-exact-report.json", "sha256": "6da74df88b5ed5b1cb7cb64420020924143e30cad7c8f1efc11e62fd39b33dbb"} + }, + "nextTask": "M16-GAP-00052" +} diff --git a/tests/golden/M16-GAP-00051/task-context.json b/tests/golden/M16-GAP-00051/task-context.json new file mode 100644 index 00000000..6cde2e3c --- /dev/null +++ b/tests/golden/M16-GAP-00051/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00051", + "parentTask": "M16-GAP-00050", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_DASH data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_DASH", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00051.py -- tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00051", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00051" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00051.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7190, + "contextRemainingTokens": 1796 + }, + "source": { + "bytes": 6810, + "tokens": 1704 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00051.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00051-modifier-GREASE_PENCIL_DASH.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 135793, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00051/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00051.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00051/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00052", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00051.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00050/manifest.json", + "parentStatus": "docs/status/M16-GAP-00050.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00051.md", + "tests/golden/M16-GAP-00050/manifest.json", + "docs/status/M16-GAP-00050.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00050", + "parentTask": "M16-GAP-00049", + "status": "done", + "nextTask": "M16-GAP-00051", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00050 Status", + "status: done ", + "task: GREASE_PENCIL_COLOR modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil COLOR modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Color`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_COLOR` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1779, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 445 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00051.md", + "bytes": 1779, + "lines": 38, + "tokens": 445 + }, + { + "path": "tests/golden/M16-GAP-00050/manifest.json", + "bytes": 2218, + "lines": 26, + "tokens": 555 + }, + { + "path": "docs/status/M16-GAP-00050.md", + "bytes": 645, + "lines": 19, + "tokens": 162 + } + ], + "sourceTokens": 1704, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1838, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-desktop-report.json b/tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-desktop-report.json new file mode 100644 index 00000000..8070fd40 --- /dev/null +++ b/tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Envelope", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_ENVELOPE", + "typeCode": 81 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00052" + }, + "operation": "GREASE_PENCIL_ENVELOPE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00052" +} diff --git a/tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-local-exact-report.json b/tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-local-exact-report.json new file mode 100644 index 00000000..c52a9625 --- /dev/null +++ b/tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00052", + "operation": "GREASE_PENCIL_ENVELOPE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:753317068" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Envelope", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 749293089, + "typeCode": 81 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_ENVELOPE", + "uuid": "modifier:object:GreasePencilObject:749293089" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00053" +} diff --git a/tests/golden/M16-GAP-00052/manifest.json b/tests/golden/M16-GAP-00052/manifest.json new file mode 100644 index 00000000..43fdadf1 --- /dev/null +++ b/tests/golden/M16-GAP-00052/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00052", + "parentTask": "M16-GAP-00051", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_ENVELOPE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00051/manifest.json", "sha256": "fc6d07507873239429bbf53f389bd769f94fade2f2086ca446bf3180f96fff2b"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00052.py", "sha256": "53a12d6ac62873a4cc6d384c811030e43f57b08485a8c50c70d638a7433ec333"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "aacf540ef155aca212cb3361e748f043a40e2a965245e373fd6bf17ad3d50442"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-desktop-report.json", "sha256": "4ce0e867ab2f8346e6121060c3f18c9a1f48e97c67dd5b9362c2eaca6e7e5f78"}, + "webReport": {"path": "tests/golden/M16-GAP-00052/grease-pencil-envelope-modifier-local-exact-report.json", "sha256": "af02545ba19b116b4ce39b87aaab3f8e3e33504164694c04b1ec6da7f159ee59"} + }, + "nextTask": "M16-GAP-00053" +} diff --git a/tests/golden/M16-GAP-00052/task-context.json b/tests/golden/M16-GAP-00052/task-context.json new file mode 100644 index 00000000..a86b0b08 --- /dev/null +++ b/tests/golden/M16-GAP-00052/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00052", + "parentTask": "M16-GAP-00051", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_ENVELOPE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_ENVELOPE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00052.py -- tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00052", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00052" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00052.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7179, + "contextRemainingTokens": 1794 + }, + "source": { + "bytes": 6821, + "tokens": 1706 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00052.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00052-modifier-GREASE_PENCIL_ENVELOPE.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 135945, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00052/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00052.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00052/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00053", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00052.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00051/manifest.json", + "parentStatus": "docs/status/M16-GAP-00051.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00052.md", + "tests/golden/M16-GAP-00051/manifest.json", + "docs/status/M16-GAP-00051.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00051", + "parentTask": "M16-GAP-00050", + "status": "done", + "nextTask": "M16-GAP-00052", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00051 Status", + "status: done ", + "task: GREASE_PENCIL_DASH modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil DASH modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Dash`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_DASH` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1799, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 450 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00052.md", + "bytes": 1799, + "lines": 38, + "tokens": 450 + }, + { + "path": "tests/golden/M16-GAP-00051/manifest.json", + "bytes": 2214, + "lines": 26, + "tokens": 554 + }, + { + "path": "docs/status/M16-GAP-00051.md", + "bytes": 640, + "lines": 19, + "tokens": 160 + } + ], + "sourceTokens": 1706, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1840, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-desktop-report.json b/tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-desktop-report.json new file mode 100644 index 00000000..883e9d53 --- /dev/null +++ b/tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Hook", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_HOOK", + "typeCode": 77 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00053" + }, + "operation": "GREASE_PENCIL_HOOK_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00053" +} diff --git a/tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-local-exact-report.json b/tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-local-exact-report.json new file mode 100644 index 00000000..749d110c --- /dev/null +++ b/tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00053", + "operation": "GREASE_PENCIL_HOOK_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:749293089" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Hook", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1366665389, + "typeCode": 77 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_HOOK", + "uuid": "modifier:object:GreasePencilObject:1366665389" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00054" +} diff --git a/tests/golden/M16-GAP-00053/manifest.json b/tests/golden/M16-GAP-00053/manifest.json new file mode 100644 index 00000000..1b68af27 --- /dev/null +++ b/tests/golden/M16-GAP-00053/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00053", + "parentTask": "M16-GAP-00052", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_HOOK_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00052/manifest.json", "sha256": "764d3f131fc5f51ba15aa3964b73560972934f2f6b025db8288a5c165dd40af8"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00053.py", "sha256": "2f3523d2f8378fbdef7083d93ac666059a3649c29fdd8c4bf5e44fdbb8e596fa"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-desktop-report.json", "sha256": "67b0ddf84c0d9690832b8aeae76b503572bf9ac725123254a95a351e55075c54"}, + "webReport": {"path": "tests/golden/M16-GAP-00053/grease-pencil-hook-modifier-local-exact-report.json", "sha256": "eb44b966e835d186f5f05420377a00895764cee2b5cb379f3704f89aed334d16"} + }, + "nextTask": "M16-GAP-00054" +} diff --git a/tests/golden/M16-GAP-00053/task-context.json b/tests/golden/M16-GAP-00053/task-context.json new file mode 100644 index 00000000..3f704f4e --- /dev/null +++ b/tests/golden/M16-GAP-00053/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00053", + "parentTask": "M16-GAP-00052", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_HOOK data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_HOOK", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00053.py -- tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00053", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00053" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00053.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7163, + "contextRemainingTokens": 1790 + }, + "source": { + "bytes": 6837, + "tokens": 1710 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00053.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00053-modifier-GREASE_PENCIL_HOOK.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00053/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00053.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00053/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00054", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00053.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00052/manifest.json", + "parentStatus": "docs/status/M16-GAP-00052.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00053.md", + "tests/golden/M16-GAP-00052/manifest.json", + "docs/status/M16-GAP-00052.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00052", + "parentTask": "M16-GAP-00051", + "status": "done", + "nextTask": "M16-GAP-00053", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00052 Status", + "status: done ", + "task: GREASE_PENCIL_ENVELOPE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil ENVELOPE modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Envelope`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_ENVELOPE` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1779, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 445 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00053.md", + "bytes": 1779, + "lines": 38, + "tokens": 445 + }, + { + "path": "tests/golden/M16-GAP-00052/manifest.json", + "bytes": 2230, + "lines": 26, + "tokens": 558 + }, + { + "path": "docs/status/M16-GAP-00052.md", + "bytes": 660, + "lines": 19, + "tokens": 165 + } + ], + "sourceTokens": 1710, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1844, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-desktop-report.json b/tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-desktop-report.json new file mode 100644 index 00000000..621fe6f1 --- /dev/null +++ b/tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Lattice", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_LATTICE", + "typeCode": 70 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00054" + }, + "operation": "GREASE_PENCIL_LATTICE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00054" +} diff --git a/tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-local-exact-report.json b/tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-local-exact-report.json new file mode 100644 index 00000000..228ddfa9 --- /dev/null +++ b/tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00054", + "operation": "GREASE_PENCIL_LATTICE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1366665389" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Lattice", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 140212469, + "typeCode": 70 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_LATTICE", + "uuid": "modifier:object:GreasePencilObject:140212469" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00055" +} diff --git a/tests/golden/M16-GAP-00054/manifest.json b/tests/golden/M16-GAP-00054/manifest.json new file mode 100644 index 00000000..25172868 --- /dev/null +++ b/tests/golden/M16-GAP-00054/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00054", + "parentTask": "M16-GAP-00053", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_LATTICE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00053/manifest.json", "sha256": "e3d1c6c132f6da332f4d1424bc7608e1bf25b2a48500b112fc34f5954c13220d"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00054.py", "sha256": "e033647018764ecb7015f9d7c1e6201306ca36ecf3df29a8a12ecadfa19238bb"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-desktop-report.json", "sha256": "565931e3614f74c666c375ae3d879ca85b4274d1bc980cd5480c877593d23a63"}, + "webReport": {"path": "tests/golden/M16-GAP-00054/grease-pencil-lattice-modifier-local-exact-report.json", "sha256": "4d0bda74ab6c6667530fa5f64fff6944c316449b3c9f1c25d6c623d7523a5ed1"} + }, + "nextTask": "M16-GAP-00055" +} diff --git a/tests/golden/M16-GAP-00054/task-context.json b/tests/golden/M16-GAP-00054/task-context.json new file mode 100644 index 00000000..55e0ab81 --- /dev/null +++ b/tests/golden/M16-GAP-00054/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00054", + "parentTask": "M16-GAP-00053", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_LATTICE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_LATTICE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00054.py -- tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00054", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00054" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00054.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7184, + "contextRemainingTokens": 1795 + }, + "source": { + "bytes": 6816, + "tokens": 1705 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00054.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00054-modifier-GREASE_PENCIL_LATTICE.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00054/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00054.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00054/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00055", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00054.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00053/manifest.json", + "parentStatus": "docs/status/M16-GAP-00053.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00054.md", + "tests/golden/M16-GAP-00053/manifest.json", + "docs/status/M16-GAP-00053.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00053", + "parentTask": "M16-GAP-00052", + "status": "done", + "nextTask": "M16-GAP-00054", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00053 Status", + "status: done ", + "task: GREASE_PENCIL_HOOK modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil HOOK modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Hook`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_HOOK` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1794, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 449 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00054.md", + "bytes": 1794, + "lines": 38, + "tokens": 449 + }, + { + "path": "tests/golden/M16-GAP-00053/manifest.json", + "bytes": 2214, + "lines": 26, + "tokens": 554 + }, + { + "path": "docs/status/M16-GAP-00053.md", + "bytes": 640, + "lines": 19, + "tokens": 160 + } + ], + "sourceTokens": 1705, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1839, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00055/grease-pencil-length-modifier-desktop-report.json b/tests/golden/M16-GAP-00055/grease-pencil-length-modifier-desktop-report.json new file mode 100644 index 00000000..2563d6d1 --- /dev/null +++ b/tests/golden/M16-GAP-00055/grease-pencil-length-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Length", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_LENGTH", + "typeCode": 73 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00055" + }, + "operation": "GREASE_PENCIL_LENGTH_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00055" +} diff --git a/tests/golden/M16-GAP-00055/grease-pencil-length-modifier-local-exact-report.json b/tests/golden/M16-GAP-00055/grease-pencil-length-modifier-local-exact-report.json new file mode 100644 index 00000000..6ac9377a --- /dev/null +++ b/tests/golden/M16-GAP-00055/grease-pencil-length-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00055", + "operation": "GREASE_PENCIL_LENGTH_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00055/grease-pencil-length-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:140212469" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Length", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1701210363, + "typeCode": 73 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_LENGTH", + "uuid": "modifier:object:GreasePencilObject:1701210363" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00056" +} diff --git a/tests/golden/M16-GAP-00055/manifest.json b/tests/golden/M16-GAP-00055/manifest.json new file mode 100644 index 00000000..561f4034 --- /dev/null +++ b/tests/golden/M16-GAP-00055/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00055", + "parentTask": "M16-GAP-00054", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_LENGTH_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00054/manifest.json", "sha256": "9cd85f6373d0658757c92fb0a084a1f468777865e64cfc5cd23f7fa091f6e25c"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00055.py", "sha256": "6cd72429c65a9e5e36e099f0c35f523e51ed26d4c796be7b3e4397c3bb71509c"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00055/grease-pencil-length-modifier-desktop-report.json", "sha256": "367ea4ff3cef4d5ec0e07b3f69f2f5a15d2604753b8efe9083775e97854af2b6"}, + "webReport": {"path": "tests/golden/M16-GAP-00055/grease-pencil-length-modifier-local-exact-report.json", "sha256": "5715882f691e9022fc3049f1937b90e39d9e7702583f9a946b7aabf22e2093d5"} + }, + "nextTask": "M16-GAP-00056" +} diff --git a/tests/golden/M16-GAP-00055/task-context.json b/tests/golden/M16-GAP-00055/task-context.json new file mode 100644 index 00000000..92bdef93 --- /dev/null +++ b/tests/golden/M16-GAP-00055/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00055", + "parentTask": "M16-GAP-00054", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_LENGTH data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_LENGTH", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00055.py -- tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00055", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00055" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00055.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7162, + "contextRemainingTokens": 1789 + }, + "source": { + "bytes": 6838, + "tokens": 1711 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00055.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00055-modifier-GREASE_PENCIL_LENGTH.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00055/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00055.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00055/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00056", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00055.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00054/manifest.json", + "parentStatus": "docs/status/M16-GAP-00054.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00055.md", + "tests/golden/M16-GAP-00054/manifest.json", + "docs/status/M16-GAP-00054.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00054", + "parentTask": "M16-GAP-00053", + "status": "done", + "nextTask": "M16-GAP-00055", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00054 Status", + "status: done ", + "task: GREASE_PENCIL_LATTICE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil LATTICE modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Lattice`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_LATTICE` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1789, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 448 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00055.md", + "bytes": 1789, + "lines": 38, + "tokens": 448 + }, + { + "path": "tests/golden/M16-GAP-00054/manifest.json", + "bytes": 2226, + "lines": 26, + "tokens": 557 + }, + { + "path": "docs/status/M16-GAP-00054.md", + "bytes": 655, + "lines": 19, + "tokens": 164 + } + ], + "sourceTokens": 1711, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1845, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-desktop-report.json b/tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-desktop-report.json new file mode 100644 index 00000000..21cba685 --- /dev/null +++ b/tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Mirror", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_MIRROR", + "typeCode": 68 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00056" + }, + "operation": "GREASE_PENCIL_MIRROR_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00056" +} diff --git a/tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-local-exact-report.json b/tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-local-exact-report.json new file mode 100644 index 00000000..58e9ebad --- /dev/null +++ b/tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00056", + "operation": "GREASE_PENCIL_MIRROR_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1701210363" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Mirror", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1723713518, + "typeCode": 68 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_MIRROR", + "uuid": "modifier:object:GreasePencilObject:1723713518" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00057" +} diff --git a/tests/golden/M16-GAP-00056/manifest.json b/tests/golden/M16-GAP-00056/manifest.json new file mode 100644 index 00000000..e9bb7f6b --- /dev/null +++ b/tests/golden/M16-GAP-00056/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00056", + "parentTask": "M16-GAP-00055", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_MIRROR_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00055/manifest.json", "sha256": "8c1e8755714dc91d1e02b0966d5d86fd26ffc49aa9c81d63384e0734117e1a31"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00056.py", "sha256": "b604fc0351b563558a59be40fbfbdd83481ec3c0eeda6ec020fc5e21bc527de3"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-desktop-report.json", "sha256": "60122c5212975d2a0de279415ea35699fa10c7c3b350ef991a2ef04c096c4e3c"}, + "webReport": {"path": "tests/golden/M16-GAP-00056/grease-pencil-mirror-modifier-local-exact-report.json", "sha256": "ac905bdcf602af4f8d63e62ea78f251d737052c00aa4454807aeaa648344ea89"} + }, + "nextTask": "M16-GAP-00057" +} diff --git a/tests/golden/M16-GAP-00056/task-context.json b/tests/golden/M16-GAP-00056/task-context.json new file mode 100644 index 00000000..629ee57f --- /dev/null +++ b/tests/golden/M16-GAP-00056/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00056", + "parentTask": "M16-GAP-00055", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_MIRROR data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_MIRROR", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00056.py -- tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00056", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00056" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00056.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7171, + "contextRemainingTokens": 1791 + }, + "source": { + "bytes": 6829, + "tokens": 1709 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00056.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00056-modifier-GREASE_PENCIL_MIRROR.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00056/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00056.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00056/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00057", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00056.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00055/manifest.json", + "parentStatus": "docs/status/M16-GAP-00055.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00056.md", + "tests/golden/M16-GAP-00055/manifest.json", + "docs/status/M16-GAP-00055.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00055", + "parentTask": "M16-GAP-00054", + "status": "done", + "nextTask": "M16-GAP-00056", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00055 Status", + "status: done ", + "task: GREASE_PENCIL_LENGTH modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil LENGTH modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Length`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_LENGTH` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1789, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 448 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00056.md", + "bytes": 1789, + "lines": 38, + "tokens": 448 + }, + { + "path": "tests/golden/M16-GAP-00055/manifest.json", + "bytes": 2222, + "lines": 26, + "tokens": 556 + }, + { + "path": "docs/status/M16-GAP-00055.md", + "bytes": 650, + "lines": 19, + "tokens": 163 + } + ], + "sourceTokens": 1709, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1843, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-desktop-report.json b/tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-desktop-report.json new file mode 100644 index 00000000..6606a293 --- /dev/null +++ b/tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Multiply", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_MULTIPLY", + "typeCode": 72 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00057" + }, + "operation": "GREASE_PENCIL_MULTIPLY_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00057" +} diff --git a/tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-local-exact-report.json b/tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-local-exact-report.json new file mode 100644 index 00000000..1268960c --- /dev/null +++ b/tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00057", + "operation": "GREASE_PENCIL_MULTIPLY_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1723713518" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Multiply", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1520489508, + "typeCode": 72 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_MULTIPLY", + "uuid": "modifier:object:GreasePencilObject:1520489508" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00058" +} diff --git a/tests/golden/M16-GAP-00057/manifest.json b/tests/golden/M16-GAP-00057/manifest.json new file mode 100644 index 00000000..d2cfa67f --- /dev/null +++ b/tests/golden/M16-GAP-00057/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00057", + "parentTask": "M16-GAP-00056", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_MULTIPLY_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00056/manifest.json", "sha256": "66d9711eaa81ebb3a192ff89004047b67f2784f6b4eb752c3f5bf669f4700ac2"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00057.py", "sha256": "b2fed8f2d445c0eb10ed833385cc6e6e91394a97e367c6c76a3dbc4b61f5abb7"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-desktop-report.json", "sha256": "c891fa44f7623a0eb1dd8c848cace0f8289c0c181a03a400fce36aa1a020069c"}, + "webReport": {"path": "tests/golden/M16-GAP-00057/grease-pencil-multiply-modifier-local-exact-report.json", "sha256": "5e9c1ab5db3f884cb1f78ce212e2714ea8500ddcc6691774092a745a71013e10"} + }, + "nextTask": "M16-GAP-00058" +} diff --git a/tests/golden/M16-GAP-00057/task-context.json b/tests/golden/M16-GAP-00057/task-context.json new file mode 100644 index 00000000..6a389847 --- /dev/null +++ b/tests/golden/M16-GAP-00057/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00057", + "parentTask": "M16-GAP-00056", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_MULTIPLY data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_MULTIPLY", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00057.py -- tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00057", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00057" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00057.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7161, + "contextRemainingTokens": 1789 + }, + "source": { + "bytes": 6839, + "tokens": 1711 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00057.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00057-modifier-GREASE_PENCIL_MULTIPLY.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00057/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00057.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00057/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00058", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00057.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00056/manifest.json", + "parentStatus": "docs/status/M16-GAP-00056.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00057.md", + "tests/golden/M16-GAP-00056/manifest.json", + "docs/status/M16-GAP-00056.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00056", + "parentTask": "M16-GAP-00055", + "status": "done", + "nextTask": "M16-GAP-00057", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00056 Status", + "status: done ", + "task: GREASE_PENCIL_MIRROR modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil MIRROR modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Mirror`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_MIRROR` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1799, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 450 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00057.md", + "bytes": 1799, + "lines": 38, + "tokens": 450 + }, + { + "path": "tests/golden/M16-GAP-00056/manifest.json", + "bytes": 2222, + "lines": 26, + "tokens": 556 + }, + { + "path": "docs/status/M16-GAP-00056.md", + "bytes": 650, + "lines": 19, + "tokens": 163 + } + ], + "sourceTokens": 1711, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1845, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-desktop-report.json b/tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-desktop-report.json new file mode 100644 index 00000000..e4a9ddef --- /dev/null +++ b/tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Noise", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_NOISE", + "typeCode": 67 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00058" + }, + "operation": "GREASE_PENCIL_NOISE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00058" +} diff --git a/tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-local-exact-report.json b/tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-local-exact-report.json new file mode 100644 index 00000000..e86ae4cc --- /dev/null +++ b/tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00058", + "operation": "GREASE_PENCIL_NOISE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1520489508" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Noise", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 50541313, + "typeCode": 67 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_NOISE", + "uuid": "modifier:object:GreasePencilObject:50541313" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00059" +} diff --git a/tests/golden/M16-GAP-00058/manifest.json b/tests/golden/M16-GAP-00058/manifest.json new file mode 100644 index 00000000..590f582c --- /dev/null +++ b/tests/golden/M16-GAP-00058/manifest.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00058", + "parentTask": "M16-GAP-00057", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_NOISE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00057/manifest.json", "sha256": "171834827986190445d87d9eb35edb44d48400f941e2999765c4660ae6e1875a"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00058.py", "sha256": "01dd91ba30acebe5749feef841e8ca9f096ac35a9fb6b454ae30ed94941ddd21"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "protocol": {"path": "web/protocol/scene-ir.ts", "sha256": "196950e7a0dab3d6e5cbf0015bf7e45665cbd957e0762db4467bf3551064e838"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-desktop-report.json", "sha256": "04c853b535d820f10859c47d51901fbbf51c4a5cb7f7387cbf59bbebfc108a2c"}, + "webReport": {"path": "tests/golden/M16-GAP-00058/grease-pencil-noise-modifier-local-exact-report.json", "sha256": "ce892ec22b69bd93060fcd8d29d91a97c68f75361bf9b782d73e502ecb7a6f47"} + }, + "nextTask": "M16-GAP-00059" +} diff --git a/tests/golden/M16-GAP-00058/task-context.json b/tests/golden/M16-GAP-00058/task-context.json new file mode 100644 index 00000000..15497b95 --- /dev/null +++ b/tests/golden/M16-GAP-00058/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00058", + "parentTask": "M16-GAP-00057", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_NOISE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_NOISE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00058.py -- tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00058", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00058" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00058.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7158, + "contextRemainingTokens": 1789 + }, + "source": { + "bytes": 6842, + "tokens": 1711 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00058.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00058-modifier-GREASE_PENCIL_NOISE.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00058/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00058.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00058/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00059", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00058.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00057/manifest.json", + "parentStatus": "docs/status/M16-GAP-00057.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00058.md", + "tests/golden/M16-GAP-00057/manifest.json", + "docs/status/M16-GAP-00057.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00057", + "parentTask": "M16-GAP-00056", + "status": "done", + "nextTask": "M16-GAP-00058", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00057 Status", + "status: done ", + "task: GREASE_PENCIL_MULTIPLY modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil MULTIPLY modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Multiply`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_MULTIPLY` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1784, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 446 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00058.md", + "bytes": 1784, + "lines": 38, + "tokens": 446 + }, + { + "path": "tests/golden/M16-GAP-00057/manifest.json", + "bytes": 2230, + "lines": 26, + "tokens": 558 + }, + { + "path": "docs/status/M16-GAP-00057.md", + "bytes": 660, + "lines": 19, + "tokens": 165 + } + ], + "sourceTokens": 1711, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1845, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-desktop-report.json b/tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-desktop-report.json new file mode 100644 index 00000000..0c769257 --- /dev/null +++ b/tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Offset", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_OFFSET", + "typeCode": 66 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00059" + }, + "operation": "GREASE_PENCIL_OFFSET_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00059" +} diff --git a/tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-local-exact-report.json b/tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-local-exact-report.json new file mode 100644 index 00000000..9f14c3f6 --- /dev/null +++ b/tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00059", + "operation": "GREASE_PENCIL_OFFSET_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:50541313" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Offset", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 275330124, + "typeCode": 66 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_OFFSET", + "uuid": "modifier:object:GreasePencilObject:275330124" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00060" +} diff --git a/tests/golden/M16-GAP-00059/manifest.json b/tests/golden/M16-GAP-00059/manifest.json new file mode 100644 index 00000000..f6d1f148 --- /dev/null +++ b/tests/golden/M16-GAP-00059/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00059", + "parentTask": "M16-GAP-00058", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_OFFSET_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00058/manifest.json", "sha256": "73e0c79e68244d4d100e32bbd915f51106cec5441439960983ac1bc218e74abe"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00059.py", "sha256": "1077df2f66d6a954a239cbdb6d55f5b05ef382b7224c9bbd886695d47dbf3b15"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-desktop-report.json", "sha256": "4119db33aad242414ed52d9e6614bdede6e0b4a551604a6886e01dc5bf90ea4e"}, + "webReport": {"path": "tests/golden/M16-GAP-00059/grease-pencil-offset-modifier-local-exact-report.json", "sha256": "e9ef09a250821a1dd7f10c574f1911f534baf65515e879f9ac423fb4877c7b5b"} + }, + "nextTask": "M16-GAP-00060" +} diff --git a/tests/golden/M16-GAP-00059/task-context.json b/tests/golden/M16-GAP-00059/task-context.json new file mode 100644 index 00000000..a676cd7d --- /dev/null +++ b/tests/golden/M16-GAP-00059/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00059", + "parentTask": "M16-GAP-00058", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_OFFSET data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_OFFSET", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00059.py -- tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00059", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00059" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00059.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7180, + "contextRemainingTokens": 1793 + }, + "source": { + "bytes": 6820, + "tokens": 1707 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00059.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00059-modifier-GREASE_PENCIL_OFFSET.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00059/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00059.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00059/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00060", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00059.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00058/manifest.json", + "parentStatus": "docs/status/M16-GAP-00058.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00059.md", + "tests/golden/M16-GAP-00058/manifest.json", + "docs/status/M16-GAP-00058.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00058", + "parentTask": "M16-GAP-00057", + "status": "done", + "nextTask": "M16-GAP-00059", + "artifactCount": 12 + }, + "statusSummary": [ + "# M16-GAP-00058 Status", + "status: done ", + "task: GREASE_PENCIL_NOISE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil NOISE modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Noise`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_NOISE` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1789, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 448 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00059.md", + "bytes": 1789, + "lines": 38, + "tokens": 448 + }, + { + "path": "tests/golden/M16-GAP-00058/manifest.json", + "bytes": 2218, + "lines": 26, + "tokens": 555 + }, + { + "path": "docs/status/M16-GAP-00058.md", + "bytes": 645, + "lines": 19, + "tokens": 162 + } + ], + "sourceTokens": 1707, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1841, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-desktop-report.json b/tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-desktop-report.json new file mode 100644 index 00000000..8f07c0af --- /dev/null +++ b/tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Opacity", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_OPACITY", + "typeCode": 61 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00060" + }, + "operation": "GREASE_PENCIL_OPACITY_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00060" +} diff --git a/tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-local-exact-report.json b/tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-local-exact-report.json new file mode 100644 index 00000000..d91248f5 --- /dev/null +++ b/tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00060", + "operation": "GREASE_PENCIL_OPACITY_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:275330124" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Opacity", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 24051249, + "typeCode": 61 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_OPACITY", + "uuid": "modifier:object:GreasePencilObject:24051249" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00061" +} diff --git a/tests/golden/M16-GAP-00060/manifest.json b/tests/golden/M16-GAP-00060/manifest.json new file mode 100644 index 00000000..38b3b169 --- /dev/null +++ b/tests/golden/M16-GAP-00060/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00060", + "parentTask": "M16-GAP-00059", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_OPACITY_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00059/manifest.json", "sha256": "884c6a8e1f40870d6628cc0c33884e1c83d0d605bea1d0fd505b6710dcd2fd4b"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00060.py", "sha256": "4bc32e262c02b41bbc4bccf0ae76e280a3b97cc5cb28495361f7e044868f9b51"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-desktop-report.json", "sha256": "678e7c0028c38f2a84cee2377ecfd7de1d1303561e75fcf8f380359338f6b4b8"}, + "webReport": {"path": "tests/golden/M16-GAP-00060/grease-pencil-opacity-modifier-local-exact-report.json", "sha256": "b62b13a20f921815f9fc4b32b406598a1a08d701cee27e07ee3a0009dda2a2f5"} + }, + "nextTask": "M16-GAP-00061" +} diff --git a/tests/golden/M16-GAP-00060/task-context.json b/tests/golden/M16-GAP-00060/task-context.json new file mode 100644 index 00000000..5c763109 --- /dev/null +++ b/tests/golden/M16-GAP-00060/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00060", + "parentTask": "M16-GAP-00059", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_OPACITY data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_OPACITY", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00060.py -- tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00060", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00060" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00060.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7298, + "contextRemainingTokens": 1823 + }, + "source": { + "bytes": 6702, + "tokens": 1677 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00060.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00060-modifier-GREASE_PENCIL_OPACITY.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00060/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00060.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00060/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00061", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00060.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00059/manifest.json", + "parentStatus": "docs/status/M16-GAP-00059.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00060.md", + "tests/golden/M16-GAP-00059/manifest.json", + "docs/status/M16-GAP-00059.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00059", + "parentTask": "M16-GAP-00058", + "status": "done", + "nextTask": "M16-GAP-00060", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00059 Status", + "status: done ", + "task: GREASE_PENCIL_OFFSET modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil OFFSET modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Offset`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_OFFSET` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1794, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 449 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00060.md", + "bytes": 1794, + "lines": 38, + "tokens": 449 + }, + { + "path": "tests/golden/M16-GAP-00059/manifest.json", + "bytes": 2090, + "lines": 25, + "tokens": 523 + }, + { + "path": "docs/status/M16-GAP-00059.md", + "bytes": 650, + "lines": 19, + "tokens": 163 + } + ], + "sourceTokens": 1677, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1811, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-desktop-report.json b/tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-desktop-report.json new file mode 100644 index 00000000..a34091c6 --- /dev/null +++ b/tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Outline", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_OUTLINE", + "typeCode": 82 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00061" + }, + "operation": "GREASE_PENCIL_OUTLINE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00061" +} diff --git a/tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-local-exact-report.json b/tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-local-exact-report.json new file mode 100644 index 00000000..fdf98815 --- /dev/null +++ b/tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00061", + "operation": "GREASE_PENCIL_OUTLINE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:24051249" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Outline", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 866027982, + "typeCode": 82 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_OUTLINE", + "uuid": "modifier:object:GreasePencilObject:866027982" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00062" +} diff --git a/tests/golden/M16-GAP-00061/manifest.json b/tests/golden/M16-GAP-00061/manifest.json new file mode 100644 index 00000000..cd51b628 --- /dev/null +++ b/tests/golden/M16-GAP-00061/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00061", + "parentTask": "M16-GAP-00060", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_OUTLINE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00060/manifest.json", "sha256": "e3715c32ca4bae6376396b321826841ad38751301a184154db024233c4f31069"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00061.py", "sha256": "d99b89a5f9daaa8a454abd747b4903f0391ad21af6b315a46cd92bbcaf08ac7d"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-desktop-report.json", "sha256": "2a6994ca45c8262a592cedb8deb8f026d366ee2df3bfe6ea0d375e8e214ba6c0"}, + "webReport": {"path": "tests/golden/M16-GAP-00061/grease-pencil-outline-modifier-local-exact-report.json", "sha256": "f490b2dc9b173a3172529ab529889a3292fe39f0cbd3951baaee8566464a0c43"} + }, + "nextTask": "M16-GAP-00062" +} diff --git a/tests/golden/M16-GAP-00061/task-context.json b/tests/golden/M16-GAP-00061/task-context.json new file mode 100644 index 00000000..05d6ec26 --- /dev/null +++ b/tests/golden/M16-GAP-00061/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00061", + "parentTask": "M16-GAP-00060", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_OUTLINE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_OUTLINE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00061.py -- tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00061", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00061" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00061.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7289, + "contextRemainingTokens": 1821 + }, + "source": { + "bytes": 6711, + "tokens": 1679 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00061.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00061-modifier-GREASE_PENCIL_OUTLINE.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00061/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00061.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00061/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00062", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00061.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00060/manifest.json", + "parentStatus": "docs/status/M16-GAP-00060.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00061.md", + "tests/golden/M16-GAP-00060/manifest.json", + "docs/status/M16-GAP-00060.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00060", + "parentTask": "M16-GAP-00059", + "status": "done", + "nextTask": "M16-GAP-00061", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00060 Status", + "status: done ", + "task: GREASE_PENCIL_OPACITY modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil OPACITY modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Opacity`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_OPACITY` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1794, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 449 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00061.md", + "bytes": 1794, + "lines": 38, + "tokens": 449 + }, + { + "path": "tests/golden/M16-GAP-00060/manifest.json", + "bytes": 2094, + "lines": 25, + "tokens": 524 + }, + { + "path": "docs/status/M16-GAP-00060.md", + "bytes": 655, + "lines": 19, + "tokens": 164 + } + ], + "sourceTokens": 1679, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1813, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-desktop-report.json b/tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-desktop-report.json new file mode 100644 index 00000000..99a445ba --- /dev/null +++ b/tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Shrinkwrap", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SHRINKWRAP", + "typeCode": 83 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00062" + }, + "operation": "GREASE_PENCIL_SHRINKWRAP_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00062" +} diff --git a/tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-local-exact-report.json b/tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-local-exact-report.json new file mode 100644 index 00000000..ee0432d3 --- /dev/null +++ b/tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00062", + "operation": "GREASE_PENCIL_SHRINKWRAP_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:866027982" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Shrinkwrap", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1895443529, + "typeCode": 83 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SHRINKWRAP", + "uuid": "modifier:object:GreasePencilObject:1895443529" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00063" +} diff --git a/tests/golden/M16-GAP-00062/manifest.json b/tests/golden/M16-GAP-00062/manifest.json new file mode 100644 index 00000000..5045b776 --- /dev/null +++ b/tests/golden/M16-GAP-00062/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00062", + "parentTask": "M16-GAP-00061", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_SHRINKWRAP_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00061/manifest.json", "sha256": "31883513aefa13e1668b0bde65b55f87c009d36e0bce841d3460e2dc3f3e5381"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00062.py", "sha256": "b3e97d53919cb031f359cc15429f5801ac59614ba8f6993183f9db8deb280e3f"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-desktop-report.json", "sha256": "6631f00a27489de3b3d5cd2288f1a1b395b3a7295f9fc4b72c2091d5ce333a45"}, + "webReport": {"path": "tests/golden/M16-GAP-00062/grease-pencil-shrinkwrap-modifier-local-exact-report.json", "sha256": "a00004d09bc0170a0f3148197dd3dd24fb39fac60c723214cce73e527c998e8c"} + }, + "nextTask": "M16-GAP-00063" +} diff --git a/tests/golden/M16-GAP-00062/task-context.json b/tests/golden/M16-GAP-00062/task-context.json new file mode 100644 index 00000000..841ead9a --- /dev/null +++ b/tests/golden/M16-GAP-00062/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00062", + "parentTask": "M16-GAP-00061", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SHRINKWRAP data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_SHRINKWRAP", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00062.py -- tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00062", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00062" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00062.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7274, + "contextRemainingTokens": 1817 + }, + "source": { + "bytes": 6726, + "tokens": 1683 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00062.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00062-modifier-GREASE_PENCIL_SHRINKWRAP.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00062/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00062.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00062/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00063", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00062.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00061/manifest.json", + "parentStatus": "docs/status/M16-GAP-00061.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00062.md", + "tests/golden/M16-GAP-00061/manifest.json", + "docs/status/M16-GAP-00061.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00061", + "parentTask": "M16-GAP-00060", + "status": "done", + "nextTask": "M16-GAP-00062", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00061 Status", + "status: done ", + "task: GREASE_PENCIL_OUTLINE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil OUTLINE modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Outline`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_OUTLINE` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1809, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 453 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00062.md", + "bytes": 1809, + "lines": 38, + "tokens": 453 + }, + { + "path": "tests/golden/M16-GAP-00061/manifest.json", + "bytes": 2094, + "lines": 25, + "tokens": 524 + }, + { + "path": "docs/status/M16-GAP-00061.md", + "bytes": 655, + "lines": 19, + "tokens": 164 + } + ], + "sourceTokens": 1683, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1817, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-desktop-report.json b/tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-desktop-report.json new file mode 100644 index 00000000..b5684e6b --- /dev/null +++ b/tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Simplify", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SIMPLIFY", + "typeCode": 85 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00063" + }, + "operation": "GREASE_PENCIL_SIMPLIFY_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00063" +} diff --git a/tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-local-exact-report.json b/tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-local-exact-report.json new file mode 100644 index 00000000..4489bff8 --- /dev/null +++ b/tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00063", + "operation": "GREASE_PENCIL_SIMPLIFY_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1895443529" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Simplify", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 411374307, + "typeCode": 85 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SIMPLIFY", + "uuid": "modifier:object:GreasePencilObject:411374307" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00064" +} diff --git a/tests/golden/M16-GAP-00063/manifest.json b/tests/golden/M16-GAP-00063/manifest.json new file mode 100644 index 00000000..9e9fc73b --- /dev/null +++ b/tests/golden/M16-GAP-00063/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00063", + "parentTask": "M16-GAP-00062", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_SIMPLIFY_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00062/manifest.json", "sha256": "943ee13f577cfa193e24e3d1a6cb698575fcbb7a72f52ddf9e122738c83e344a"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00063.py", "sha256": "a7b77f92944e9d61c4f52f478ee004f4caef642a810f1ed18d51318be04b0ff4"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-desktop-report.json", "sha256": "14de85a86a150ace281a6b632a5cdf3076104c623b3d313201a2efeb5bac6695"}, + "webReport": {"path": "tests/golden/M16-GAP-00063/grease-pencil-simplify-modifier-local-exact-report.json", "sha256": "6214778590468549ab03aa4bb67dcad6ae2f22d151dc6012c9e293e01ffa9dbe"} + }, + "nextTask": "M16-GAP-00064" +} diff --git a/tests/golden/M16-GAP-00063/task-context.json b/tests/golden/M16-GAP-00063/task-context.json new file mode 100644 index 00000000..82aa89d4 --- /dev/null +++ b/tests/golden/M16-GAP-00063/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00063", + "parentTask": "M16-GAP-00062", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SIMPLIFY data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_SIMPLIFY", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00063.py -- tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00063", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00063" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00063.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7257, + "contextRemainingTokens": 1813 + }, + "source": { + "bytes": 6743, + "tokens": 1687 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00063.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00063-modifier-GREASE_PENCIL_SIMPLIFY.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00063/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00063.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00063/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00064", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00063.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00062/manifest.json", + "parentStatus": "docs/status/M16-GAP-00062.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00063.md", + "tests/golden/M16-GAP-00062/manifest.json", + "docs/status/M16-GAP-00062.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00062", + "parentTask": "M16-GAP-00061", + "status": "done", + "nextTask": "M16-GAP-00063", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00062 Status", + "status: done ", + "task: GREASE_PENCIL_SHRINKWRAP modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil SHRINKWRAP modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Shrinkwrap`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_SHRINKWRAP` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1799, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 450 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00063.md", + "bytes": 1799, + "lines": 38, + "tokens": 450 + }, + { + "path": "tests/golden/M16-GAP-00062/manifest.json", + "bytes": 2106, + "lines": 25, + "tokens": 527 + }, + { + "path": "docs/status/M16-GAP-00062.md", + "bytes": 670, + "lines": 19, + "tokens": 168 + } + ], + "sourceTokens": 1687, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1821, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-desktop-report.json b/tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-desktop-report.json new file mode 100644 index 00000000..2356c4f1 --- /dev/null +++ b/tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Smooth", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SMOOTH", + "typeCode": 65 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00064" + }, + "operation": "GREASE_PENCIL_SMOOTH_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00064" +} diff --git a/tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-local-exact-report.json b/tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-local-exact-report.json new file mode 100644 index 00000000..e37f17c0 --- /dev/null +++ b/tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00064", + "operation": "GREASE_PENCIL_SMOOTH_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:411374307" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Smooth", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 486562295, + "typeCode": 65 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SMOOTH", + "uuid": "modifier:object:GreasePencilObject:486562295" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00065" +} diff --git a/tests/golden/M16-GAP-00064/manifest.json b/tests/golden/M16-GAP-00064/manifest.json new file mode 100644 index 00000000..47b5948d --- /dev/null +++ b/tests/golden/M16-GAP-00064/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00064", + "parentTask": "M16-GAP-00063", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_SMOOTH_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00063/manifest.json", "sha256": "004f0845b881563ebcc3bd208a081ae1626f88406fc912bcd031e5c611879ee2"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00064.py", "sha256": "1df74ba06ff31269cf1f98214aa6c0ca6aa0cc600e459315f92196f8aeb3dd4f"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-desktop-report.json", "sha256": "b58983c079c8271ab9d5230e478d36e16d49102826178e90566cd0a8913dd325"}, + "webReport": {"path": "tests/golden/M16-GAP-00064/grease-pencil-smooth-modifier-local-exact-report.json", "sha256": "da42e7440e07f1033f98fbd26274654b4f516821fa0e4c08db68df9468598564"} + }, + "nextTask": "M16-GAP-00065" +} diff --git a/tests/golden/M16-GAP-00064/task-context.json b/tests/golden/M16-GAP-00064/task-context.json new file mode 100644 index 00000000..3642a2f7 --- /dev/null +++ b/tests/golden/M16-GAP-00064/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00064", + "parentTask": "M16-GAP-00063", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SMOOTH data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_SMOOTH", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00064.py -- tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00064", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00064" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00064.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7285, + "contextRemainingTokens": 1820 + }, + "source": { + "bytes": 6715, + "tokens": 1680 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00064.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00064-modifier-GREASE_PENCIL_SMOOTH.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00064/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00064.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00064/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00065", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00064.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00063/manifest.json", + "parentStatus": "docs/status/M16-GAP-00063.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00064.md", + "tests/golden/M16-GAP-00063/manifest.json", + "docs/status/M16-GAP-00063.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00063", + "parentTask": "M16-GAP-00062", + "status": "done", + "nextTask": "M16-GAP-00064", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00063 Status", + "status: done ", + "task: GREASE_PENCIL_SIMPLIFY modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil SIMPLIFY modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Simplify`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_SIMPLIFY` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1789, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 448 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00064.md", + "bytes": 1789, + "lines": 38, + "tokens": 448 + }, + { + "path": "tests/golden/M16-GAP-00063/manifest.json", + "bytes": 2098, + "lines": 25, + "tokens": 525 + }, + { + "path": "docs/status/M16-GAP-00063.md", + "bytes": 660, + "lines": 19, + "tokens": 165 + } + ], + "sourceTokens": 1680, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1814, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-desktop-report.json b/tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-desktop-report.json new file mode 100644 index 00000000..39d0ee60 --- /dev/null +++ b/tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Subdiv", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SUBDIV", + "typeCode": 62 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00065" + }, + "operation": "GREASE_PENCIL_SUBDIV_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00065" +} diff --git a/tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-local-exact-report.json b/tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-local-exact-report.json new file mode 100644 index 00000000..386b8f49 --- /dev/null +++ b/tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00065", + "operation": "GREASE_PENCIL_SUBDIV_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:486562295" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Subdiv", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 2065543832, + "typeCode": 62 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_SUBDIV", + "uuid": "modifier:object:GreasePencilObject:2065543832" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00066" +} diff --git a/tests/golden/M16-GAP-00065/manifest.json b/tests/golden/M16-GAP-00065/manifest.json new file mode 100644 index 00000000..c8a4cbb2 --- /dev/null +++ b/tests/golden/M16-GAP-00065/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00065", + "parentTask": "M16-GAP-00064", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_SUBDIV_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00064/manifest.json", "sha256": "2e2a5fd2275e753249ec35a596c5b632b09e7fb61ba5a96566a988e8d917579d"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00065.py", "sha256": "977935d2e28afb3d9322e77d64440f5b69fdbf714ff6d8350a06acc1ea9cbce9"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-desktop-report.json", "sha256": "e4e86404702f4b46f207c66070adcc0a52e580aff6106f5404c97ab16351a2d2"}, + "webReport": {"path": "tests/golden/M16-GAP-00065/grease-pencil-subdiv-modifier-local-exact-report.json", "sha256": "3e09deb0756dd36c85e53e6011f3ca011c9ad4a237b577d529238675a9dd7213"} + }, + "nextTask": "M16-GAP-00066" +} diff --git a/tests/golden/M16-GAP-00065/task-context.json b/tests/golden/M16-GAP-00065/task-context.json new file mode 100644 index 00000000..3bf52680 --- /dev/null +++ b/tests/golden/M16-GAP-00065/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00065", + "parentTask": "M16-GAP-00064", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_SUBDIV data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_SUBDIV", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00065.py -- tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00065", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00065" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00065.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7303, + "contextRemainingTokens": 1824 + }, + "source": { + "bytes": 6697, + "tokens": 1676 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00065.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00065-modifier-GREASE_PENCIL_SUBDIV.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00065/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00065.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00065/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00066", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00065.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00064/manifest.json", + "parentStatus": "docs/status/M16-GAP-00064.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00065.md", + "tests/golden/M16-GAP-00064/manifest.json", + "docs/status/M16-GAP-00064.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00064", + "parentTask": "M16-GAP-00063", + "status": "done", + "nextTask": "M16-GAP-00065", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00064 Status", + "status: done ", + "task: GREASE_PENCIL_SMOOTH modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil SMOOTH modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Smooth`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_SMOOTH` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1789, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 448 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00065.md", + "bytes": 1789, + "lines": 38, + "tokens": 448 + }, + { + "path": "tests/golden/M16-GAP-00064/manifest.json", + "bytes": 2090, + "lines": 25, + "tokens": 523 + }, + { + "path": "docs/status/M16-GAP-00064.md", + "bytes": 650, + "lines": 19, + "tokens": 163 + } + ], + "sourceTokens": 1676, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1810, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-desktop-report.json b/tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-desktop-report.json new file mode 100644 index 00000000..afe56baf --- /dev/null +++ b/tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Texture", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_TEXTURE", + "typeCode": 86 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00066" + }, + "operation": "GREASE_PENCIL_TEXTURE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00066" +} diff --git a/tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-local-exact-report.json b/tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-local-exact-report.json new file mode 100644 index 00000000..a1323d11 --- /dev/null +++ b/tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00066", + "operation": "GREASE_PENCIL_TEXTURE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:2065543832" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Texture", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1309951243, + "typeCode": 86 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_TEXTURE", + "uuid": "modifier:object:GreasePencilObject:1309951243" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00067" +} diff --git a/tests/golden/M16-GAP-00066/manifest.json b/tests/golden/M16-GAP-00066/manifest.json new file mode 100644 index 00000000..a5011f0f --- /dev/null +++ b/tests/golden/M16-GAP-00066/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00066", + "parentTask": "M16-GAP-00065", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_TEXTURE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00065/manifest.json", "sha256": "7a9dc7efde0ee86ae0b6b40270b8af8760891b867ed0fb2a77d0afe76596e605"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00066.py", "sha256": "e51850c49d2fc333b943f421c92fe6bdbfcf79d23ccab95ee87f783bfa57f8f1"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-desktop-report.json", "sha256": "d3900098ba128c202ff28323c6e2945d78dd3c35512bbc2c5d611493b8b1e42d"}, + "webReport": {"path": "tests/golden/M16-GAP-00066/grease-pencil-texture-modifier-local-exact-report.json", "sha256": "b9831dad063cdfaa81aeb8894776b914652c6542d2e0a244cef321547e183068"} + }, + "nextTask": "M16-GAP-00067" +} diff --git a/tests/golden/M16-GAP-00066/task-context.json b/tests/golden/M16-GAP-00066/task-context.json new file mode 100644 index 00000000..d4a6144a --- /dev/null +++ b/tests/golden/M16-GAP-00066/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00066", + "parentTask": "M16-GAP-00065", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_TEXTURE data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_TEXTURE", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00066.py -- tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00066", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00066" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00066.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7293, + "contextRemainingTokens": 1822 + }, + "source": { + "bytes": 6707, + "tokens": 1678 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00066.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00066-modifier-GREASE_PENCIL_TEXTURE.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00066/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00066.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00066/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00067", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00066.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00065/manifest.json", + "parentStatus": "docs/status/M16-GAP-00065.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00066.md", + "tests/golden/M16-GAP-00065/manifest.json", + "docs/status/M16-GAP-00065.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00065", + "parentTask": "M16-GAP-00064", + "status": "done", + "nextTask": "M16-GAP-00066", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00065 Status", + "status: done ", + "task: GREASE_PENCIL_SUBDIV modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil SUBDIV modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Subdiv`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_SUBDIV` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1794, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 449 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00066.md", + "bytes": 1794, + "lines": 38, + "tokens": 449 + }, + { + "path": "tests/golden/M16-GAP-00065/manifest.json", + "bytes": 2090, + "lines": 25, + "tokens": 523 + }, + { + "path": "docs/status/M16-GAP-00065.md", + "bytes": 655, + "lines": 19, + "tokens": 164 + } + ], + "sourceTokens": 1678, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1812, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-desktop-report.json b/tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-desktop-report.json new file mode 100644 index 00000000..901df36e --- /dev/null +++ b/tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Thickness", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_THICKNESS", + "typeCode": 69 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00067" + }, + "operation": "GREASE_PENCIL_THICKNESS_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00067" +} diff --git a/tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-local-exact-report.json b/tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-local-exact-report.json new file mode 100644 index 00000000..e6345f90 --- /dev/null +++ b/tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00067", + "operation": "GREASE_PENCIL_THICKNESS_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1309951243" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Thickness", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1322899884, + "typeCode": 69 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_THICKNESS", + "uuid": "modifier:object:GreasePencilObject:1322899884" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00068" +} diff --git a/tests/golden/M16-GAP-00067/manifest.json b/tests/golden/M16-GAP-00067/manifest.json new file mode 100644 index 00000000..388bd915 --- /dev/null +++ b/tests/golden/M16-GAP-00067/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00067", + "parentTask": "M16-GAP-00066", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_THICKNESS_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00066/manifest.json", "sha256": "3dfb0fc8a218a3209fee25799df265761e06ce2a8ca161fd07c015f33ae3e144"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00067.py", "sha256": "89a64c14a4b1007dc3011bde0b5cb27c4bf77bbffd7ae3e89c5f6aac30f40cb9"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-desktop-report.json", "sha256": "664ec1a6c595fcb5fac0888ae866f70a48ef5d057035c5c614ed0d97a9d08108"}, + "webReport": {"path": "tests/golden/M16-GAP-00067/grease-pencil-thickness-modifier-local-exact-report.json", "sha256": "6e1eee5cf87df42fc94c144f5171f9653df4196372eccd001cef6907ef518e94"} + }, + "nextTask": "M16-GAP-00068" +} diff --git a/tests/golden/M16-GAP-00067/task-context.json b/tests/golden/M16-GAP-00067/task-context.json new file mode 100644 index 00000000..940c2c37 --- /dev/null +++ b/tests/golden/M16-GAP-00067/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00067", + "parentTask": "M16-GAP-00066", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_THICKNESS data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_THICKNESS", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00067.py -- tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00067", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00067" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00067.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7279, + "contextRemainingTokens": 1819 + }, + "source": { + "bytes": 6721, + "tokens": 1681 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00067.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00067-modifier-GREASE_PENCIL_THICKNESS.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00067/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00067.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00067/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00068", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00067.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00066/manifest.json", + "parentStatus": "docs/status/M16-GAP-00066.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00067.md", + "tests/golden/M16-GAP-00066/manifest.json", + "docs/status/M16-GAP-00066.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00066", + "parentTask": "M16-GAP-00065", + "status": "done", + "nextTask": "M16-GAP-00067", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00066 Status", + "status: done ", + "task: GREASE_PENCIL_TEXTURE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil TEXTURE modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Texture`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_TEXTURE` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1804, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 451 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00067.md", + "bytes": 1804, + "lines": 38, + "tokens": 451 + }, + { + "path": "tests/golden/M16-GAP-00066/manifest.json", + "bytes": 2094, + "lines": 25, + "tokens": 524 + }, + { + "path": "docs/status/M16-GAP-00066.md", + "bytes": 655, + "lines": 19, + "tokens": 164 + } + ], + "sourceTokens": 1681, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1815, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00068/grease-pencil-time-modifier-desktop-report.json b/tests/golden/M16-GAP-00068/grease-pencil-time-modifier-desktop-report.json new file mode 100644 index 00000000..f3e5924e --- /dev/null +++ b/tests/golden/M16-GAP-00068/grease-pencil-time-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Time", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_TIME", + "typeCode": 80 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00068" + }, + "operation": "GREASE_PENCIL_TIME_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00068" +} diff --git a/tests/golden/M16-GAP-00068/grease-pencil-time-modifier-local-exact-report.json b/tests/golden/M16-GAP-00068/grease-pencil-time-modifier-local-exact-report.json new file mode 100644 index 00000000..ffe9bec9 --- /dev/null +++ b/tests/golden/M16-GAP-00068/grease-pencil-time-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00068", + "operation": "GREASE_PENCIL_TIME_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00068/grease-pencil-time-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:1322899884" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Time", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 725115277, + "typeCode": 80 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_TIME", + "uuid": "modifier:object:GreasePencilObject:725115277" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00069" +} diff --git a/tests/golden/M16-GAP-00068/manifest.json b/tests/golden/M16-GAP-00068/manifest.json new file mode 100644 index 00000000..ec0f8b77 --- /dev/null +++ b/tests/golden/M16-GAP-00068/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00068", + "parentTask": "M16-GAP-00067", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_TIME_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00067/manifest.json", "sha256": "d79f6b8985fd81ae5254adee038d79505726142298a2d0d39155d7bb6609e80b"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00068.py", "sha256": "cd982ce4a34537a22a20a4b8efcf676624ce2d7a7dfbd8896ed2c37494889282"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00068/grease-pencil-time-modifier-desktop-report.json", "sha256": "761dd7ad0a350e9f3c175575cdb4d71f5bd0a56e1872626148d73c9a7229468f"}, + "webReport": {"path": "tests/golden/M16-GAP-00068/grease-pencil-time-modifier-local-exact-report.json", "sha256": "5cc9edb3f0fd508b25730b4d32deaa9a804381d7fbd8b4007af5e7782d27c590"} + }, + "nextTask": "M16-GAP-00069" +} diff --git a/tests/golden/M16-GAP-00068/task-context.json b/tests/golden/M16-GAP-00068/task-context.json new file mode 100644 index 00000000..372d358a --- /dev/null +++ b/tests/golden/M16-GAP-00068/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00068", + "parentTask": "M16-GAP-00067", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_TIME data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_TIME", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00068.py -- tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00068", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00068" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00068.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7286, + "contextRemainingTokens": 1820 + }, + "source": { + "bytes": 6714, + "tokens": 1680 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00068.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00068-modifier-GREASE_PENCIL_TIME.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00068/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00068.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00068/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00069", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00068.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00067/manifest.json", + "parentStatus": "docs/status/M16-GAP-00067.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00068.md", + "tests/golden/M16-GAP-00067/manifest.json", + "docs/status/M16-GAP-00067.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00067", + "parentTask": "M16-GAP-00066", + "status": "done", + "nextTask": "M16-GAP-00068", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00067 Status", + "status: done ", + "task: GREASE_PENCIL_THICKNESS modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil THICKNESS modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Thickness`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_THICKNESS` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1779, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 445 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00068.md", + "bytes": 1779, + "lines": 38, + "tokens": 445 + }, + { + "path": "tests/golden/M16-GAP-00067/manifest.json", + "bytes": 2102, + "lines": 25, + "tokens": 526 + }, + { + "path": "docs/status/M16-GAP-00067.md", + "bytes": 665, + "lines": 19, + "tokens": 167 + } + ], + "sourceTokens": 1680, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1814, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-desktop-report.json b/tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-desktop-report.json new file mode 100644 index 00000000..838e2e40 --- /dev/null +++ b/tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Tint", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_TINT", + "typeCode": 64 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00069" + }, + "operation": "GREASE_PENCIL_TINT_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00069" +} diff --git a/tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-local-exact-report.json b/tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-local-exact-report.json new file mode 100644 index 00000000..a1f8dd13 --- /dev/null +++ b/tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00069", + "operation": "GREASE_PENCIL_TINT_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:725115277" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Tint", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 398704216, + "typeCode": 64 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_TINT", + "uuid": "modifier:object:GreasePencilObject:398704216" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00070" +} diff --git a/tests/golden/M16-GAP-00069/manifest.json b/tests/golden/M16-GAP-00069/manifest.json new file mode 100644 index 00000000..5d00ae06 --- /dev/null +++ b/tests/golden/M16-GAP-00069/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00069", + "parentTask": "M16-GAP-00068", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_TINT_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00068/manifest.json", "sha256": "5d89b01c5ba47171c0878156521964c0dc77f7d4dad58fe9810456b116486c9e"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00069.py", "sha256": "6ebf4e9475f40e8ef0da9c0fe99beb221f965efaad0953cd507c3d24be2d951f"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "aab9b87b27c53777578bacda0b9e5a7e967de81e2b30131d42d1760c1c0f6b19"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "e3d53ba8f26287ce1f62308962af1c5e6c80213b4fee289d0a1fb4c3c4135c45"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-desktop-report.json", "sha256": "e66d9b22a901a41e9c7b0d460f970722192550f75a4f3f54612b97fcf9ed9238"}, + "webReport": {"path": "tests/golden/M16-GAP-00069/grease-pencil-tint-modifier-local-exact-report.json", "sha256": "44d113b3d6c291a18401d6dadbf915dfb907413c8ed96e092011484879f5e050"} + }, + "nextTask": "M16-GAP-00070" +} diff --git a/tests/golden/M16-GAP-00069/task-context.json b/tests/golden/M16-GAP-00069/task-context.json new file mode 100644 index 00000000..3e904a93 --- /dev/null +++ b/tests/golden/M16-GAP-00069/task-context.json @@ -0,0 +1,181 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00069", + "parentTask": "M16-GAP-00068", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_TINT data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_TINT", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00069.py -- tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00069", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00069" + ], + "inputPaths": [ + "tools/web/generated/M16-GAP-00069.py" + ], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7331, + "contextRemainingTokens": 1832 + }, + "source": { + "bytes": 6669, + "tokens": 1668 + }, + "selected": [ + { + "path": "tools/web/generated/M16-GAP-00069.py", + "bytes": 535, + "tokens": 134 + } + ], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00069-modifier-GREASE_PENCIL_TINT.blend", + "bytes": 87791, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221334, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00069/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00069.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00069/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 1, + "bytes": 535, + "tokens": 134 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00070", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00069.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00068/manifest.json", + "parentStatus": "docs/status/M16-GAP-00068.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00069.md", + "tests/golden/M16-GAP-00068/manifest.json", + "docs/status/M16-GAP-00068.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00068", + "parentTask": "M16-GAP-00067", + "status": "done", + "nextTask": "M16-GAP-00069", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00068 Status", + "status: done ", + "task: GREASE_PENCIL_TIME modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil TIME modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Time`; save/reopen is exact.", + "- WASM/Main exposes `GREASE_PENCIL_TIME` on the object scene node; save/reopen is exact." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1779, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 445 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00069.md", + "bytes": 1779, + "lines": 38, + "tokens": 445 + }, + { + "path": "tests/golden/M16-GAP-00068/manifest.json", + "bytes": 2082, + "lines": 25, + "tokens": 521 + }, + { + "path": "docs/status/M16-GAP-00068.md", + "bytes": 640, + "lines": 19, + "tokens": 160 + } + ], + "sourceTokens": 1668, + "evidenceFiles": 1, + "evidenceBytes": 535, + "evidenceTokens": 134, + "totalTokens": 1802, + "withinBudget": true + } +} diff --git a/tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-desktop-report.json b/tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-desktop-report.json new file mode 100644 index 00000000..d7cbc00a --- /dev/null +++ b/tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-desktop-report.json @@ -0,0 +1,22 @@ +{ + "blenderVersion": "5.2.0 LTS", + "fixture": "/home/mes123456/workinf_Blender_Wasm/tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend", + "fixtureSha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401", + "modifier": { + "modifier": { + "name": "Gp Vertex Weight Angle", + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", + "typeCode": 74 + }, + "objectId": "object:GreasePencilObject", + "task": "M16-GAP-00070" + }, + "operation": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE_MODIFIER_DESKTOP", + "saveReopen": "EXACT", + "schemaVersion": 1, + "task": "M16-GAP-00070" +} diff --git a/tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-local-exact-report.json b/tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-local-exact-report.json new file mode 100644 index 00000000..dc1354c9 --- /dev/null +++ b/tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-local-exact-report.json @@ -0,0 +1,43 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00070", + "operation": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE_MODIFIER_LOCAL_EXACT", + "fixture": { + "path": "tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend", + "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401" + }, + "desktop": { + "status": "EXACT", + "report": "tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-desktop-report.json", + "saveReopen": "EXACT" + }, + "wasm": { + "status": "EXACT", + "objectId": "object:GreasePencilObject", + "modifier": { + "dependsOn": [ + "modifier:object:GreasePencilObject:398704216" + ], + "enabled": false, + "evaluationStatus": "BLOCKED", + "name": "Gp Vertex Weight Angle", + "parameters": { + "flag": 1, + "mode": 6, + "persistentUid": 1435285600, + "typeCode": 74 + }, + "showEditMode": true, + "showOnCage": false, + "showRender": true, + "showViewport": false, + "type": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", + "uuid": "modifier:object:GreasePencilObject:1435285600" + } + }, + "saveReopen": "EXACT", + "negative": { + "malformedBlend": "REJECTED_WITHOUT_MAIN_MUTATION" + }, + "nextTask": "M16-GAP-00071" +} diff --git a/tests/golden/M16-GAP-00070/manifest.json b/tests/golden/M16-GAP-00070/manifest.json new file mode 100644 index 00000000..37da7855 --- /dev/null +++ b/tests/golden/M16-GAP-00070/manifest.json @@ -0,0 +1,24 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00070", + "parentTask": "M16-GAP-00069", + "enablingTask": false, + "parityStateChange": true, + "runtime": "BLENDER_5_2_LOCAL_EXACT", + "operation": "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE_MODIFIER_LOCAL_EXACT", + "status": "done", + "artifacts": { + "parentManifest": {"path": "tests/golden/M16-GAP-00069/manifest.json", "sha256": "5fae5d038ddc45dcd45a7a34d4194d8dd0d3e037cac84a6803ae28a49034ad02"}, + "fixture": {"path": "tests/files/web/generated/M16-GAP-00070-modifier-GREASE_PENCIL_VERTEX_WEIGHT_ANGLE.blend", "sha256": "6e81096d309df5ada76b5bdd7c9b1b3d5399081500939e7e9dc1777c9c720401"}, + "generator": {"path": "tools/web/generated/M16-GAP-00070.py", "sha256": "777e53fca82084ced7003328672cda678c8480db9c56c07517a19609ae353ecf"}, + "desktopChecker": {"path": "tools/web/check-generic-modifier-desktop.py", "sha256": "3a372e870f14c4559ee921aef1fbe086eccd609a0af5917e5b4872468ca22e51"}, + "webChecker": {"path": "tools/web/check-generated-gap.mjs", "sha256": "3f82ae54142cdae93c0d65765b2b8f3b46b8bbbe4c838f3a21365dc86d0e56ed"}, + "reader": {"path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "sha256": "58cdbe34c1b5c3bd8b0f8ef5144ae8f1b6af8ff51a336862a9001bff79cec82b"}, + "wasm": {"path": "web/app/src/vendor/blender/web_engine.wasm", "sha256": "90fa485cd6cc28d08e8f7ac8433f2e1ee1a88503ed6358d25ffea6f6ad18e5fb"}, + "wasmPublic": {"path": "web/app/public/vendor/blender/web_engine.wasm", "sha256": "90fa485cd6cc28d08e8f7ac8433f2e1ee1a88503ed6358d25ffea6f6ad18e5fb"}, + "wasmJs": {"path": "web/app/src/vendor/blender/web_engine.js", "sha256": "9c831d0351ac9d0714cce3b1da748cba416ced3086e3c59595cf24ac4da459ed"}, + "desktopReport": {"path": "tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-desktop-report.json", "sha256": "0c3fdcbf998064e77023d66239a6f0e9763cba14aced60d6d71bfd8968844e66"}, + "webReport": {"path": "tests/golden/M16-GAP-00070/grease-pencil-vertex-weight-angle-modifier-local-exact-report.json", "sha256": "79d31b01cb87a8a380d4e84ea69e9b3f19b5109029ad4c1193d15ab6058b8d01"} + }, + "nextTask": "M16-GAP-00071" +} diff --git a/tests/golden/M16-GAP-00071/task-context.json b/tests/golden/M16-GAP-00071/task-context.json new file mode 100644 index 00000000..8b2d6fe3 --- /dev/null +++ b/tests/golden/M16-GAP-00071/task-context.json @@ -0,0 +1,178 @@ +{ + "schemaVersion": 1, + "task": "M16-GAP-00071", + "parentTask": "M16-GAP-00070", + "status": "in_progress", + "goal": "Make the same minimal fixture produce observable modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY data in Blender desktop and WASM/Main, with save/reopen stability. Change only this gap; do not expand to other data-blocks, editors, or browsers.", + "scope": { + "gap": "modifier:GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", + "ownerFamily": "MODIFIER", + "implementationClass": "LOCAL_EXACT" + }, + "commands": [ + "build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00071.py -- tests/files/web/generated/M16-GAP-00071-modifier-GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY.blend", + "npm --prefix web run test:generated-gap -- --task M16-GAP-00071", + "node tools/web/check-generated-gap.mjs --task M16-GAP-00071" + ], + "inputPaths": [], + "inputSelection": { + "schemaVersion": 1, + "limits": { + "maxFiles": 12, + "evidenceBytes": 8192, + "contextRemainingBytes": 7054, + "contextRemainingTokens": 1762 + }, + "source": { + "bytes": 6946, + "tokens": 1738 + }, + "selected": [], + "excluded": [ + { + "path": "tests/files/web/generated/M16-GAP-00071-modifier-GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY.blend", + "bytes": null, + "reason": "MISSING_PATH" + }, + { + "path": "tools/web/generated/M16-GAP-00071.py", + "bytes": null, + "reason": "MISSING_PATH" + }, + { + "path": "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", + "bytes": 221348, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tools/web/check-generated-gap.mjs", + "bytes": 138829, + "reason": "EVIDENCE_BYTE_BUDGET" + }, + { + "path": "tests/golden/M16-GAP-00071/", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "docs/status/M16-GAP-00071.md", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + }, + { + "path": "tests/golden/M16-GAP-00071/manifest.json", + "bytes": null, + "reason": "GENERATED_EVIDENCE_OUTPUT" + } + ], + "totals": { + "files": 0, + "bytes": 0, + "tokens": 0 + } + }, + "exitCriteria": [ + "desktop fixture evidence exists", + "WASM uses the same fixture", + "comparator passes", + "save/reopen preserves Main", + "manifest hashes all artifacts" + ], + "nextTask": "M16-GAP-00072", + "sourceDocuments": { + "queue": "docs/EXECUTION_QUEUE.md", + "taskCard": "docs/tasks/M16-GAP-00071.md", + "taskIndex": "tests/golden/M15-03A/task-index.json", + "parentManifest": "tests/golden/M16-GAP-00070/manifest.json", + "parentStatus": "docs/status/M16-GAP-00070.md" + }, + "readPolicy": { + "required": [ + "docs/EXECUTION_QUEUE.md", + "docs/tasks/M16-GAP-00071.md", + "tests/golden/M16-GAP-00070/manifest.json", + "docs/status/M16-GAP-00070.md" + ], + "machineOnly": [ + "tests/golden/M15-03A/task-index.json", + "tests/golden/M15-03A/task-catalog.jsonl" + ], + "optionalByNeed": [ + "docs/WEB_BLENDER_MODELER_V1_SCOPE.md", + "任务卡列出的精确协议/生产路径", + "任务卡明确命名的长期计划小节" + ], + "forbiddenByDefault": [ + "完整 CURRENT_EXECUTION_PLAN.md", + "完整 PROJECT_STATUS_AND_NEXT_WORK.md", + "全部 docs/status/*.md", + "完整 parity/WBS 计划", + "README 历史和 test-results/" + ] + }, + "parent": { + "manifest": { + "schemaVersion": 1, + "task": "M16-GAP-00070", + "parentTask": "M16-GAP-00069", + "status": "done", + "nextTask": "M16-GAP-00071", + "artifactCount": 11 + }, + "statusSummary": [ + "# M16-GAP-00070 Status", + "status: done ", + "task: GREASE_PENCIL_VERTEX_WEIGHT_ANGLE modifier LOCAL_EXACT slice ", + "updated: 2026-08-20 America/New_York", + "scope: Grease Pencil VERTEX_WEIGHT_ANGLE modifier stack exposure for `object:GreasePencilObject`.", + "evidence:", + "- Desktop fixture exposes `Gp Vertex Weight Angle`; save/reopen is exact.", + "- Corrected the reader's Blender 5.2 type-name mapping and rebuilt WASM; WASM/Main exposes `GREASE_PENCIL_VERTEX_WEIGHT_ANGLE` on the object scene node." + ] + }, + "budgets": { + "queueBytes": 4096, + "taskBytes": 1874, + "parentManifestBytes": 24576, + "parentStatusBytes": 6144, + "evidenceFiles": 12, + "evidenceBytes": 8192, + "contextTokens": 3500, + "taskLines": 38, + "taskTokens": 469 + }, + "size": { + "documents": [ + { + "path": "docs/EXECUTION_QUEUE.md", + "bytes": 2168, + "lines": 45, + "tokens": 542 + }, + { + "path": "docs/tasks/M16-GAP-00071.md", + "bytes": 1874, + "lines": 38, + "tokens": 469 + }, + { + "path": "tests/golden/M16-GAP-00070/manifest.json", + "bytes": 2142, + "lines": 25, + "tokens": 536 + }, + { + "path": "docs/status/M16-GAP-00070.md", + "bytes": 762, + "lines": 19, + "tokens": 191 + } + ], + "sourceTokens": 1738, + "evidenceFiles": 0, + "evidenceBytes": 0, + "evidenceTokens": 0, + "totalTokens": 1738, + "withinBudget": true + } +} diff --git a/tools/web/check-action-desktop.py b/tools/web/check-action-desktop.py new file mode 100644 index 00000000..aacf1b74 --- /dev/null +++ b/tools/web/check-action-desktop.py @@ -0,0 +1,51 @@ +#!/usr/bin/env python3 +"""Read the Action gap fixture with Blender 5.2 and verify save/reopen stability.""" +import hashlib +import json +import pathlib +import sys +import tempfile +import os + +import bpy + + +def action_report(): + actions = [] + for action in sorted(bpy.data.actions, key=lambda value: value.name): + channels = [] + for layer in action.layers: + for strip in layer.strips: + for bag in strip.channelbags: + channels.extend((curve.data_path, curve.array_index, len(curve.keyframe_points)) for curve in bag.fcurves) + actions.append({"name": action.name, "frameRange": [round(float(value), 6) for value in action.frame_range], "channels": sorted(channels)}) + return actions + + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: + raise SystemExit("usage: blender -b --python check-action-desktop.py -- FIXTURE REPORT") + fixture, report_path = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = action_report() + if len(before) != 1 or before[0]["name"] != "AnimatedObjectAction": + raise RuntimeError(f"unexpected Action inventory: {before}") + descriptor, temporary = tempfile.mkstemp(prefix="m16-action-reopen-", suffix=".blend") + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = action_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"Action save/reopen drift: before={before} after={after}") + report = {"schemaVersion": 1, "task": "M16-GAP-00001", "operation": "ACTION_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "actions": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + report_path.parent.mkdir(parents=True, exist_ok=True) + report_path.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"action-desktop-ok actions={len(after)} channels={len(after[0]['channels'])} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-armature-desktop.py b/tools/web/check-armature-desktop.py new file mode 100644 index 00000000..381510e7 --- /dev/null +++ b/tools/web/check-armature-desktop.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + armature = next((value for value in bpy.data.armatures if value.name == "RiggedArmature"), None) + if armature is None: raise RuntimeError("RiggedArmature is missing") + return {"name": armature.name, "bones": [{"name": bone.name, "parent": bone.parent.name if bone.parent else None, "head": [round(float(v), 6) for v in bone.head_local], "tail": [round(float(v), 6) for v in bone.tail_local]} for bone in armature.bones]} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-armature-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-armature-reopen-", suffix=".blend"); os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"armature save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00002", "operation": "ARMATURE_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "armature": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"armature-desktop-ok bones={len(after['bones'])} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-armature-modifier-desktop.py b/tools/web/check-armature-modifier-desktop.py new file mode 100644 index 00000000..18fd1854 --- /dev/null +++ b/tools/web/check-armature-modifier-desktop.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + mesh_object = bpy.data.objects.get("WebGapArmatureMeshObject") + armature_object = bpy.data.objects.get("WebGapArmatureObject") + if mesh_object is None or mesh_object.type != "MESH": + raise RuntimeError("WebGapArmatureMeshObject is missing") + if armature_object is None or armature_object.type != "ARMATURE": + raise RuntimeError("WebGapArmatureObject is missing") + modifiers = [modifier for modifier in mesh_object.modifiers if modifier.type == "ARMATURE"] + if len(modifiers) != 1: + raise RuntimeError(f"expected exactly one ARMATURE modifier, found {len(modifiers)}") + modifier = modifiers[0] + type_code = bpy.types.Modifier.bl_rna.properties["type"].enum_items[modifier.type].value + return { + "meshId": "mesh:" + mesh_object.data.name, + "meshName": mesh_object.data.name, + "armatureObjectId": "object:" + armature_object.name, + "armatureDataId": "armature:" + armature_object.data.name, + "modifier": { + "name": modifier.name, + "type": modifier.type, + "typeCode": type_code, + "enabled": bool(modifier.show_viewport), + "showViewport": bool(modifier.show_viewport), + "showRender": bool(modifier.show_render), + "showEditMode": bool(modifier.show_in_editmode), + "showOnCage": bool(modifier.show_on_cage), + "vertexGroup": modifier.vertex_group, + "targetObjectId": "object:" + modifier.object.name if modifier.object else None, + }, + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-armature-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-armature-modifier-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"armature modifier save/reopen drift: {before} != {after}") + value = { + "schemaVersion": 1, + "task": "M16-GAP-00030", + "operation": "ARMATURE_MODIFIER_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "modifier": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"armature-modifier-desktop-ok mesh={after['meshId']} modifier={after['modifier']['name']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-array-modifier-desktop.py b/tools/web/check-array-modifier-desktop.py new file mode 100644 index 00000000..10bd88c5 --- /dev/null +++ b/tools/web/check-array-modifier-desktop.py @@ -0,0 +1,61 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + source = bpy.data.objects.get("WebGapArrayObject") + if source is None or source.type != "MESH": + raise RuntimeError("WebGapArrayObject is missing") + modifiers = [modifier for modifier in source.modifiers if modifier.type == "ARRAY"] + if len(modifiers) != 1: + raise RuntimeError(f"expected exactly one ARRAY modifier, found {len(modifiers)}") + modifier = modifiers[0] + return { + "meshId": "mesh:" + source.data.name, + "modifier": { + "name": modifier.name, + "type": modifier.type, + "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[modifier.type].value, + "count": int(modifier.count), + "startCapObjectId": "object:" + modifier.start_cap.name if modifier.start_cap else None, + "endCapObjectId": "object:" + modifier.end_cap.name if modifier.end_cap else None, + "showViewport": bool(modifier.show_viewport), + "showRender": bool(modifier.show_render), + "showEditMode": bool(modifier.show_in_editmode), + "showOnCage": bool(modifier.show_on_cage), + }, + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-array-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-array-modifier-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"array modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00031", "operation": "ARRAY_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"array-modifier-desktop-ok mesh={after['meshId']} count={after['modifier']['count']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-bevel-modifier-desktop.py b/tools/web/check-bevel-modifier-desktop.py new file mode 100644 index 00000000..cfe29749 --- /dev/null +++ b/tools/web/check-bevel-modifier-desktop.py @@ -0,0 +1,61 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + obj = bpy.data.objects.get("WebGapBevelObject") + if obj is None or obj.type != "MESH": + raise RuntimeError("WebGapBevelObject is missing") + modifiers = [modifier for modifier in obj.modifiers if modifier.type == "BEVEL"] + if len(modifiers) != 1: + raise RuntimeError(f"expected exactly one BEVEL modifier, found {len(modifiers)}") + modifier = modifiers[0] + return { + "meshId": "mesh:" + obj.data.name, + "modifier": { + "name": modifier.name, + "type": modifier.type, + "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[modifier.type].value, + "width": round(float(modifier.width), 6), + "segments": int(modifier.segments), + "profile": round(float(modifier.profile), 6), + "showViewport": bool(modifier.show_viewport), + "showRender": bool(modifier.show_render), + "showEditMode": bool(modifier.show_in_editmode), + "showOnCage": bool(modifier.show_on_cage), + }, + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-bevel-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-bevel-modifier-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"bevel modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00032", "operation": "BEVEL_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"bevel-modifier-desktop-ok mesh={after['meshId']} width={after['modifier']['width']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-blender-contract-audit.mjs b/tools/web/check-blender-contract-audit.mjs new file mode 100644 index 00000000..fa9b30c1 --- /dev/null +++ b/tools/web/check-blender-contract-audit.mjs @@ -0,0 +1,38 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const task = process.argv[2]; +const config = { + "M15-02C": { mode: "LOCAL_EXACT", nextTask: "M15-02D", parent: "M15-02B", dir: "M15-02C", file: "local-exact-audit" }, + "M15-02D": { mode: "LOCAL_EQUIVALENT", nextTask: "M15-02E", parent: "M15-02C", dir: "M15-02D", file: "local-equivalent-audit" }, + "M15-02E": { mode: "SERVER_EXACT", nextTask: "M15-02F", parent: "M15-02D", dir: "M15-02E", file: "server-exact-audit" }, + "M15-02F": { mode: "UNKNOWN_DATA_PRESERVATION", nextTask: "M15-03A", parent: "M15-02E", dir: "M15-02F", file: "unknown-data-audit" }, +}; +const c = config[task]; +if (!c) throw new Error("usage: node check-blender-contract-audit.mjs M15-02C"); +const generator = path.join(root, "tools/web/generate-blender-contract-audit.mjs"); +const auditPath = path.join(root, `tests/golden/${c.dir}/${c.file}.json`); +const reportPath = path.join(root, `tests/golden/${c.dir}/${c.file}-check-report.json`); +const manifestPath = path.join(root, `tests/golden/${c.dir}/manifest.json`); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); +const audit = JSON.parse(fs.readFileSync(auditPath, "utf8")); +assert.equal(audit.schemaVersion, 1); assert.equal(audit.task, task); assert.equal(audit.operation, "BLENDER_PARITY_CONTRACT_AUDIT"); assert.equal(audit.contract.mode, c.mode); assert.equal(audit.contract.failClosed, true); assert.equal(audit.summary.inventoried, 6900); assert.equal(audit.summary.applicable, 0); assert.equal(audit.summary.blocked, 0); assert.equal(audit.summary.ready, 0); assert.equal(audit.summary.notApplicable, audit.summary.inventoried); assert.equal(audit.interpretation, "NO_CLAIMS_DECLARED"); assert.deepEqual(audit.blockedIds, []); assert.deepEqual(audit.readyIds, []); +assert.equal(fileSha256(path.join(root, audit.source.path)), audit.source.sha256); +const temporary = path.join(root, `.tmp-${task}.json`); +try { execFileSync(process.execPath, [generator, task, temporary], { cwd: root, stdio: "pipe" }); assert.deepEqual(fs.readFileSync(temporary), fs.readFileSync(auditPath), `${task} audit is not deterministic`); } finally { fs.rmSync(temporary, { force: true }); } +const report = { schemaVersion: 1, task, operation: "BLENDER_PARITY_CONTRACT_AUDIT_CHECK", contract: audit.contract, summary: audit.summary, auditSha256: fileSha256(auditPath), nextTask: audit.nextTask }; +if (process.env[`UPDATE_${task.replaceAll("-", "_")}_MANIFEST`] === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, `tests/golden/${c.parent}/manifest.json`), generator, checker: path.join(root, "tools/web/check-blender-contract-audit.mjs"), audit: auditPath, report: reportPath, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task, parentTask: c.parent, enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_PARITY", operation: "BLENDER_PARITY_CONTRACT_AUDIT", artifacts, nextTask: c.nextTask }, null, 2)}\n`); +} +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task, parentTask: c.parent, nextTask: c.nextTask }); for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); +process.stdout.write(`blender-contract-audit-ok task=${task} mode=${c.mode} applicable=0 blocked=0 notApplicable=${audit.summary.notApplicable} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-core-inventory.mjs b/tools/web/check-blender-core-inventory.mjs new file mode 100644 index 00000000..2bc6a63e --- /dev/null +++ b/tools/web/check-blender-core-inventory.mjs @@ -0,0 +1,63 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { spawnSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-core-inventory.py"); +const expectedPath = path.join(root, "tests/golden/M15-01F/blender-core-inventory.json"); +const reportPath = path.join(root, "tests/golden/M15-01F/core-inventory-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-01F/manifest.json"); +const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "blender-core-inventory-")); +const regeneratedPath = path.join(temporary, "inventory.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +try { + const blender = process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"); + const run = spawnSync(blender, ["-b", "--factory-startup", "--python", generator, "--", regeneratedPath], { cwd: root, encoding: "utf8", maxBuffer: 32 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const expectedBytes = fs.readFileSync(expectedPath); + assert.deepEqual(fs.readFileSync(regeneratedPath), expectedBytes, "Blender core inventory is not deterministic"); + const inventory = JSON.parse(expectedBytes); + assert.equal(inventory.schemaVersion, 1); + assert.equal(inventory.task, "M15-01F"); + assert.equal(inventory.operation, "BLENDER_CORE_INVENTORY"); + assert.deepEqual(inventory.runtime.versionTuple, [5, 2, 0]); + assert.equal(inventory.runtime.blenderVersion, "5.2.0 LTS"); + const families = ["Core", "Depsgraph", "Main", "Mesh", "Scene"]; + assert.deepEqual(Object.keys(inventory.summary.byFamily).sort(), families); + assert.ok(inventory.summary.classCount >= 100); + assert.equal(inventory.classes.length, inventory.summary.classCount); + const identifiers = inventory.classes.map((entry) => `${entry.family}:${entry.rnaIdentifier}`); + assert.deepEqual(identifiers, [...identifiers].sort(), "core class identifiers are not sorted"); + assert.equal(new Set(identifiers).size, identifiers.length, "core class identifiers are not unique"); + for (const family of families) assert.equal(inventory.classes.filter((entry) => entry.family === family).length, inventory.summary.byFamily[family]); + for (const entry of inventory.classes) { + assert.ok(families.includes(entry.family)); + assert.match(entry.className, /^[A-Za-z0-9_]+$/); + assert.match(entry.rnaIdentifier, /^[A-Za-z0-9_]+$/); + assert.ok(Array.isArray(entry.properties)); + const properties = entry.properties.map((property) => property.identifier); + assert.deepEqual(properties, [...properties].sort(), `${entry.className} properties are not sorted`); + assert.equal(new Set(properties).size, properties.length, `${entry.className} properties are not unique`); + } + const report = { schemaVersion: 1, task: "M15-01F", operation: "BLENDER_CORE_INVENTORY_CHECK", runtime: inventory.runtime, summary: inventory.summary, firstClass: inventory.classes[0].rnaIdentifier, lastClass: inventory.classes.at(-1).rnaIdentifier, inventorySha256: sha256(expectedBytes), nextTask: inventory.nextTask }; + if (process.env.UPDATE_M15_01F_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-01E/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-core-inventory.mjs"), inventory: expectedPath, report: reportPath, runtime: blender, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-01F", parentTask: "M15-01E", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_CORE", operation: "BLENDER_CORE_INVENTORY", artifacts, nextTask: "M15-02A" }, null, 2)}\n`); + } + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-01F", parentTask: "M15-01E", nextTask: "M15-02A" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`blender-core-inventory-ok classes=${inventory.summary.classCount} main=${inventory.summary.byFamily.Main} scene=${inventory.summary.byFamily.Scene} mesh=${inventory.summary.byFamily.Mesh} depsgraph=${inventory.summary.byFamily.Depsgraph} core=${inventory.summary.byFamily.Core} inventory=${sha256(expectedBytes)} next=${manifest.nextTask}\n`); +} finally { + fs.rmSync(temporary, { recursive: true, force: true }); +} diff --git a/tools/web/check-blender-editor-inventory.mjs b/tools/web/check-blender-editor-inventory.mjs new file mode 100644 index 00000000..e9c44be1 --- /dev/null +++ b/tools/web/check-blender-editor-inventory.mjs @@ -0,0 +1,71 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { spawnSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-editor-inventory.py"); +const expectedPath = path.join(root, "tests/golden/M15-01E/blender-editor-inventory.json"); +const reportPath = path.join(root, "tests/golden/M15-01E/editor-inventory-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-01E/manifest.json"); +const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "blender-editor-inventory-")); +const regeneratedPath = path.join(temporary, "inventory.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +try { + const blender = process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"); + const run = spawnSync(blender, ["-b", "--factory-startup", "--python", generator, "--", regeneratedPath], { cwd: root, encoding: "utf8", maxBuffer: 32 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const expectedBytes = fs.readFileSync(expectedPath); + assert.deepEqual(fs.readFileSync(regeneratedPath), expectedBytes, "Blender editor inventory is not deterministic"); + const inventory = JSON.parse(expectedBytes); + assert.equal(inventory.schemaVersion, 1); + assert.equal(inventory.task, "M15-01E"); + assert.equal(inventory.operation, "BLENDER_EDITOR_INVENTORY"); + assert.deepEqual(inventory.runtime.versionTuple, [5, 2, 0]); + assert.equal(inventory.runtime.blenderVersion, "5.2.0 LTS"); + assert.ok(inventory.summary.areaTypeCount >= 15); + assert.ok(inventory.summary.regionTypeCount >= 15); + assert.ok(inventory.summary.spaceTypeCount >= 15); + assert.ok(inventory.summary.spaceClassCount >= 10); + assert.ok(inventory.summary.workspaceModeCount >= 10); + assert.ok(inventory.summary.keymapCount >= 250); + assert.ok(inventory.summary.keymapItemCount >= 3000); + assert.equal(inventory.keymaps.length, inventory.summary.keymapCount); + assert.equal(inventory.keymaps.reduce((count, keymap) => count + keymap.items.length, 0), inventory.summary.keymapItemCount); + const sortedUnique = (values, label) => { + assert.deepEqual(values, [...values].sort(), `${label} are not sorted`); + assert.equal(new Set(values).size, values.length, `${label} are not unique`); + }; + for (const [name, values] of [["area types", inventory.areaTypes], ["region types", inventory.regionTypes], ["space types", inventory.spaceTypes], ["workspace modes", inventory.workspaceModes]]) sortedUnique(values.map((entry) => entry.identifier), name); + sortedUnique(inventory.spaceClasses.map((entry) => entry.rnaIdentifier), "space classes"); + sortedUnique(inventory.keymaps.map((entry) => `${entry.name}:${entry.spaceType}:${entry.regionType}`), "keymaps"); + for (const keymap of inventory.keymaps) { + assert.ok(Array.isArray(keymap.items)); + for (const item of keymap.items) { + if (item.idname) assert.match(item.idname, /^[a-z0-9_]+\.[a-z0-9_]+$/); + else assert.equal(keymap.modal, true, `${keymap.name} has an empty operator id outside a modal map`); + assert.match(item.mapType, /^[A-Z]+$/); + assert.equal(typeof item.active, "boolean"); + } + } + const report = { schemaVersion: 1, task: "M15-01E", operation: "BLENDER_EDITOR_INVENTORY_CHECK", runtime: inventory.runtime, summary: inventory.summary, firstArea: inventory.areaTypes[0].identifier, lastKeymap: inventory.keymaps.at(-1).name, inventorySha256: sha256(expectedBytes), nextTask: inventory.nextTask }; + if (process.env.UPDATE_M15_01E_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-01D/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-editor-inventory.mjs"), inventory: expectedPath, report: reportPath, runtime: blender, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-01E", parentTask: "M15-01D", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_EDITOR", operation: "BLENDER_EDITOR_INVENTORY", artifacts, nextTask: "M15-01F" }, null, 2)}\n`); + } + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-01E", parentTask: "M15-01D", nextTask: "M15-01F" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`blender-editor-inventory-ok areas=${inventory.summary.areaTypeCount} regions=${inventory.summary.regionTypeCount} keymaps=${inventory.summary.keymapCount} items=${inventory.summary.keymapItemCount} inventory=${sha256(expectedBytes)} next=${manifest.nextTask}\n`); +} finally { + fs.rmSync(temporary, { recursive: true, force: true }); +} diff --git a/tools/web/check-blender-family-inventory.mjs b/tools/web/check-blender-family-inventory.mjs new file mode 100644 index 00000000..03dc2f98 --- /dev/null +++ b/tools/web/check-blender-family-inventory.mjs @@ -0,0 +1,72 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { spawnSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-family-inventory.py"); +const expectedPath = path.join(root, "tests/golden/M15-01C/blender-family-inventory.json"); +const reportPath = path.join(root, "tests/golden/M15-01C/family-inventory-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-01C/manifest.json"); +const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "blender-family-inventory-")); +const regeneratedPath = path.join(temporary, "inventory.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +try { + const blender = process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"); + const run = spawnSync(blender, ["-b", "--factory-startup", "--python", generator, "--", regeneratedPath], { cwd: root, encoding: "utf8", maxBuffer: 32 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const expectedBytes = fs.readFileSync(expectedPath); + assert.deepEqual(fs.readFileSync(regeneratedPath), expectedBytes, "Blender family inventory is not deterministic"); + const inventory = JSON.parse(expectedBytes); + assert.equal(inventory.schemaVersion, 1); + assert.equal(inventory.task, "M15-01C"); + assert.equal(inventory.operation, "BLENDER_FAMILY_INVENTORY"); + assert.deepEqual(inventory.runtime.versionTuple, [5, 2, 0]); + assert.equal(inventory.runtime.blenderVersion, "5.2.0 LTS"); + assert.match(inventory.runtime.binarySha256, /^[a-f0-9]{64}$/); + assert.ok(inventory.summary.modifierCount >= 80); + assert.ok(inventory.summary.constraintCount >= 25); + assert.ok(inventory.summary.nodeCount >= 400); + assert.deepEqual(Object.keys(inventory.summary.nodesByFamily).sort(), ["Compositor", "Geometry", "Shader"]); + assert.equal(inventory.nodes.length, inventory.summary.nodeCount); + for (const [key, value] of Object.entries(inventory.summary.nodesByFamily)) assert.equal(inventory.nodes.filter((node) => node.family === key).length, value); + const checkSortedUnique = (values, label) => { + assert.deepEqual(values, [...values].sort(), `${label} are not sorted`); + assert.equal(new Set(values).size, values.length, `${label} are not unique`); + }; + checkSortedUnique(inventory.modifiers.map((entry) => entry.identifier), "modifier identifiers"); + checkSortedUnique(inventory.constraints.map((entry) => entry.identifier), "constraint identifiers"); + checkSortedUnique(inventory.nodes.map((entry) => `${entry.family}:${entry.rnaIdentifier}`), "node identifiers"); + for (const entry of [...inventory.modifiers, ...inventory.constraints]) { + assert.match(entry.identifier, /^[A-Z0-9_]+$/); + assert.equal(typeof entry.name, "string"); + assert.equal(typeof entry.description, "string"); + assert.equal(typeof entry.value, "number"); + } + for (const entry of inventory.nodes) { + assert.match(entry.family, /^(Shader|Geometry|Compositor)$/); + assert.match(entry.rnaIdentifier, /^(Shader|Geometry|Compositor)Node[A-Za-z0-9_]+$/); + assert.ok(Array.isArray(entry.properties)); + checkSortedUnique(entry.properties.map((property) => property.identifier), `${entry.rnaIdentifier} properties`); + } + const report = { schemaVersion: 1, task: "M15-01C", operation: "BLENDER_FAMILY_INVENTORY_CHECK", runtime: inventory.runtime, summary: inventory.summary, firstModifier: inventory.modifiers[0].identifier, lastNode: inventory.nodes.at(-1).rnaIdentifier, inventorySha256: sha256(expectedBytes), nextTask: inventory.nextTask }; + if (process.env.UPDATE_M15_01C_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-01B/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-family-inventory.mjs"), inventory: expectedPath, report: reportPath, runtime: blender, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-01C", parentTask: "M15-01B", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_FAMILY", operation: "BLENDER_FAMILY_INVENTORY", artifacts, nextTask: "M15-01D" }, null, 2)}\n`); + } + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-01C", parentTask: "M15-01B", nextTask: "M15-01D" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`blender-family-inventory-ok modifiers=${inventory.summary.modifierCount} constraints=${inventory.summary.constraintCount} nodes=${inventory.summary.nodeCount} inventory=${sha256(expectedBytes)} next=${manifest.nextTask}\n`); +} finally { + fs.rmSync(temporary, { recursive: true, force: true }); +} diff --git a/tools/web/check-blender-format-inventory.mjs b/tools/web/check-blender-format-inventory.mjs new file mode 100644 index 00000000..1d63d856 --- /dev/null +++ b/tools/web/check-blender-format-inventory.mjs @@ -0,0 +1,71 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { spawnSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-format-inventory.py"); +const expectedPath = path.join(root, "tests/golden/M15-01D/blender-format-inventory.json"); +const reportPath = path.join(root, "tests/golden/M15-01D/format-inventory-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-01D/manifest.json"); +const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "blender-format-inventory-")); +const regeneratedPath = path.join(temporary, "inventory.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +try { + const blender = process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"); + const run = spawnSync(blender, ["-b", "--factory-startup", "--python", generator, "--", regeneratedPath], { cwd: root, encoding: "utf8", maxBuffer: 32 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const expectedBytes = fs.readFileSync(expectedPath); + assert.deepEqual(fs.readFileSync(regeneratedPath), expectedBytes, "Blender format inventory is not deterministic"); + const inventory = JSON.parse(expectedBytes); + assert.equal(inventory.schemaVersion, 1); + assert.equal(inventory.task, "M15-01D"); + assert.equal(inventory.operation, "BLENDER_FORMAT_INVENTORY"); + assert.deepEqual(inventory.runtime.versionTuple, [5, 2, 0]); + assert.equal(inventory.runtime.blenderVersion, "5.2.0 LTS"); + assert.ok(inventory.summary.stripTypeCount >= 20); + assert.ok(inventory.summary.physicsTypeCount >= 40); + assert.ok(inventory.summary.ioOperatorCount >= 25); + assert.equal(inventory.stripTypes.length, inventory.summary.stripTypeCount); + assert.equal(inventory.physicsTypes.length, inventory.summary.physicsTypeCount); + assert.equal(inventory.ioOperators.length, inventory.summary.ioOperatorCount); + const sortedUnique = (values, label) => { + assert.deepEqual(values, [...values].sort(), `${label} are not sorted`); + assert.equal(new Set(values).size, values.length, `${label} are not unique`); + }; + sortedUnique(inventory.stripTypes.map((entry) => entry.identifier), "strip types"); + sortedUnique(inventory.physicsTypes.map((entry) => entry.rnaIdentifier), "physics types"); + sortedUnique(inventory.ioOperators.map((entry) => entry.operator), "I/O operators"); + for (const entry of inventory.stripTypes) assert.match(entry.identifier, /^[A-Z0-9_]+$/); + for (const entry of inventory.physicsTypes) { + assert.match(entry.className, /^[A-Za-z0-9_]+$/); + assert.ok(Array.isArray(entry.properties)); + sortedUnique(entry.properties.map((property) => property.identifier), `${entry.className} properties`); + } + for (const entry of inventory.ioOperators) { + assert.match(entry.operator, /^[a-z0-9_]+\.[a-z0-9_]+$/); + assert.match(entry.operator, /import|export/i); + assert.match(entry.rnaIdentifier, /^[A-Za-z0-9_]+$/); + assert.ok(Array.isArray(entry.properties)); + } + const report = { schemaVersion: 1, task: "M15-01D", operation: "BLENDER_FORMAT_INVENTORY_CHECK", runtime: inventory.runtime, summary: inventory.summary, firstStrip: inventory.stripTypes[0].identifier, lastOperator: inventory.ioOperators.at(-1).operator, inventorySha256: sha256(expectedBytes), nextTask: inventory.nextTask }; + if (process.env.UPDATE_M15_01D_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-01C/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-format-inventory.mjs"), inventory: expectedPath, report: reportPath, runtime: blender, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-01D", parentTask: "M15-01C", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_FORMAT", operation: "BLENDER_FORMAT_INVENTORY", artifacts, nextTask: "M15-01E" }, null, 2)}\n`); + } + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-01D", parentTask: "M15-01C", nextTask: "M15-01E" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`blender-format-inventory-ok strips=${inventory.summary.stripTypeCount} physics=${inventory.summary.physicsTypeCount} io=${inventory.summary.ioOperatorCount} inventory=${sha256(expectedBytes)} next=${manifest.nextTask}\n`); +} finally { + fs.rmSync(temporary, { recursive: true, force: true }); +} diff --git a/tools/web/check-blender-gap-audit.mjs b/tools/web/check-blender-gap-audit.mjs new file mode 100644 index 00000000..a529b1b3 --- /dev/null +++ b/tools/web/check-blender-gap-audit.mjs @@ -0,0 +1,47 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-gap-audit.mjs"); +const auditPath = path.join(root, "tests/golden/M15-02B/blender-gap-audit.json"); +const reportPath = path.join(root, "tests/golden/M15-02B/gap-audit-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-02B/manifest.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); +const audit = JSON.parse(fs.readFileSync(auditPath, "utf8")); +assert.equal(audit.schemaVersion, 1); +assert.equal(audit.task, "M15-02B"); +assert.equal(audit.operation, "BLENDER_PARITY_GAP_AUDIT"); +assert.equal(audit.interpretation.inventoryBaseline, "SUMMARY_ONLY"); +assert.equal(fileSha256(path.join(root, audit.source.path)), audit.source.sha256); +const categories = ["unmapped", "duplicateIds", "summaryOnly", "proxyOnly", "routeOnly"]; +const sortedUnique = (values, label) => { assert.deepEqual(values, [...values].sort((a, b) => a < b ? -1 : a > b ? 1 : 0), `${label} are not sorted`); assert.equal(new Set(values).size, values.length, `${label} are not unique`); }; +for (const category of categories) { assert.ok(Array.isArray(audit.gaps[category])); sortedUnique(audit.gaps[category], category); } +assert.equal(audit.summary.inventoried, audit.summary.unmapped + audit.summary.summaryOnly + audit.summary.proxyOnly + audit.summary.routeOnly); +assert.equal(audit.summary.duplicate, audit.gaps.duplicateIds.length); +assert.equal(audit.summary.gapCount, categories.reduce((sum, category) => sum + audit.gaps[category].length, 0)); +assert.ok(audit.summary.inventoried >= 6900); +assert.equal(audit.summary.unmapped, 0); +assert.equal(audit.summary.duplicate, 0); +assert.equal(audit.summary.proxyOnly, 0); +assert.equal(audit.summary.routeOnly, 0); +assert.equal(audit.summary.summaryOnly, audit.summary.inventoried); +const temporary = path.join(root, ".tmp-m15-02b-audit.json"); +try { execFileSync(process.execPath, [generator, temporary], { cwd: root, stdio: "pipe" }); assert.deepEqual(fs.readFileSync(temporary), fs.readFileSync(auditPath), "gap audit is not deterministic"); } finally { fs.rmSync(temporary, { force: true }); } +const report = { schemaVersion: 1, task: "M15-02B", operation: "BLENDER_PARITY_GAP_AUDIT_CHECK", summary: audit.summary, auditSha256: fileSha256(auditPath), nextTask: audit.nextTask }; +if (process.env.UPDATE_M15_02B_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-02A/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-gap-audit.mjs"), audit: auditPath, report: reportPath, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-02B", parentTask: "M15-02A", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_PARITY", operation: "BLENDER_PARITY_GAP_AUDIT", artifacts, nextTask: "M15-02C" }, null, 2)}\n`); +} +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); +assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-02B", parentTask: "M15-02A", nextTask: "M15-02C" }); +for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); +process.stdout.write(`blender-gap-audit-ok inventoried=${audit.summary.inventoried} gaps=${audit.summary.gapCount} summaryOnly=${audit.summary.summaryOnly} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-next-task-plan.mjs b/tools/web/check-blender-next-task-plan.mjs new file mode 100644 index 00000000..fd1d9f40 --- /dev/null +++ b/tools/web/check-blender-next-task-plan.mjs @@ -0,0 +1,15 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-next-task-plan.mjs"); const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); const reportPath = path.join(root, "tests/golden/M15-03A/next-task-plan-check-report.json"); const manifestPath = path.join(root, "tests/golden/M15-03A/manifest.json"); const sha256 = (b) => crypto.createHash("sha256").update(b).digest("hex"); const fileSha256 = (f) => sha256(fs.readFileSync(f)); const relative = (f) => path.relative(root, f).replaceAll(path.sep, "/"); +const plan = JSON.parse(fs.readFileSync(planPath, "utf8")); assert.equal(plan.task, "M15-03A"); assert.equal(plan.operation, "BLENDER_NEXT_TASK_PLAN"); assert.equal(plan.tasks.length, 6900); assert.equal(plan.summary.active, 1); assert.equal(plan.summary.completed + plan.summary.pending + plan.summary.active, 6900); assert.equal(plan.firstTask, plan.tasks.find((task) => task.state === "active").id); assert.equal(plan.closureGate, "M15-03E"); +const ids = plan.tasks.map((task) => task.id); const gaps = plan.tasks.map((task) => task.gapId); assert.equal(new Set(ids).size, ids.length); assert.equal(new Set(gaps).size, gaps.length); assert.ok(plan.tasks.every((task) => /^M(?:1[6-9]|2[0-2])-GAP-\d{5}$/.test(task.id))); assert.ok(plan.tasks.every((task) => task.ownerFamily && !task.id.includes("FAMILY"))); +for (const source of Object.values(plan.sources)) assert.equal(fileSha256(path.join(root, source.path)), source.sha256, source.path); +const temporary = path.join(root, ".tmp-m15-03a-plan.json"); try { execFileSync(process.execPath, [generator, temporary], { cwd: root, stdio: "pipe", maxBuffer: 32 * 1024 * 1024 }); assert.deepEqual(fs.readFileSync(temporary), fs.readFileSync(planPath), "next-task plan is not deterministic"); } finally { fs.rmSync(temporary, { force: true }); } +const report = { schemaVersion: 1, task: "M15-03A", operation: "BLENDER_NEXT_TASK_PLAN_CHECK", summary: plan.summary, firstTask: plan.firstTask, planSha256: fileSha256(planPath), nextTask: plan.nextTask }; +if (process.env.UPDATE_M15_03A_MANIFEST === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const paths = { parentManifest: path.join(root, "tests/golden/M15-02F/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-next-task-plan.mjs"), plan: planPath, report: reportPath, package: path.join(root, "web/package.json") }; const artifacts = Object.fromEntries(Object.entries(paths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-03A", parentTask: "M15-02F", enablingTask: false, parityStateChange: false, operation: "BLENDER_NEXT_TASK_PLAN", artifacts, nextTask: "M15-03B" }, null, 2)}\n`); } +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); process.stdout.write(`blender-next-task-plan-ok tasks=${plan.tasks.length} active=1 first=${plan.firstTask} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-next-task-spec.mjs b/tools/web/check-blender-next-task-spec.mjs new file mode 100644 index 00000000..fbb1543d --- /dev/null +++ b/tools/web/check-blender-next-task-spec.mjs @@ -0,0 +1,13 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); const reportPath = path.join(root, "tests/golden/M15-03B/next-task-spec-check-report.json"); const manifestPath = path.join(root, "tests/golden/M15-03B/manifest.json"); const generator = path.join(root, "tools/web/generate-blender-next-task-plan.mjs"); const sha256 = (b) => crypto.createHash("sha256").update(b).digest("hex"); const fileSha256 = (f) => sha256(fs.readFileSync(f)); const relative = (f) => path.relative(root, f).replaceAll(path.sep, "/"); +const plan = JSON.parse(fs.readFileSync(planPath, "utf8")); assert.equal(plan.tasks.length, 6900); const required = ["fixture", "desktopCommand", "webCommand", "comparator", "exitCriteria"]; const missing = []; const malformed = []; +for (const task of plan.tasks) { for (const field of required) { if (field === "fixture") { if (!task.fixture?.path || !task.fixture?.state) missing.push({ id: task.id, field }); } else if (field === "exitCriteria") { if (!Array.isArray(task.exitCriteria) || task.exitCriteria.length < 3) missing.push({ id: task.id, field }); } else if (typeof task[field] !== "string" || task[field].length < 8) missing.push({ id: task.id, field }); } if (!task.desktopCommand.includes("blender") || !task.webCommand.includes("npm") || !task.comparator.includes("check-generated-gap")) malformed.push(task.id); } +assert.deepEqual(missing, []); assert.deepEqual(malformed, []); +const report = { schemaVersion: 1, task: "M15-03B", operation: "BLENDER_NEXT_TASK_SPEC_CHECK", source: { path: "tests/golden/M15-03A/next-task-plan.json", sha256: fileSha256(planPath) }, summary: { tasks: plan.tasks.length, completeSpecs: plan.tasks.length, missingFields: missing.length, malformed: malformed.length }, requiredFields: required, nextTask: "M15-03C" }; +if (process.env.UPDATE_M15_03B_MANIFEST === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const paths = { parentManifest: path.join(root, "tests/golden/M15-03A/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-next-task-spec.mjs"), plan: planPath, report: reportPath, package: path.join(root, "web/package.json") }; const artifacts = Object.fromEntries(Object.entries(paths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-03B", parentTask: "M15-03A", enablingTask: false, parityStateChange: false, operation: "BLENDER_NEXT_TASK_SPEC_CHECK", artifacts, nextTask: "M15-03C" }, null, 2)}\n`); } +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); process.stdout.write(`blender-next-task-spec-ok tasks=${report.summary.tasks} complete=${report.summary.completeSpecs} missing=${report.summary.missingFields} malformed=${report.summary.malformed} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-operator-inventory.mjs b/tools/web/check-blender-operator-inventory.mjs new file mode 100644 index 00000000..7430620d --- /dev/null +++ b/tools/web/check-blender-operator-inventory.mjs @@ -0,0 +1,63 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { spawnSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-operator-inventory.py"); +const expectedPath = path.join(root, "tests/golden/M15-01B/blender-operator-inventory.json"); +const reportPath = path.join(root, "tests/golden/M15-01B/operator-inventory-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-01B/manifest.json"); +const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "blender-operator-inventory-")); +const regeneratedPath = path.join(temporary, "inventory.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +try { + const blender = process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"); + const run = spawnSync(blender, ["-b", "--factory-startup", "--python", generator, "--", regeneratedPath], { cwd: root, encoding: "utf8", maxBuffer: 32 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const expectedBytes = fs.readFileSync(expectedPath); + assert.deepEqual(fs.readFileSync(regeneratedPath), expectedBytes, "Blender operator inventory is not deterministic"); + const inventory = JSON.parse(expectedBytes); + assert.deepEqual(inventory, JSON.parse(fs.readFileSync(regeneratedPath, "utf8"))); + assert.equal(inventory.schemaVersion, 1); + assert.equal(inventory.task, "M15-01B"); + assert.deepEqual(inventory.runtime.versionTuple, [5, 2, 0]); + assert.equal(inventory.runtime.blenderVersion, "5.2.0 LTS"); + assert.match(inventory.runtime.binarySha256, /^[a-f0-9]{64}$/); + assert.ok(inventory.summary.count >= 500, `unexpectedly small operator inventory: ${inventory.summary.count}`); + assert.equal(inventory.operators.length, inventory.summary.count); + const operatorIds = inventory.operators.map((entry) => entry.operator); + assert.deepEqual(operatorIds, [...operatorIds].sort(), "operator IDs are not sorted"); + assert.equal(new Set(operatorIds).size, operatorIds.length, "operator IDs are not unique"); + assert.equal(inventory.summary.registered, inventory.operators.filter((entry) => entry.registered).length); + assert.equal(inventory.summary.pollTrue + inventory.summary.pollFalse + inventory.summary.pollUnknown, inventory.summary.count); + for (const entry of inventory.operators) { + assert.match(entry.operator, /^[a-z0-9_]+\.[a-z0-9_]+$/); + assert.equal(entry.registered, true); + assert.match(entry.rnaIdentifier, /^[A-Za-z0-9_]+$/); + assert.ok(Array.isArray(entry.properties)); + const properties = entry.properties.map((property) => property.identifier); + assert.deepEqual(properties, [...properties].sort(), `${entry.operator} properties are not sorted`); + } + const report = { schemaVersion: 1, task: "M15-01B", operation: "BLENDER_OPERATOR_INVENTORY_CHECK", runtime: inventory.runtime, count: inventory.summary.count, registered: inventory.summary.registered, poll: { true: inventory.summary.pollTrue, false: inventory.summary.pollFalse, unknown: inventory.summary.pollUnknown }, first: operatorIds[0], last: operatorIds.at(-1), inventorySha256: sha256(expectedBytes), nextTask: inventory.nextTask }; + if (process.env.UPDATE_M15_01B_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-01A/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-operator-inventory.mjs"), inventory: expectedPath, report: reportPath, runtime: blender, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-01B", parentTask: "M15-01A", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_OPERATOR", operation: "BLENDER_OPERATOR_INVENTORY", artifacts, nextTask: "M15-01C" }, null, 2)}\n`); + } + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-01B", parentTask: "M15-01A", nextTask: "M15-01C" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`blender-operator-inventory-ok count=${inventory.summary.count} registered=${inventory.summary.registered} pollUnknown=${inventory.summary.pollUnknown} inventory=${sha256(expectedBytes)} next=${manifest.nextTask}\n`); +} +finally { + fs.rmSync(temporary, { recursive: true, force: true }); +} diff --git a/tools/web/check-blender-parity-map.mjs b/tools/web/check-blender-parity-map.mjs new file mode 100644 index 00000000..c7db241e --- /dev/null +++ b/tools/web/check-blender-parity-map.mjs @@ -0,0 +1,53 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-parity-map.mjs"); +const mapPath = path.join(root, "tests/golden/M15-02A/blender-parity-map.json"); +const reportPath = path.join(root, "tests/golden/M15-02A/parity-map-check-report.json"); +const manifestPath = path.join(root, "tests/golden/M15-02A/manifest.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); +const map = JSON.parse(fs.readFileSync(mapPath, "utf8")); +assert.equal(map.schemaVersion, 1); +assert.equal(map.task, "M15-02A"); +assert.equal(map.operation, "BLENDER_PARITY_MAPPING"); +assert.equal(map.statusAxis, "INVENTORY_ONLY"); +assert.deepEqual(map.implementationClasses, ["INVENTORY_BASELINE"]); +assert.equal(map.entries.length, map.summary.mapped); +const ids = map.entries.map((entry) => entry.id); +assert.deepEqual(ids, [...ids].sort(), "parity map IDs are not sorted"); +assert.equal(new Set(ids).size, ids.length, "parity map IDs are not unique"); +for (const entry of map.entries) { + assert.match(entry.id, /^[\x20-\x7e]+$/); + assert.equal(entry.implementationClass, "INVENTORY_BASELINE"); + assert.equal(entry.coverage, "INVENTORIED_ONLY"); + assert.ok(entry.ownerFamily); + assert.equal(entry.tests.length, 1); + assert.ok(fs.existsSync(path.join(root, entry.tests[0]))); + assert.equal(entry.evidence.length, 1); + assert.ok(fs.existsSync(path.join(root, entry.evidence[0]))); +} +for (const [task, ref] of Object.entries(map.sourceInventories)) assert.equal(fileSha256(path.join(root, ref.path)), ref.sha256, `${task} inventory hash drifted`); +const temporary = path.join(root, ".tmp-m15-02a-map.json"); +try { + execFileSync(process.execPath, [generator, temporary], { cwd: root, stdio: "pipe" }); + assert.deepEqual(fs.readFileSync(temporary), fs.readFileSync(mapPath), "parity map is not deterministic"); +} finally { fs.rmSync(temporary, { force: true }); } +const report = { schemaVersion: 1, task: "M15-02A", operation: "BLENDER_PARITY_MAPPING_CHECK", mapped: map.summary.mapped, byTask: map.summary.byTask, ownerFamilies: map.summary.ownerFamilies, mapSha256: fileSha256(mapPath), nextTask: map.nextTask }; +if (process.env.UPDATE_M15_02A_MANIFEST === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { parentManifest: path.join(root, "tests/golden/M15-01F/manifest.json"), generator, checker: path.join(root, "tools/web/check-blender-parity-map.mjs"), map: mapPath, report: reportPath, package: path.join(root, "web/package.json") }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-02A", parentTask: "M15-01F", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_PARITY", operation: "BLENDER_PARITY_MAPPING", artifacts, nextTask: "M15-02B" }, null, 2)}\n`); +} +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); +assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-02A", parentTask: "M15-01F", nextTask: "M15-02B" }); +for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); +process.stdout.write(`blender-parity-map-ok mapped=${map.summary.mapped} families=${map.summary.ownerFamilies.length} map=${fileSha256(mapPath)} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-rna-datablock-inventory.mjs b/tools/web/check-blender-rna-datablock-inventory.mjs new file mode 100644 index 00000000..3fed027e --- /dev/null +++ b/tools/web/check-blender-rna-datablock-inventory.mjs @@ -0,0 +1,81 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { spawnSync } from "node:child_process"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const generator = path.join(root, "tools/web/generate-blender-rna-datablock-inventory.py"); +const expectedPath = path.join(root, "tests/golden/M15-01A/blender-rna-datablock-inventory.json"); +const manifestPath = path.join(root, "tests/golden/M15-01A/manifest.json"); +const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "blender-rna-datablock-inventory-")); +const regeneratedPath = path.join(temporary, "inventory.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const fileSha256 = (file) => sha256(fs.readFileSync(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +try { + const blender = process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"); + const run = spawnSync(blender, ["-b", "--factory-startup", "--python", generator, "--", regeneratedPath], { + cwd: root, + encoding: "utf8", + maxBuffer: 8 * 1024 * 1024, + }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const expectedBytes = fs.readFileSync(expectedPath); + assert.deepEqual(fs.readFileSync(regeneratedPath), expectedBytes, "Blender RNA inventory is not deterministic"); + const inventory = JSON.parse(expectedBytes); + assert.deepEqual(inventory, JSON.parse(fs.readFileSync(regeneratedPath, "utf8"))); + assert.equal(inventory.schemaVersion, 1); + assert.equal(inventory.task, "M15-01A"); + assert.equal(inventory.operation, "BLENDER_RNA_DATABLOCK_INVENTORY"); + assert.deepEqual(inventory.runtime.versionTuple, [5, 2, 0]); + assert.equal(inventory.runtime.blenderVersion, "5.2.0 LTS"); + assert.match(inventory.runtime.binarySha256, /^[a-f0-9]{64}$/); + assert.equal(inventory.summary.baseType, "ID"); + assert.ok(inventory.summary.count >= 20, `unexpectedly small ID inventory: ${inventory.summary.count}`); + assert.equal(inventory.dataBlockTypes.length, inventory.summary.count); + const identifiers = inventory.dataBlockTypes.map((entry) => entry.rnaIdentifier); + assert.deepEqual(identifiers, [...identifiers].sort(), "RNA identifiers are not sorted"); + assert.equal(new Set(identifiers).size, identifiers.length, "RNA identifiers are not unique"); + for (const entry of inventory.dataBlockTypes) { + assert.match(entry.parityId, /^BLENDER52_RNA_ID_[A-Z0-9_]+$/); + assert.equal(entry.baseType, "ID"); + assert.match(entry.sourceAnchor, /blender-5\.2\.0\/source\/blender\/makesrna/); + } + assert.equal(inventory.nextTask, "M15-01B"); + const report = { + schemaVersion: 1, + task: "M15-01A", + operation: "BLENDER_RNA_DATABLOCK_INVENTORY_CHECK", + runtime: inventory.runtime, + count: inventory.summary.count, + first: identifiers[0], + last: identifiers.at(-1), + inventorySha256: sha256(expectedBytes), + nextTask: inventory.nextTask, + }; + if (process.env.UPDATE_M15_01A_MANIFEST === "1") { + fs.mkdirSync(path.dirname(manifestPath), { recursive: true }); + const artifactPaths = { + parentManifest: path.join(root, "tests/golden/M14-04H/manifest.json"), + generator, + checker: path.join(root, "tools/web/check-blender-rna-datablock-inventory.mjs"), + inventory: expectedPath, + runtime: blender, + package: path.join(root, "web/package.json"), + }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-01A", parentTask: "M14-04H", enablingTask: false, parityStateChange: false, runtime: "BLENDER_5_2_RNA", operation: "BLENDER_RNA_DATABLOCK_INVENTORY", artifacts, nextTask: "M15-01B" }, null, 2)}\n`); + fs.writeFileSync(path.join(root, "tests/golden/M15-01A/inventory-check-report.json"), `${JSON.stringify(report, null, 2)}\n`); + } + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M15-01A", parentTask: "M14-04H", nextTask: "M15-01B" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`blender-rna-datablock-inventory-ok count=${inventory.summary.count} blender=${inventory.runtime.blenderVersion} inventory=${sha256(expectedBytes)} next=${manifest.nextTask}\n`); +} +finally { + fs.rmSync(temporary, { recursive: true, force: true }); +} diff --git a/tools/web/check-blender-task-graph.mjs b/tools/web/check-blender-task-graph.mjs new file mode 100644 index 00000000..b702392e --- /dev/null +++ b/tools/web/check-blender-task-graph.mjs @@ -0,0 +1,12 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); const reportPath = path.join(root, "tests/golden/M15-03C/task-graph-check-report.json"); const manifestPath = path.join(root, "tests/golden/M15-03C/manifest.json"); const sha256 = (b) => crypto.createHash("sha256").update(b).digest("hex"); const fileSha256 = (f) => sha256(fs.readFileSync(f)); const relative = (f) => path.relative(root, f).replaceAll(path.sep, "/"); +const plan = JSON.parse(fs.readFileSync(planPath, "utf8")); const ids = new Set(plan.tasks.map((task) => task.id)); const active = plan.tasks.filter((task) => task.state === "active"); const missingDeps = []; const cycles = []; for (const task of plan.tasks) { for (const dep of task.dependencies) { if (!ids.has(dep)) missingDeps.push(`${task.id}->${dep}`); let cursor = dep; const visited = new Set([task.id]); while (cursor) { if (visited.has(cursor)) { cycles.push(task.id); break; } visited.add(cursor); cursor = plan.tasks.find((candidate) => candidate.id === cursor)?.dependencies[0] ?? null; } } } +assert.equal(active.length, 1); assert.equal(missingDeps.length, 0); assert.equal(cycles.length, 0); assert.equal(plan.tasks.length, 6900); +const report = { schemaVersion: 1, task: "M15-03C", operation: "BLENDER_TASK_GRAPH_CHECK", source: { path: "tests/golden/M15-03A/next-task-plan.json", sha256: fileSha256(planPath) }, summary: { nodes: plan.tasks.length, active: active.length, missingDependencies: missingDeps.length, cycles: cycles.length }, activeTask: active[0].id, nextTask: "M15-03D" }; +if (process.env.UPDATE_M15_03C_MANIFEST === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const paths = { parentManifest: path.join(root, "tests/golden/M15-03B/manifest.json"), checker: path.join(root, "tools/web/check-blender-task-graph.mjs"), plan: planPath, report: reportPath, package: path.join(root, "web/package.json") }; const artifacts = Object.fromEntries(Object.entries(paths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-03C", parentTask: "M15-03B", enablingTask: false, parityStateChange: false, operation: "BLENDER_TASK_GRAPH_CHECK", artifacts, nextTask: "M15-03D" }, null, 2)}\n`); } +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); process.stdout.write(`blender-task-graph-ok nodes=${report.summary.nodes} active=${report.summary.active} missing=${report.summary.missingDependencies} cycles=${report.summary.cycles} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-task-stats.mjs b/tools/web/check-blender-task-stats.mjs new file mode 100644 index 00000000..4909fb55 --- /dev/null +++ b/tools/web/check-blender-task-stats.mjs @@ -0,0 +1,11 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { execFileSync } from "node:child_process"; +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); const gapPath = path.join(root, "tests/golden/M15-02B/blender-gap-audit.json"); const reportPath = path.join(root, "tests/golden/M15-03D/task-stats-check-report.json"); const manifestPath = path.join(root, "tests/golden/M15-03D/manifest.json"); const sha256 = (b) => crypto.createHash("sha256").update(b).digest("hex"); const fileSha256 = (f) => sha256(fs.readFileSync(f)); const relative = (f) => path.relative(root, f).replaceAll(path.sep, "/"); +const plan = JSON.parse(fs.readFileSync(planPath, "utf8")); const gaps = JSON.parse(fs.readFileSync(gapPath, "utf8")); const completed = plan.tasks.filter((task) => task.state === "completed").length; const blocked = plan.tasks.filter((task) => task.state === "blocked").length; const inventoried = gaps.summary.inventoried; const uninventoried = Math.max(0, inventoried - plan.tasks.length); assert.equal(inventoried, 6900); assert.equal(plan.tasks.length, 6900); assert.equal(uninventoried, 0); assert.equal(blocked, 0); +const report = { schemaVersion: 1, task: "M15-03D", operation: "BLENDER_TASK_STATS_CHECK", sources: { plan: { path: "tests/golden/M15-03A/next-task-plan.json", sha256: fileSha256(planPath) }, gaps: { path: "tests/golden/M15-02B/blender-gap-audit.json", sha256: fileSha256(gapPath) } }, statistics: { inventoried, completed, blocked, uninventoried }, nextTask: "M15-03E" }; +if (process.env.UPDATE_M15_03D_MANIFEST === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const paths = { parentManifest: path.join(root, "tests/golden/M15-03C/manifest.json"), checker: path.join(root, "tools/web/check-blender-task-stats.mjs"), plan: planPath, gapAudit: gapPath, report: reportPath, package: path.join(root, "web/package.json") }; const artifacts = Object.fromEntries(Object.entries(paths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-03D", parentTask: "M15-03C", enablingTask: false, parityStateChange: false, operation: "BLENDER_TASK_STATS_CHECK", artifacts, nextTask: "M15-03E" }, null, 2)}\n`); } +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); process.stdout.write(`blender-task-stats-ok inventoried=${inventoried} completed=${completed} blocked=${blocked} uninventoried=${uninventoried} next=${manifest.nextTask}\n`); diff --git a/tools/web/check-blender-zero-gap-gate.mjs b/tools/web/check-blender-zero-gap-gate.mjs new file mode 100644 index 00000000..e1be58b1 --- /dev/null +++ b/tools/web/check-blender-zero-gap-gate.mjs @@ -0,0 +1,10 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); const reportPath = path.join(root, "tests/golden/M15-03E/zero-gap-gate-report.json"); const manifestPath = path.join(root, "tests/golden/M15-03E/manifest.json"); const sha256 = (b) => crypto.createHash("sha256").update(b).digest("hex"); const fileSha256 = (f) => sha256(fs.readFileSync(f)); const relative = (f) => path.relative(root, f).replaceAll(path.sep, "/"); +const plan = JSON.parse(fs.readFileSync(planPath, "utf8")); const byFamily = {}; for (const task of plan.tasks) { const stats = byFamily[task.ownerFamily] ?? { total: 0, completed: 0, blocked: 0, remaining: 0 }; stats.total++; if (task.state === "completed") stats.completed++; else if (task.state === "blocked") stats.blocked++; else stats.remaining++; byFamily[task.ownerFamily] = stats; } const remaining = Object.values(byFamily).reduce((sum, value) => sum + value.remaining, 0); const gateStatus = remaining === 0 ? "READY" : "BLOCKED"; assert.equal(gateStatus, "BLOCKED"); assert.equal(remaining, plan.tasks.length - plan.summary.completed); assert.equal(plan.summary.active, 1); assert.equal(plan.firstTask, plan.tasks.find((task) => task.state === "active").id); +const report = { schemaVersion: 1, task: "M15-03E", operation: "BLENDER_ZERO_GAP_GATE", source: { path: "tests/golden/M15-03A/next-task-plan.json", sha256: fileSha256(planPath) }, status: gateStatus, summary: { ownerFamilies: Object.keys(byFamily).length, remaining }, byFamily, activeTask: plan.firstTask, nextTask: plan.firstTask }; +if (process.env.UPDATE_M15_03E_MANIFEST === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const paths = { parentManifest: path.join(root, "tests/golden/M15-03D/manifest.json"), checker: path.join(root, "tools/web/check-blender-zero-gap-gate.mjs"), plan: planPath, report: reportPath, package: path.join(root, "web/package.json") }; const artifacts = Object.fromEntries(Object.entries(paths).map(([name, file]) => [name, { path: relative(file), sha256: fileSha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M15-03E", parentTask: "M15-03D", status: "BLOCKED", enablingTask: false, parityStateChange: false, operation: "BLENDER_ZERO_GAP_GATE", artifacts, nextTask: plan.firstTask }, null, 2)}\n`); } +const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); assert.equal(manifest.status, "BLOCKED"); assert.equal(manifest.nextTask, plan.firstTask); for (const artifact of Object.values(manifest.artifacts)) assert.equal(fileSha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); process.stdout.write(`blender-zero-gap-gate-ok status=${gateStatus} families=${report.summary.ownerFamilies} remaining=${remaining} active=${plan.firstTask}\n`); diff --git a/tools/web/check-boolean-modifier-desktop.py b/tools/web/check-boolean-modifier-desktop.py new file mode 100644 index 00000000..e682e3b7 --- /dev/null +++ b/tools/web/check-boolean-modifier-desktop.py @@ -0,0 +1,61 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + source = bpy.data.objects.get("WebGapBooleanObject") + if source is None or source.type != "MESH": + raise RuntimeError("WebGapBooleanObject is missing") + modifiers = [modifier for modifier in source.modifiers if modifier.type == "BOOLEAN"] + if len(modifiers) != 1: + raise RuntimeError(f"expected exactly one BOOLEAN modifier, found {len(modifiers)}") + modifier = modifiers[0] + return { + "meshId": "mesh:" + source.data.name, + "modifier": { + "name": modifier.name, + "type": modifier.type, + "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[modifier.type].value, + "operation": modifier.operation, + "solver": modifier.solver, + "targetObjectId": "object:" + modifier.object.name if modifier.object else None, + "showViewport": bool(modifier.show_viewport), + "showRender": bool(modifier.show_render), + "showEditMode": bool(modifier.show_in_editmode), + "showOnCage": bool(modifier.show_on_cage), + }, + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-boolean-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-boolean-modifier-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"boolean modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00033", "operation": "BOOLEAN_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"boolean-modifier-desktop-ok mesh={after['meshId']} operation={after['modifier']['operation']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-brush-desktop.py b/tools/web/check-brush-desktop.py new file mode 100644 index 00000000..d6b165dc --- /dev/null +++ b/tools/web/check-brush-desktop.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + brush = bpy.data.brushes.get("WebGapBrush") + if brush is None: raise RuntimeError("WebGapBrush is missing") + return {"name": brush.name, "size": brush.size, "alpha": round(float(brush.strength), 6), "hardness": round(float(brush.hardness), 6), "spacing": brush.spacing, "jitter": round(float(brush.jitter), 6), "sculptTool": str(brush.sculpt_brush_type)} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-brush-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-brush-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"brush save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00003", "operation": "BRUSH_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "brush": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"brush-desktop-ok name={after['name']} size={after['size']} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-build-modifier-desktop.py b/tools/web/check-build-modifier-desktop.py new file mode 100644 index 00000000..45b5019e --- /dev/null +++ b/tools/web/check-build-modifier-desktop.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + obj = bpy.data.objects.get("WebGapBuildObject") + if obj is None or obj.type != "MESH": + raise RuntimeError("WebGapBuildObject is missing") + modifiers = [modifier for modifier in obj.modifiers if modifier.type == "BUILD"] + if len(modifiers) != 1: + raise RuntimeError(f"expected exactly one BUILD modifier, found {len(modifiers)}") + modifier = modifiers[0] + return {"meshId": "mesh:" + obj.data.name, "modifier": {"name": modifier.name, "type": modifier.type, "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[modifier.type].value, "start": round(float(modifier.frame_start), 6), "length": round(float(modifier.frame_duration), 6), "randomize": bool(modifier.use_random_order), "reverse": bool(modifier.use_reverse), "seed": int(modifier.seed), "showViewport": bool(modifier.show_viewport), "showRender": bool(modifier.show_render), "showEditMode": bool(modifier.show_in_editmode), "showOnCage": bool(modifier.show_on_cage)}} + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-build-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-build-modifier-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"build modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00034", "operation": "BUILD_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"build-modifier-desktop-ok mesh={after['meshId']} start={after['modifier']['start']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-camera-desktop.py b/tools/web/check-camera-desktop.py new file mode 100644 index 00000000..555ed1e4 --- /dev/null +++ b/tools/web/check-camera-desktop.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + camera = bpy.data.cameras.get("WebGapCamera") + if camera is None: raise RuntimeError("WebGapCamera is missing") + return {"name": camera.name, "type": camera.type, "lens": round(float(camera.lens), 6), "clipStart": round(float(camera.clip_start), 6), "clipEnd": round(float(camera.clip_end), 6), "sensorWidth": round(float(camera.sensor_width), 6)} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-camera-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-camera-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"camera save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00004", "operation": "CAMERA_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "camera": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"camera-desktop-ok name={after['name']} lens={after['lens']} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-cast-modifier-desktop.py b/tools/web/check-cast-modifier-desktop.py new file mode 100644 index 00000000..29a907cf --- /dev/null +++ b/tools/web/check-cast-modifier-desktop.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +import hashlib, json, os, pathlib, sys, tempfile +import bpy + +def report(): + obj = bpy.data.objects.get("WebGapCastObject") + if obj is None: raise RuntimeError("WebGapCastObject is missing") + modifiers = [m for m in obj.modifiers if m.type == "CAST"] + if len(modifiers) != 1: raise RuntimeError(f"expected one CAST modifier, found {len(modifiers)}") + m = modifiers[0] + return {"meshId": "mesh:" + obj.data.name, "modifier": {"name": m.name, "type": m.type, "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[m.type].value, "factor": round(float(m.factor), 6), "radius": round(float(m.radius), 6), "castType": m.cast_type, "useX": bool(m.use_x), "useY": bool(m.use_y), "useZ": bool(m.use_z), "showViewport": bool(m.show_viewport), "showRender": bool(m.show_render), "showEditMode": bool(m.show_in_editmode), "showOnCage": bool(m.show_on_cage)}} + +def main(): + args = sys.argv[sys.argv.index("--") + 1 :] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-cast-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(v).resolve() for v in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report() + fd, temporary = tempfile.mkstemp(prefix="m16-cast-modifier-reopen-", suffix=".blend", dir=fixture.parent); os.close(fd) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"cast modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00035", "operation": "CAST_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"cast-modifier-desktop-ok mesh={after['meshId']} factor={after['modifier']['factor']} saveReopen=exact") + +if __name__ == "__main__": main() diff --git a/tools/web/check-chromium-accessibility.mjs b/tools/web/check-chromium-accessibility.mjs new file mode 100644 index 00000000..384227a2 --- /dev/null +++ b/tools/web/check-chromium-accessibility.mjs @@ -0,0 +1,125 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import http from "node:http"; +import path from "node:path"; +import { fileURLToPath, pathToFileURL } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const distRoot = path.join(root, "web/dist"); +const reportPath = path.join(root, "tests/golden/M14-04H/chromium-accessibility-report.json"); +const manifestPath = path.join(root, "tests/golden/M14-04H/manifest.json"); +const mime = new Map([[".html", "text/html; charset=utf-8"], [".js", "text/javascript; charset=utf-8"], [".css", "text/css; charset=utf-8"], [".json", "application/json"], [".wasm", "application/wasm"]]); +const server = http.createServer((request, response) => { + const pathname = decodeURIComponent(new URL(request.url ?? "/", "http://127.0.0.1").pathname); + const relative = pathname === "/" ? "index.html" : pathname.replace(/^\//u, ""); + const file = path.resolve(distRoot, relative); + if (!file.startsWith(`${distRoot}${path.sep}`) || !fs.existsSync(file) || !fs.statSync(file).isFile()) { + response.writeHead(404); + response.end("not found"); + return; + } + response.statusCode = 200; + response.setHeader("Content-Type", mime.get(path.extname(file)) ?? "application/octet-stream"); + response.setHeader("Cross-Origin-Opener-Policy", "same-origin"); + response.setHeader("Cross-Origin-Embedder-Policy", "require-corp"); + response.setHeader("Cross-Origin-Resource-Policy", "same-origin"); + response.setHeader("Content-Security-Policy", "default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; worker-src 'self'; connect-src 'self'; font-src 'self'; img-src 'self'; media-src 'self'; object-src 'none'; base-uri 'none'; frame-ancestors 'none'"); + fs.createReadStream(file).pipe(response); +}); +await new Promise((resolve) => server.listen(0, "127.0.0.1", resolve)); +const address = server.address(); +assert.ok(address && typeof address === "object"); +let browser; +try { + const playwright = await import(pathToFileURL(path.join(root, "web/node_modules/playwright/index.mjs")).href); + browser = await playwright.chromium.launch({ headless: true, args: ["--no-sandbox", "--use-gl=swiftshader", "--enable-unsafe-swiftshader"] }); + const results = {}; + for (const backend of ["main", "offscreen"]) { + const context = await browser.newContext({ viewport: { width: 1280, height: 720 }, hasTouch: true, isMobile: false }); + const page = await context.newPage(); + await page.goto(`http://127.0.0.1:${address.port}/?offscreen=${backend === "offscreen" ? "1" : "0"}`, { waitUntil: "load" }); + await page.waitForFunction(() => document.querySelector("[data-testid=engine-status]")?.textContent === "Engine: ready, open a .blend file", undefined, { timeout: 20_000 }); + const focusByTab = async (locator) => { + for (let index = 0; index < 100; index += 1) { + if (await locator.evaluate((element) => element === document.activeElement)) return index; + await page.keyboard.press("Tab"); + } + throw new Error(`KEYBOARD_FOCUS_NOT_REACHED:${await locator.getAttribute("aria-label") ?? await locator.textContent() ?? "target"}`); + }; + const waitFocused = async (locator) => { + const handle = await locator.elementHandle(); + assert.ok(handle); + await page.waitForFunction((element) => document.activeElement === element, handle); + }; + const fileMenu = page.getByRole("button", { name: "文件", exact: true }); + const fileTabCount = await focusByTab(fileMenu); + await page.keyboard.press("Enter"); + const fileItem = page.getByRole("menuitem", { name: "打开", exact: true }); + await fileItem.waitFor({ state: "visible" }); + assert.equal(await fileItem.evaluate((element) => element === document.activeElement), true); + await page.keyboard.press("Escape"); + await waitFocused(fileMenu); + await page.keyboard.press("F3"); + const search = page.getByRole("textbox", { name: "搜索操作", exact: true }); + await search.waitFor({ state: "visible" }); + assert.equal(await search.evaluate((element) => element === document.activeElement), true); + await page.keyboard.press("Escape"); + const searchTrigger = page.getByRole("button", { name: "操作搜索", exact: true }); + await waitFocused(searchTrigger); + const accessible = await page.evaluate(() => { + const visible = (element) => { + const style = getComputedStyle(element); + const rect = element.getBoundingClientRect(); + return style.display !== "none" && style.visibility !== "hidden" && rect.width > 0 && rect.height > 0; + }; + const name = (element) => { + const aria = element.getAttribute("aria-label")?.trim(); + if (aria) return aria; + const labelledBy = element.getAttribute("aria-labelledby"); + if (labelledBy) return labelledBy.split(/\s+/u).map((id) => document.getElementById(id)?.textContent?.trim() ?? "").join(" ").trim(); + if (element.id) { + const label = document.querySelector(`label[for="${CSS.escape(element.id)}"]`); + if (label?.textContent?.trim()) return label.textContent.trim(); + } + return element.textContent?.trim() ?? ""; + }; + const missing = []; + for (const element of document.querySelectorAll("button, input, select, textarea, canvas, [role]")) { + if (!visible(element)) continue; + const role = element.getAttribute("role") ?? element.tagName.toLowerCase(); + if (!name(element)) missing.push({ role, tag: element.tagName.toLowerCase(), html: element.outerHTML.slice(0, 180) }); + } + return { missing, visibleInteractiveCount: [...document.querySelectorAll("button, input, select, textarea, canvas, [role]")].filter(visible).length }; + }); + assert.deepEqual(accessible.missing, [], JSON.stringify({ backend, accessible })); + results[backend] = { fileTabCount, accessible }; + await context.close(); + } + const report = { schemaVersion: 1, task: "M14-04H", operation: "CHROMIUM_KEYBOARD_ACCESSIBILITY_BOUNDARY", runtime: "PLAYWRIGHT_CHROMIUM", backends: ["main", "offscreen"], results, guarantees: { menuFocus: "RESTORED", operatorSearchFocus: "RESTORED", accessibleNames: "COMPLETE" }, execution: "DISABLED", nextTask: "M15-01A" }; + const sha256 = (file) => crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex"); + const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + if (process.env.UPDATE_M14_04H_REPORT === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { + parentManifest: path.join(root, "tests/golden/M14-04G/manifest.json"), + checker: path.join(root, "tools/web/check-chromium-accessibility.mjs"), + app: path.join(root, "web/app/src/app/App.tsx"), + css: path.join(root, "web/app/src/app/app-shell.css"), + referenceE2E: path.join(root, "web/tests/e2e/keyboard-accessibility.spec.ts"), + package: path.join(root, "web/package.json"), + report: reportPath, + }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: sha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M14-04H", parentTask: "M14-04G", enablingTask: false, parityStateChange: false, runtime: "PLAYWRIGHT_CHROMIUM", operation: "CHROMIUM_KEYBOARD_ACCESSIBILITY_BOUNDARY", artifacts, nextTask: "M15-01A" }, null, 2)}\n`); + } + assert.deepEqual(JSON.parse(fs.readFileSync(reportPath, "utf8")), report); + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M14-04H", parentTask: "M14-04G", nextTask: "M15-01A" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(sha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`chromium-accessibility-ok backends=main,offscreen menuFocus=RESTORED operatorSearchFocus=RESTORED names=COMPLETE execution=DISABLED next=${manifest.nextTask}\n`); +} finally { + await browser?.close(); + await new Promise((resolve) => server.close(resolve)); +} diff --git a/tools/web/check-chromium-input-modal.mjs b/tools/web/check-chromium-input-modal.mjs index 70ac4e96..57571b15 100644 --- a/tools/web/check-chromium-input-modal.mjs +++ b/tools/web/check-chromium-input-modal.mjs @@ -18,28 +18,57 @@ let browser; try { const playwright = await import(pathToFileURL(path.join(root, "web/node_modules/playwright/index.mjs")).href); browser = await playwright.chromium.launch({ headless: true, args: ["--no-sandbox", "--use-gl=swiftshader", "--enable-unsafe-swiftshader"] }); - const page = await (await browser.newContext({ viewport: { width: 960, height: 640 }, hasTouch: true, isMobile: true })).newPage(); - await page.goto(`http://127.0.0.1:${address.port}/`, { waitUntil: "load" }); - await page.waitForFunction(() => document.querySelector("[data-testid=engine-status]")?.textContent === "Engine: ready, open a .blend file", undefined, { timeout: 20_000 }); - const browserEvents = await page.locator("canvas.viewport-canvas").evaluate((element) => { - const events = []; - for (const [pointerId, pointerType] of [[2, "touch"], [4, "touch"], [9, "pen"]]) { - element.dispatchEvent(new PointerEvent("pointerdown", { bubbles: true, pointerId, pointerType, buttons: 1, pressure: pointerType === "pen" ? 0.6 : 0.5 })); - events.push({ pointerId, pointerType, phase: "down" }); - } - element.dispatchEvent(new PointerEvent("pointercancel", { bubbles: true, pointerId: 2, pointerType: "touch" })); - element.dispatchEvent(new PointerEvent("pointerup", { bubbles: true, pointerId: 9, pointerType: "pen" })); - events.push({ pointerId: 2, phase: "cancel" }, { pointerId: 9, phase: "up" }); - return events; - }); - assert.equal(browserEvents.length, 5); - const report = { schemaVersion: 1, task: "M14-04F", operation: "CHROMIUM_INPUT_MODAL_BOUNDARY", runtime: "PLAYWRIGHT_CHROMIUM", browserEvents, guarantees: { touchCancelMainCommit: 0, twoFingerNavigationRevision: 1, penMainCommit: 1 }, execution: "DISABLED", nextTask: "M14-04G" }; + const runScenario = async (offscreen) => { + const context = await browser.newContext({ viewport: { width: 960, height: 640 }, hasTouch: true, isMobile: true }); + const page = await context.newPage(); + await page.goto(`http://127.0.0.1:${address.port}/?offscreen=${offscreen ? "1" : "0"}`, { waitUntil: "load" }); + await page.waitForFunction(() => document.querySelector("[data-testid=engine-status]")?.textContent === "Engine: ready, open a .blend file", undefined, { timeout: 20_000 }); + const result = await page.locator("canvas.viewport-canvas").evaluate((element) => { + const events = []; + const state = () => ({ + kind: element.dataset.inputModalKind, + activePointerIds: element.dataset.inputModalActivePointerIds ?? "", + cancelled: element.dataset.inputModalCancelled, + navigationRevision: Number(element.dataset.inputModalNavigationRevision), + mainCommitCount: Number(element.dataset.inputModalMainCommitCount), + }); + const dispatch = (type, pointerId, pointerType) => { + element.dispatchEvent(new PointerEvent(type, { bubbles: true, pointerId, pointerType, buttons: type === "pointerup" || type === "pointercancel" ? 0 : 1, pressure: pointerType === "pen" ? 0.6 : 0.5 })); + events.push({ pointerId, pointerType, phase: type.slice("pointer".length) }); + }; + dispatch("pointerdown", 2, "touch"); + dispatch("pointerdown", 4, "touch"); + const twoFinger = state(); + dispatch("pointercancel", 2, "touch"); + const touchCancel = state(); + dispatch("pointerdown", 9, "pen"); + dispatch("pointerup", 9, "pen"); + dispatch("pointerup", 9, "pen"); + dispatch("pointercancel", 9, "pen"); + const penCommit = state(); + return { events, twoFinger, touchCancel, penCommit }; + }); + await context.close(); + return result; + }; + const backends = { main: await runScenario(false), offscreen: await runScenario(true) }; + for (const result of Object.values(backends)) { + assert.equal(result.events.length, 7); + assert.equal(result.twoFinger.navigationRevision, 1); + assert.equal(result.twoFinger.activePointerIds, "2,4"); + assert.equal(result.twoFinger.mainCommitCount, 0); + assert.equal(result.touchCancel.cancelled, "1"); + assert.equal(result.touchCancel.activePointerIds, ""); + assert.equal(result.touchCancel.mainCommitCount, 0); + assert.equal(result.penCommit.mainCommitCount, 1); + } + const report = { schemaVersion: 1, task: "M14-04F", operation: "CHROMIUM_INPUT_MODAL_BOUNDARY", runtime: "PLAYWRIGHT_CHROMIUM", backends, guarantees: { touchCancelMainCommit: 0, twoFingerNavigationRevision: 1, penMainCommit: 1 }, execution: "DISABLED", nextTask: "M14-04G" }; const sha256 = (file) => crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex"); const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); - if (process.env.UPDATE_M14_04F_REPORT === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const artifactPaths = { parentManifest: path.join(root, "tests/golden/M14-04E/manifest.json"), checker: path.join(root, "tools/web/check-chromium-input-modal.mjs"), protocol: path.join(root, "web/protocol/input-modal.ts"), unit: path.join(root, "web/tests/unit/input-modal.test.mjs"), package: path.join(root, "web/package.json"), report: reportPath }; const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: sha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M14-04F", parentTask: "M14-04E", enablingTask: false, parityStateChange: false, runtime: "PLAYWRIGHT_CHROMIUM", operation: "CHROMIUM_INPUT_MODAL_BOUNDARY", artifacts, nextTask: "M14-04G" }, null, 2)}\n`); } + if (process.env.UPDATE_M14_04F_REPORT === "1") { fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); const artifactPaths = { parentManifest: path.join(root, "tests/golden/M14-04E/manifest.json"), checker: path.join(root, "tools/web/check-chromium-input-modal.mjs"), protocol: path.join(root, "web/protocol/input-modal.ts"), unit: path.join(root, "web/tests/unit/input-modal.test.mjs"), mainViewport: path.join(root, "web/app/src/three-adapter/viewport.ts"), offscreenViewport: path.join(root, "web/app/src/three-adapter/offscreen-viewport.ts"), package: path.join(root, "web/package.json"), report: reportPath }; const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: sha256(file) }])); fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M14-04F", parentTask: "M14-04E", enablingTask: false, parityStateChange: false, runtime: "PLAYWRIGHT_CHROMIUM", operation: "CHROMIUM_INPUT_MODAL_BOUNDARY", artifacts, nextTask: "M14-04G" }, null, 2)}\n`); } assert.deepEqual(JSON.parse(fs.readFileSync(reportPath, "utf8")), report); const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M14-04F", parentTask: "M14-04E", nextTask: "M14-04G" }); for (const artifact of Object.values(manifest.artifacts)) assert.equal(sha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); - process.stdout.write(`chromium-input-modal-ok touchCancel=0 twoFingerRevision=1 penCommit=1 execution=DISABLED next=${manifest.nextTask}\n`); + process.stdout.write(`chromium-input-modal-ok backends=main,offscreen touchCancel=0 twoFingerRevision=1 penCommit=1 execution=DISABLED next=${manifest.nextTask}\n`); } finally { await browser?.close(); await new Promise((resolve) => server.close(resolve)); } diff --git a/tools/web/check-chromium-layout.mjs b/tools/web/check-chromium-layout.mjs new file mode 100644 index 00000000..40fe0978 --- /dev/null +++ b/tools/web/check-chromium-layout.mjs @@ -0,0 +1,138 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import http from "node:http"; +import path from "node:path"; +import { fileURLToPath, pathToFileURL } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const distRoot = path.join(root, "web/dist"); +const reportPath = path.join(root, "tests/golden/M14-04G/chromium-layout-report.json"); +const manifestPath = path.join(root, "tests/golden/M14-04G/manifest.json"); +const mime = new Map([[".html", "text/html; charset=utf-8"], [".js", "text/javascript; charset=utf-8"], [".css", "text/css; charset=utf-8"], [".json", "application/json"], [".wasm", "application/wasm"]]); +const viewports = [ + { name: "desktop-1440x900", width: 1440, height: 900 }, + { name: "desktop-1280x720", width: 1280, height: 720 }, + { name: "tablet-834x1112", width: 834, height: 1112 }, + { name: "phone-390x844", width: 390, height: 844 }, +]; +const server = http.createServer((request, response) => { + const pathname = decodeURIComponent(new URL(request.url ?? "/", "http://127.0.0.1").pathname); + const relative = pathname === "/" ? "index.html" : pathname.replace(/^\//u, ""); + const file = path.resolve(distRoot, relative); + if (!file.startsWith(`${distRoot}${path.sep}`) || !fs.existsSync(file) || !fs.statSync(file).isFile()) { + response.writeHead(404); + response.end("not found"); + return; + } + response.statusCode = 200; + response.setHeader("Content-Type", mime.get(path.extname(file)) ?? "application/octet-stream"); + response.setHeader("Cross-Origin-Opener-Policy", "same-origin"); + response.setHeader("Cross-Origin-Embedder-Policy", "require-corp"); + response.setHeader("Cross-Origin-Resource-Policy", "same-origin"); + response.setHeader("Content-Security-Policy", "default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; worker-src 'self'; connect-src 'self'; font-src 'self'; img-src 'self'; media-src 'self'; object-src 'none'; base-uri 'none'; frame-ancestors 'none'"); + fs.createReadStream(file).pipe(response); +}); +await new Promise((resolve) => server.listen(0, "127.0.0.1", resolve)); +const address = server.address(); +assert.ok(address && typeof address === "object"); +let browser; +try { + const playwright = await import(pathToFileURL(path.join(root, "web/node_modules/playwright/index.mjs")).href); + browser = await playwright.chromium.launch({ headless: true, args: ["--no-sandbox", "--use-gl=swiftshader", "--enable-unsafe-swiftshader"] }); + const results = []; + for (const backend of ["main", "offscreen"]) { + for (const deviceScaleFactor of [1, 2]) { + for (const viewport of viewports) { + const context = await browser.newContext({ viewport, deviceScaleFactor, hasTouch: viewport.width < 900, isMobile: viewport.width < 600 }); + const page = await context.newPage(); + await page.goto(`http://127.0.0.1:${address.port}/?offscreen=${backend === "offscreen" ? "1" : "0"}`, { waitUntil: "load" }); + await page.waitForFunction(() => document.querySelector("[data-testid=engine-status]")?.textContent === "Engine: ready, open a .blend file", undefined, { timeout: 20_000 }); + const measurement = await page.evaluate(() => { + const visible = (element) => { + const style = getComputedStyle(element); + const rect = element.getBoundingClientRect(); + return style.display !== "none" && style.visibility !== "hidden" && rect.width > 0 && rect.height > 0; + }; + const rect = (element) => { + const value = element.getBoundingClientRect(); + return { left: value.left, top: value.top, right: value.right, bottom: value.bottom, width: value.width, height: value.height }; + }; + const selectors = [".topbar", ".workspace-toolbar", ".storage-budget-panel", ".workspace-grid", ".viewport-area", ".timeline-area", ".status-bar"]; + const bands = Object.fromEntries(selectors.map((selector) => { + const element = document.querySelector(selector); + return [selector, element && visible(element) ? rect(element) : null]; + })); + const bandViolations = []; + for (const selector of [".topbar", ".workspace-toolbar", ".storage-budget-panel", ".status-bar"]) { + const band = document.querySelector(selector); + if (!band || !visible(band)) continue; + const bandRect = band.getBoundingClientRect(); + const horizontalConstrained = !["auto", "scroll", "hidden"].includes(getComputedStyle(band).overflowX); + for (const control of band.querySelectorAll("button, input, select, output, span")) { + if (!visible(control)) continue; + const controlRect = control.getBoundingClientRect(); + if (controlRect.top < bandRect.top - 1 || controlRect.bottom > bandRect.bottom + 1 || + (horizontalConstrained && (controlRect.left < bandRect.left - 1 || controlRect.right > bandRect.right + 1))) { + bandViolations.push(`${selector}:${control.textContent?.trim() || control.getAttribute("aria-label") || control.tagName}`); + } + } + } + const textOverflow = [...document.querySelectorAll(".topbar button, .topbar select, .workspace-toolbar button, .workspace-toolbar > span, .storage-budget-panel span, .storage-budget-panel output, .editor-header button")] + .filter(visible) + .filter((element) => element.scrollWidth > element.clientWidth + 1) + .map((element) => element.textContent?.trim() || element.getAttribute("aria-label") || element.tagName); + const root = document.documentElement; + const app = document.querySelector(".blender-app"); + return { + bands, + bandViolations, + textOverflow, + rootScrollWidth: root.scrollWidth, + rootClientWidth: root.clientWidth, + bodyScrollWidth: document.body.scrollWidth, + viewportWidth: window.innerWidth, + appRect: app ? rect(app) : null, + rendererBackend: document.querySelector("canvas.viewport-canvas")?.dataset.rendererBackend ?? "MISSING", + }; + }); + assert.equal(measurement.rendererBackend, backend === "offscreen" ? "offscreen-worker" : "webgl-pbr"); + assert.deepEqual(measurement.bandViolations, [], JSON.stringify({ backend, deviceScaleFactor, viewport, measurement })); + assert.deepEqual(measurement.textOverflow, [], JSON.stringify({ backend, deviceScaleFactor, viewport, measurement })); + assert.ok(measurement.rootScrollWidth <= measurement.viewportWidth + 1, JSON.stringify({ backend, deviceScaleFactor, viewport, measurement })); + assert.ok(measurement.bodyScrollWidth <= measurement.viewportWidth + 1, JSON.stringify({ backend, deviceScaleFactor, viewport, measurement })); + assert.ok(measurement.appRect && measurement.appRect.right <= viewport.width + 1 && measurement.appRect.bottom <= viewport.height + 1, JSON.stringify({ backend, deviceScaleFactor, viewport, measurement })); + results.push({ backend, deviceScaleFactor, viewport, measurement }); + await context.close(); + } + } + } + const report = { schemaVersion: 1, task: "M14-04G", operation: "CHROMIUM_RESPONSIVE_LAYOUT_BOUNDARY", runtime: "PLAYWRIGHT_CHROMIUM", viewports, deviceScaleFactors: [1, 2], backends: ["main", "offscreen"], resultCount: results.length, results, execution: "DISABLED", nextTask: "M14-04H" }; + const sha256 = (file) => crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex"); + const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + if (process.env.UPDATE_M14_04G_REPORT === "1") { + fs.mkdirSync(path.dirname(reportPath), { recursive: true }); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + const artifactPaths = { + parentManifest: path.join(root, "tests/golden/M14-04F/manifest.json"), + checker: path.join(root, "tools/web/check-chromium-layout.mjs"), + app: path.join(root, "web/app/src/app/App.tsx"), + css: path.join(root, "web/app/src/app/app-shell.css"), + mainViewport: path.join(root, "web/app/src/three-adapter/viewport.ts"), + offscreenViewport: path.join(root, "web/app/src/three-adapter/offscreen-viewport.ts"), + referenceE2E: path.join(root, "web/tests/e2e/responsive-layout.spec.ts"), + package: path.join(root, "web/package.json"), + report: reportPath, + }; + const artifacts = Object.fromEntries(Object.entries(artifactPaths).map(([name, file]) => [name, { path: relative(file), sha256: sha256(file) }])); + fs.writeFileSync(manifestPath, `${JSON.stringify({ schemaVersion: 1, task: "M14-04G", parentTask: "M14-04F", enablingTask: false, parityStateChange: false, runtime: "PLAYWRIGHT_CHROMIUM", operation: "CHROMIUM_RESPONSIVE_LAYOUT_BOUNDARY", artifacts, nextTask: "M14-04H" }, null, 2)}\n`); + } + assert.deepEqual(JSON.parse(fs.readFileSync(reportPath, "utf8")), report); + const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8")); + assert.deepEqual({ task: manifest.task, parentTask: manifest.parentTask, nextTask: manifest.nextTask }, { task: "M14-04G", parentTask: "M14-04F", nextTask: "M14-04H" }); + for (const artifact of Object.values(manifest.artifacts)) assert.equal(sha256(path.join(root, artifact.path)), artifact.sha256, artifact.path); + process.stdout.write(`chromium-layout-ok backends=main,offscreen viewports=4 dpr=1,2 results=${results.length} execution=DISABLED next=${manifest.nextTask}\n`); +} finally { + await browser?.close(); + await new Promise((resolve) => server.close(resolve)); +} diff --git a/tools/web/check-cloth-modifier-desktop.py b/tools/web/check-cloth-modifier-desktop.py new file mode 100644 index 00000000..d8bf557a --- /dev/null +++ b/tools/web/check-cloth-modifier-desktop.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +import hashlib, json, os, pathlib, sys, tempfile +import bpy + +def report(): + obj = bpy.data.objects.get("WebGapClothObject") + if obj is None: raise RuntimeError("WebGapClothObject is missing") + modifiers = [m for m in obj.modifiers if m.type == "CLOTH"] + if len(modifiers) != 1: raise RuntimeError(f"expected one CLOTH modifier, found {len(modifiers)}") + m = modifiers[0] + return {"meshId": "mesh:" + obj.data.name, "modifier": {"name": m.name, "type": m.type, "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[m.type].value, "showViewport": bool(m.show_viewport), "showRender": bool(m.show_render), "showEditMode": bool(m.show_in_editmode), "showOnCage": bool(m.show_on_cage)}} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-cloth-modifier-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(v).resolve() for v in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report() + fd, temporary = tempfile.mkstemp(prefix="m16-cloth-modifier-reopen-", suffix=".blend", dir=fixture.parent); os.close(fd) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"cloth modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00036", "operation": "CLOTH_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"cloth-modifier-desktop-ok mesh={after['meshId']} saveReopen=exact") + +if __name__ == "__main__": main() diff --git a/tools/web/check-collection-desktop.py b/tools/web/check-collection-desktop.py new file mode 100644 index 00000000..343ec629 --- /dev/null +++ b/tools/web/check-collection-desktop.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + return [{"name": c.name, "children": sorted(ch.name for ch in c.children), "objects": sorted(o.name for o in c.objects)} for c in sorted(bpy.data.collections, key=lambda value: value.name) if c.name.startswith("WebGap")] + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-collection-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-collection-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"collection save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00005", "operation": "COLLECTION_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "collections": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"collection-desktop-ok collections={len(after)} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-collision-modifier-desktop.py b/tools/web/check-collision-modifier-desktop.py new file mode 100644 index 00000000..a4ce24de --- /dev/null +++ b/tools/web/check-collision-modifier-desktop.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python3 +import hashlib,json,os,pathlib,sys,tempfile +import bpy +def report(): + o=bpy.data.objects.get("WebGapCollisionObject") + if o is None: raise RuntimeError("WebGapCollisionObject is missing") + ms=[m for m in o.modifiers if m.type=="COLLISION"] + if len(ms)!=1: raise RuntimeError(f"expected one COLLISION modifier, found {len(ms)}") + m=ms[0] + return {"meshId":"mesh:"+o.data.name,"modifier":{"name":m.name,"type":m.type,"typeCode":bpy.types.Modifier.bl_rna.properties["type"].enum_items[m.type].value,"showViewport":bool(m.show_viewport),"showRender":bool(m.show_render),"showEditMode":bool(m.show_in_editmode),"showOnCage":bool(m.show_on_cage)}} +def main(): + a=sys.argv[sys.argv.index("--")+1:] + if len(a)!=2: raise SystemExit("usage: blender -b --python check-collision-modifier-desktop.py -- FIXTURE REPORT") + f,out=(pathlib.Path(x).resolve() for x in a); bpy.ops.wm.open_mainfile(filepath=str(f),load_ui=False); before=report(); fd,t=tempfile.mkstemp(prefix="m16-collision-reopen-",suffix=".blend",dir=f.parent); os.close(fd) + try: bpy.ops.wm.save_as_mainfile(filepath=t,check_existing=False,compress=True); bpy.ops.wm.open_mainfile(filepath=t,load_ui=False); after=report() + finally: pathlib.Path(t).unlink(missing_ok=True) + if before!=after: raise RuntimeError(f"collision modifier save/reopen drift: {before} != {after}") + v={"schemaVersion":1,"task":"M16-GAP-00037","operation":"COLLISION_MODIFIER_DESKTOP","fixture":str(f),"fixtureSha256":hashlib.sha256(f.read_bytes()).hexdigest(),"modifier":after,"saveReopen":"EXACT","blenderVersion":bpy.app.version_string}; out.parent.mkdir(parents=True,exist_ok=True); out.write_text(json.dumps(v,indent=2,sort_keys=True)+"\n"); print(f"collision-modifier-desktop-ok mesh={after['meshId']} saveReopen=exact") +if __name__=="__main__": main() diff --git a/tools/web/check-context-governance.mjs b/tools/web/check-context-governance.mjs new file mode 100644 index 00000000..45d95148 --- /dev/null +++ b/tools/web/check-context-governance.mjs @@ -0,0 +1,33 @@ +import assert from "node:assert/strict"; +import fs from "node:fs"; +import path from "node:path"; +import { buildTaskContext, root, verifyTaskIndex } from "./task-context-lib.mjs"; +import { validateCatalogRecords, validateContextBundle } from "./context-governance.mjs"; + +const requested = process.argv.indexOf("--task"); +const task = requested >= 0 ? process.argv[requested + 1] : undefined; +const bundle = buildTaskContext(task); +const current = task === undefined; +const { report, violations } = validateContextBundle(bundle, { current }); +const index = verifyTaskIndex(); +if (index) { + const catalogPath = path.join(root, index.catalog.path); + violations.push(...validateCatalogRecords(catalogPath, index)); + const catalogHandle = fs.openSync(catalogPath, "r"); + let active; + try { + active = Object.entries(index.entries).filter(([id]) => { + const metadata = index.entries[id]; + const buffer = Buffer.alloc(metadata.length); + fs.readSync(catalogHandle, buffer, 0, metadata.length, metadata.offset); + return JSON.parse(buffer.toString("utf8")).state === "active"; + }); + } finally { + fs.closeSync(catalogHandle); + } + if (active.length !== 1) violations.push({ code: "INDEX_ACTIVE_TASK_COUNT", detail: `count=${active.length}` }); + if (current && active[0]?.[0] !== bundle.context.task) violations.push({ code: "INDEX_ACTIVE_TASK_MISMATCH", detail: `${active[0]?.[0] ?? "NONE"}!=${bundle.context.task}` }); +} + +assert.equal(violations.length, 0, `context governance violations: ${JSON.stringify(violations)}`); +process.stdout.write(`context-governance-ok task=${bundle.context.task} totalTokens=${report.totalTokens} inputs=${bundle.context.inputPaths.length} commands=${bundle.context.commands.length}\n`); diff --git a/tools/web/check-curve-desktop.py b/tools/web/check-curve-desktop.py new file mode 100644 index 00000000..fe0697b0 --- /dev/null +++ b/tools/web/check-curve-desktop.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + curve = bpy.data.curves.get("WebGapCurve") + if curve is None: raise RuntimeError("WebGapCurve is missing") + return {"name": curve.name, "dimensions": curve.dimensions, "resolution": curve.resolution_u, "splines": [{"type": s.type, "count": len(s.bezier_points) if s.type == "BEZIER" else len(s.points), "cyclic": s.use_cyclic_u} for s in curve.splines], "points": [[round(float(v), 6) for v in point.co] for s in curve.splines if s.type == "BEZIER" for point in s.bezier_points]} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-curve-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-curve-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"curve save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00006", "operation": "CURVE_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "curve": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"curve-desktop-ok splines={len(after['splines'])} points={len(after['points'])} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-curves-desktop.py b/tools/web/check-curves-desktop.py new file mode 100644 index 00000000..22b0bbb9 --- /dev/null +++ b/tools/web/check-curves-desktop.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + curves = bpy.data.hair_curves.get("WebGapCurves") or bpy.data.curves.get("WebGapCurves") + if curves is None: raise RuntimeError("WebGapCurves is missing") + geometry = getattr(curves, "curves", None) + return {"name": curves.name, "pointCount": len(curves.attributes.get("position").data) if curves.attributes.get("position") else 0, "curveCount": len(geometry) if geometry is not None else 0} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-curves-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-curves-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"Curves save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00007", "operation": "CURVES_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "curves": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"curves-desktop-ok name={after['name']} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-freestyle-desktop.py b/tools/web/check-freestyle-desktop.py new file mode 100644 index 00000000..cc1d003c --- /dev/null +++ b/tools/web/check-freestyle-desktop.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + style = bpy.data.linestyles.get("WebGapLineStyle") + if style is None: raise RuntimeError("WebGapLineStyle is missing") + return {"name": style.name, "color": [round(float(v), 6) for v in style.color], "alpha": round(float(style.alpha), 6), "thickness": round(float(style.thickness), 6), "chaining": style.use_chaining, "dashed": style.use_dashed_line, "modifierCounts": {"color": len(style.color_modifiers), "alpha": len(style.alpha_modifiers), "thickness": len(style.thickness_modifiers), "geometry": len(style.geometry_modifiers)}} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-freestyle-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-freestyle-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"Freestyle save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00008", "operation": "FREESTYLE_LINE_STYLE_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "lineStyle": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"freestyle-desktop-ok name={after['name']} thickness={after['thickness']} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-generated-gap.mjs b/tools/web/check-generated-gap.mjs new file mode 100644 index 00000000..9a2ffae1 --- /dev/null +++ b/tools/web/check-generated-gap.mjs @@ -0,0 +1,1161 @@ +import assert from "node:assert/strict"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import crypto from "node:crypto"; +import { spawnSync } from "node:child_process"; +import factory from "../../web/app/src/vendor/blender/web_engine.js"; +import { readIndexedTask, verifyTaskIndex } from "./task-context-lib.mjs"; +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const task = process.argv[process.argv.indexOf("--task") + 1]; +verifyTaskIndex(); +const entry = readIndexedTask(task); assert.ok(entry); assert.ok(["active", "completed"].includes(entry.state)); +const wasmBinary = fs.readFileSync(path.join(root, "web/app/src/vendor/blender/web_engine.wasm")); +const open = (engine, handle, input) => { const pointer = engine._malloc(input.byteLength); engine.HEAPU8.set(input, pointer); try { assert.equal(engine._web_engine_open_blend(handle, pointer, input.byteLength), 0, engine.UTF8ToString(engine._web_engine_last_error_message())); } finally { engine._free(pointer); } }; +const output = (engine, handle, fn, owned = false) => { const data = engine._malloc(4); const length = engine._malloc(4); try { assert.equal(fn(handle, data, length), 0, engine.UTF8ToString(engine._web_engine_last_error_message())); const pointer = engine.HEAPU32[data >>> 2]; const size = engine.HEAPU32[length >>> 2]; const result = engine.HEAPU8.slice(pointer, pointer + size); if (owned) engine._web_engine_free_buffer(pointer); return result; } finally { engine._free(data); engine._free(length); } }; +const snapshot = (engine, handle) => JSON.parse(new TextDecoder().decode(output(engine, handle, engine._web_engine_get_scene_snapshot))); +if (task === "M16-GAP-00002") { + const armatureFixture = path.join(root, "tests/files/web/generated/M16-GAP-00002-datablock-Armature.blend"); const armatureDesktopPath = path.join(root, "tests/golden/M16-GAP-00002/armature-desktop-report.json"); + const armatureDesktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-armature-desktop.py"), "--", armatureFixture, armatureDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(armatureDesktop.status, 0, `${armatureDesktop.stdout ?? ""}\n${armatureDesktop.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(armatureDesktopPath, "utf8")); const armatureBytes = fs.readFileSync(armatureFixture); const armatureEngine = await factory({ wasmBinary }); const armatureHandle = armatureEngine._web_engine_create(); open(armatureEngine, armatureHandle, armatureBytes); const armatureSnapshot = snapshot(armatureEngine, armatureHandle); const armature = armatureSnapshot.armatures?.find((value) => value.id === "armature:RiggedArmature"); const armatureMesh = armatureSnapshot.meshes?.find((value) => value.id === "mesh:RiggedShapeMesh"); assert.ok(armature); assert.deepEqual(armature.bones.map((bone) => bone.name), ["Root", "Tip"]); assert.equal(armature.bones[1].parentId, armature.bones[0].id); assert.ok(armatureMesh?.skinWeights?.boneNames?.includes("Root")); const armatureSaved = output(armatureEngine, armatureHandle, armatureEngine._web_engine_save_blend, true); const armatureReopened = armatureEngine._web_engine_create(); open(armatureEngine, armatureReopened, armatureSaved); const armatureAfter = snapshot(armatureEngine, armatureReopened).armatures?.find((value) => value.id === "armature:RiggedArmature"); assert.deepEqual(armatureAfter, armature); const armatureReport = { schemaVersion: 1, task: "M16-GAP-00002", operation: "ARMATURE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, armatureFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, armatureDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", armatureId: armature.id, bones: armature.bones.map((bone) => ({ name: bone.name, parentId: bone.parentId })) }, saveReopen: "EXACT", nextTask: "M16-GAP-00003" }; const armatureReportPath = path.join(root, "tests/golden/M16-GAP-00002/armature-local-exact-report.json"); fs.mkdirSync(path.dirname(armatureReportPath), { recursive: true }); fs.writeFileSync(armatureReportPath, `${JSON.stringify(armatureReport, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} armature=${armature.id} bones=${armature.bones.length} desktop=exact saveReopen=exact next=${armatureReport.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00003") { + const brushFixture = path.join(root, "tests/files/web/generated/M16-GAP-00003-datablock-Brush.blend"); const brushDesktopPath = path.join(root, "tests/golden/M16-GAP-00003/brush-desktop-report.json"); const brushDesktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-brush-desktop.py"), "--", brushFixture, brushDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(brushDesktop.status, 0, `${brushDesktop.stdout ?? ""}\n${brushDesktop.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(brushDesktopPath, "utf8")); const brushBytes = fs.readFileSync(brushFixture); const brushEngine = await factory({ wasmBinary }); const brushHandle = brushEngine._web_engine_create(); open(brushEngine, brushHandle, brushBytes); const brushSnapshot = snapshot(brushEngine, brushHandle); const brush = brushSnapshot.brushes?.find((value) => value.id === "brush:WebGapBrush"); assert.ok(brush); assert.equal(brush.name, "WebGapBrush"); assert.equal(brush.size, 42); assert.ok(Math.abs(brush.alpha - 0.65) < 1e-5); assert.ok(Math.abs(brush.hardness - 0.8) < 1e-5); assert.equal(brush.spacing, 17); assert.ok(Math.abs(brush.jitter - 0.2) < 1e-5); const brushSaved = output(brushEngine, brushHandle, brushEngine._web_engine_save_blend, true); const brushReopened = brushEngine._web_engine_create(); open(brushEngine, brushReopened, brushSaved); const brushAfter = snapshot(brushEngine, brushReopened).brushes?.find((value) => value.id === brush.id); assert.deepEqual(brushAfter, brush); const brushReport = { schemaVersion: 1, task: "M16-GAP-00003", operation: "BRUSH_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, brushFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, brushDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", brushId: brush.id, values: { size: brush.size, alpha: brush.alpha, hardness: brush.hardness, spacing: brush.spacing, jitter: brush.jitter, sculptTool: brush.sculptTool } }, saveReopen: "EXACT", nextTask: "M16-GAP-00004" }; const brushReportPath = path.join(root, "tests/golden/M16-GAP-00003/brush-local-exact-report.json"); fs.mkdirSync(path.dirname(brushReportPath), { recursive: true }); fs.writeFileSync(brushReportPath, `${JSON.stringify(brushReport, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} brush=${brush.id} size=${brush.size} desktop=exact saveReopen=exact next=${brushReport.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00004" && !process.env.USE_LEGACY_CAMERA_BRANCH) { + const cameraFixture = path.join(root, "tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend"); + const cameraDesktopPath = path.join(root, "tests/golden/M16-GAP-00004/camera-desktop-report.json"); + fs.mkdirSync(path.dirname(cameraDesktopPath), { recursive: true }); + const cameraDesktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-camera-desktop.py"), "--", cameraFixture, cameraDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(cameraDesktop.status, 0, `${cameraDesktop.stdout ?? ""}\n${cameraDesktop.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(cameraDesktopPath, "utf8")); + const cameraBytes = fs.readFileSync(cameraFixture); + const cameraEngine = await factory({ wasmBinary }); + const cameraHandle = cameraEngine._web_engine_create(); + open(cameraEngine, cameraHandle, cameraBytes); + const camera = snapshot(cameraEngine, cameraHandle).cameras?.find((value) => value.id === "camera:WebGapCamera"); + assert.ok(camera); + assert.equal(camera.projection, "PERSPECTIVE"); + assert.ok(Math.abs(camera.lensMm - 52) < 1e-5); + assert.ok(Math.abs(camera.near - 0.1) < 1e-5); + assert.ok(Math.abs(camera.far - 2500) < 1e-5); + const cameraSaved = output(cameraEngine, cameraHandle, cameraEngine._web_engine_save_blend, true); + const cameraReopened = cameraEngine._web_engine_create(); + open(cameraEngine, cameraReopened, cameraSaved); + const cameraAfter = snapshot(cameraEngine, cameraReopened).cameras?.find((value) => value.id === camera.id); + assert.deepEqual(cameraAfter, camera); + const cameraReport = { schemaVersion: 1, task: "M16-GAP-00004", operation: "CAMERA_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, cameraFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, cameraDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", cameraId: camera.id, values: { projection: camera.projection, lensMm: camera.lensMm, near: camera.near, far: camera.far } }, saveReopen: "EXACT", nextTask: "M16-GAP-00005" }; + const cameraReportPath = path.join(root, "tests/golden/M16-GAP-00004/camera-local-exact-report.json"); + fs.mkdirSync(path.dirname(cameraReportPath), { recursive: true }); + fs.writeFileSync(cameraReportPath, `${JSON.stringify(cameraReport, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} camera=${camera.id} lensMm=${camera.lensMm} desktop=exact saveReopen=exact next=${cameraReport.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00004") { + const cameraFixture = path.join(root, "tests/files/web/generated/M16-GAP-00004-datablock-Camera.blend"); const cameraDesktopPath = path.join(root, "tests/golden/M16-GAP-00004/camera-desktop-report.json"); fs.mkdirSync(path.dirname(cameraDesktopPath), { recursive: true }); const cameraDesktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-camera-desktop.py"), "--", cameraFixture, cameraDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(cameraDesktop.status, 0, `${cameraDesktop.stdout ?? ""}\n${cameraDesktop.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(cameraDesktopPath, "utf8")); const cameraBytes = fs.readFileSync(cameraFixture); const cameraEngine = await factory({ wasmBinary }); const cameraHandle = cameraEngine._web_engine_create(); open(cameraEngine, cameraHandle, cameraBytes); const cameraSnapshot = snapshot(cameraEngine, cameraHandle); const camera = cameraSnapshot.cameras?.find((value) => value.id === "camera:WebGapCamera"); assert.ok(camera); assert.equal(camera.type, "PERSP"); assert.ok(Math.abs(camera.lens - 52) < 1e-5); assert.ok(Math.abs(camera.clipStart - 0.1) < 1e-5); assert.ok(Math.abs(camera.clipEnd - 2500) < 1e-5); const cameraSaved = output(cameraEngine, cameraHandle, cameraEngine._web_engine_save_blend, true); const cameraReopened = cameraEngine._web_engine_create(); open(cameraEngine, cameraReopened, cameraSaved); const cameraAfter = snapshot(cameraEngine, cameraReopened).cameras?.find((value) => value.id === camera.id); assert.deepEqual(cameraAfter, camera); const cameraReport = { schemaVersion: 1, task: "M16-GAP-00004", operation: "CAMERA_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, cameraFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, cameraDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", cameraId: camera.id, values: { type: camera.type, lens: camera.lens, clipStart: camera.clipStart, clipEnd: camera.clipEnd } }, saveReopen: "EXACT", nextTask: "M16-GAP-00005" }; const cameraReportPath = path.join(root, "tests/golden/M16-GAP-00004/camera-local-exact-report.json"); fs.mkdirSync(path.dirname(cameraReportPath), { recursive: true }); fs.writeFileSync(cameraReportPath, `${JSON.stringify(cameraReport, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} camera=${camera.id} lens=${camera.lens} desktop=exact saveReopen=exact next=${cameraReport.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00005" && !process.env.USE_LEGACY_COLLECTION_BRANCH) { + const collectionFixture = path.join(root, "tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend"); + const collectionDesktopPath = path.join(root, "tests/golden/M16-GAP-00005/collection-desktop-report.json"); + fs.mkdirSync(path.dirname(collectionDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-collection-desktop.py"), "--", collectionFixture, collectionDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(collectionDesktopPath, "utf8")); + const collectionEngine = await factory({ wasmBinary }); + const collectionHandle = collectionEngine._web_engine_create(); + open(collectionEngine, collectionHandle, fs.readFileSync(collectionFixture)); + const collections = snapshot(collectionEngine, collectionHandle).collections?.filter((value) => value.id.includes("WebGap")); + assert.ok(collections?.length >= 2); + const parent = collections.find((value) => value.id === "collection:WebGapCollection"); + const child = collections.find((value) => value.id === "collection:WebGapChild"); + assert.ok(parent && child); + assert.ok(parent.childCollectionIds?.includes(child.id)); + assert.ok(child.objectIds?.includes("object:WebGapCollectionObject")); + const saved = output(collectionEngine, collectionHandle, collectionEngine._web_engine_save_blend, true); + const reopened = collectionEngine._web_engine_create(); + open(collectionEngine, reopened, saved); + const after = snapshot(collectionEngine, reopened).collections?.filter((value) => value.id.includes("WebGap")); + assert.deepEqual(after, collections); + const report = { schemaVersion: 1, task: "M16-GAP-00005", operation: "COLLECTION_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, collectionFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, collectionDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", collections: collections.map((value) => ({ id: value.id, childCollectionIds: value.childCollectionIds, objectIds: value.objectIds })) }, saveReopen: "EXACT", nextTask: "M16-GAP-00006" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00005/collection-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} collections=${collections.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00005") { + const collectionFixture = path.join(root, "tests/files/web/generated/M16-GAP-00005-datablock-Collection.blend"); const collectionDesktopPath = path.join(root, "tests/golden/M16-GAP-00005/collection-desktop-report.json"); fs.mkdirSync(path.dirname(collectionDesktopPath), { recursive: true }); const collectionDesktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-collection-desktop.py"), "--", collectionFixture, collectionDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(collectionDesktop.status, 0, `${collectionDesktop.stdout ?? ""}\n${collectionDesktop.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(collectionDesktopPath, "utf8")); const collectionBytes = fs.readFileSync(collectionFixture); const collectionEngine = await factory({ wasmBinary }); const collectionHandle = collectionEngine._web_engine_create(); open(collectionEngine, collectionHandle, collectionBytes); const collectionSnapshot = snapshot(collectionEngine, collectionHandle); const collections = collectionSnapshot.collections?.filter((value) => value.id.includes("WebGap")); assert.ok(collections?.length >= 2); const parent = collections.find((value) => value.id === "collection:WebGapCollection"); const child = collections.find((value) => value.id === "collection:WebGapChild"); assert.ok(parent && child); assert.ok(parent.children?.includes(child.id)); assert.ok(child.objectIds?.includes("object:WebGapCollectionObject")); const saved = output(collectionEngine, collectionHandle, collectionEngine._web_engine_save_blend, true); const reopened = collectionEngine._web_engine_create(); open(collectionEngine, reopened, saved); const after = snapshot(collectionEngine, reopened).collections?.filter((value) => value.id.includes("WebGap")); assert.deepEqual(after, collections); const report = { schemaVersion: 1, task: "M16-GAP-00005", operation: "COLLECTION_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, collectionFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, collectionDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", collections: collections.map((value) => ({ id: value.id, children: value.children, objectIds: value.objectIds })) }, saveReopen: "EXACT", nextTask: "M16-GAP-00006" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00005/collection-local-exact-report.json"); fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} collections=${collections.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00006") { + const curveFixture = path.join(root, "tests/files/web/generated/M16-GAP-00006-datablock-Curve.blend"); const curveDesktopPath = path.join(root, "tests/golden/M16-GAP-00006/curve-desktop-report.json"); fs.mkdirSync(path.dirname(curveDesktopPath), { recursive: true }); const curveDesktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-curve-desktop.py"), "--", curveFixture, curveDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(curveDesktop.status, 0, `${curveDesktop.stdout ?? ""}\n${curveDesktop.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(curveDesktopPath, "utf8")); const curveEngine = await factory({ wasmBinary }); const curveHandle = curveEngine._web_engine_create(); open(curveEngine, curveHandle, fs.readFileSync(curveFixture)); const nonMesh = snapshot(curveEngine, curveHandle).nonMeshData?.find((value) => value.id === "curve:WebGapCurve"); assert.ok(nonMesh); assert.equal(nonMesh.geometryStatus, "available"); assert.equal(nonMesh.splineCount, 1); assert.equal(nonMesh.pointCount, 3); assert.deepEqual(nonMesh.splineTypes, ["BEZIER"]); assert.deepEqual(nonMesh.splineOffsets, [0, 3]); assert.equal(nonMesh.controlPoints.length, 9); const saved = output(curveEngine, curveHandle, curveEngine._web_engine_save_blend, true); const reopened = curveEngine._web_engine_create(); open(curveEngine, reopened, saved); const after = snapshot(curveEngine, reopened).nonMeshData?.find((value) => value.id === nonMesh.id); assert.deepEqual(after, nonMesh); const report = { schemaVersion: 1, task: "M16-GAP-00006", operation: "CURVE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, curveFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, curveDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", curveId: nonMesh.id, splineCount: nonMesh.splineCount, pointCount: nonMesh.pointCount, splineTypes: nonMesh.splineTypes }, saveReopen: "EXACT", nextTask: "M16-GAP-00007" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00006/curve-local-exact-report.json"); fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} curve=${nonMesh.id} splines=${nonMesh.splineCount} points=${nonMesh.pointCount} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00007") { + const curvesFixture = path.join(root, "tests/files/web/generated/M16-GAP-00007-datablock-Curves.blend"); const curvesDesktopPath = path.join(root, "tests/golden/M16-GAP-00007/curves-desktop-report.json"); fs.mkdirSync(path.dirname(curvesDesktopPath), { recursive: true }); const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-curves-desktop.py"), "--", curvesFixture, curvesDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(curvesDesktopPath, "utf8")); const curvesEngine = await factory({ wasmBinary }); const curvesHandle = curvesEngine._web_engine_create(); open(curvesEngine, curvesHandle, fs.readFileSync(curvesFixture)); const curvesData = snapshot(curvesEngine, curvesHandle).nonMeshData?.find((value) => value.id === "curves:WebGapCurves"); assert.ok(curvesData); assert.equal(curvesData.geometryStatus, "available"); assert.ok(curvesData.pointCount >= 4); assert.ok(curvesData.splineCount >= 1); assert.ok(Array.isArray(curvesData.splineOffsets)); const saved = output(curvesEngine, curvesHandle, curvesEngine._web_engine_save_blend, true); const reopened = curvesEngine._web_engine_create(); open(curvesEngine, reopened, saved); const after = snapshot(curvesEngine, reopened).nonMeshData?.find((value) => value.id === curvesData.id); assert.deepEqual(after, curvesData); const report = { schemaVersion: 1, task: "M16-GAP-00007", operation: "CURVES_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, curvesFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, curvesDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", curvesId: curvesData.id, pointCount: curvesData.pointCount, splineCount: curvesData.splineCount }, saveReopen: "EXACT", nextTask: "M16-GAP-00008" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00007/curves-local-exact-report.json"); fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} curves=${curvesData.id} points=${curvesData.pointCount} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00008") { + const styleFixture = path.join(root, "tests/files/web/generated/M16-GAP-00008-datablock-FreestyleLineStyle.blend"); const styleDesktopPath = path.join(root, "tests/golden/M16-GAP-00008/freestyle-desktop-report.json"); fs.mkdirSync(path.dirname(styleDesktopPath), { recursive: true }); const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-freestyle-desktop.py"), "--", styleFixture, styleDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(styleDesktopPath, "utf8")); const styleEngine = await factory({ wasmBinary }); const styleHandle = styleEngine._web_engine_create(); open(styleEngine, styleHandle, fs.readFileSync(styleFixture)); const lineStyle = snapshot(styleEngine, styleHandle).lineStyles?.find((value) => value.id === "line-style:WebGapLineStyle"); assert.ok(lineStyle); assert.ok(Math.abs(lineStyle.alpha - 0.75) < 1e-5); assert.ok(Math.abs(lineStyle.thickness - 2.5) < 1e-5); assert.deepEqual(lineStyle.color.map((value) => Number(value.toFixed(3))), [0.2, 0.4, 0.8]); assert.equal(lineStyle.dashed, true); const saved = output(styleEngine, styleHandle, styleEngine._web_engine_save_blend, true); const reopened = styleEngine._web_engine_create(); open(styleEngine, reopened, saved); const after = snapshot(styleEngine, reopened).lineStyles?.find((value) => value.id === lineStyle.id); assert.deepEqual(after, lineStyle); const report = { schemaVersion: 1, task: "M16-GAP-00008", operation: "FREESTYLE_LINE_STYLE_LOCAL_EXACT", fixture: { path: path.relative(root, styleFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, styleDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", lineStyleId: lineStyle.id, thickness: lineStyle.thickness, modifierCounts: lineStyle.modifierCounts }, saveReopen: "EXACT", nextTask: "M16-GAP-00009" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00008/freestyle-local-exact-report.json"); fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} lineStyle=${lineStyle.id} thickness=${lineStyle.thickness} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00009") { + const gpFixture = path.join(root, "tests/files/web/generated/M16-GAP-00009-datablock-GreasePencil.blend"); const gpDesktopPath = path.join(root, "tests/golden/M16-GAP-00009/grease-pencil-desktop-report.json"); fs.mkdirSync(path.dirname(gpDesktopPath), { recursive: true }); const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-grease-pencil-desktop.py"), "--", gpFixture, gpDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); const desktopEvidence = JSON.parse(fs.readFileSync(gpDesktopPath, "utf8")); const gpEngine = await factory({ wasmBinary }); const gpHandle = gpEngine._web_engine_create(); open(gpEngine, gpHandle, fs.readFileSync(gpFixture)); const gpSnapshot = snapshot(gpEngine, gpHandle); const gp = gpSnapshot.greasePencils?.find((value) => value.name === "GreasePencilData"); assert.ok(gp); assert.ok(gp.layers?.length >= 1); assert.ok(gp.layers[0].frames?.length >= 1); const saved = output(gpEngine, gpHandle, gpEngine._web_engine_save_blend, true); const reopened = gpEngine._web_engine_create(); open(gpEngine, reopened, saved); const after = snapshot(gpEngine, reopened).greasePencils?.find((value) => value.name === gp.name); assert.deepEqual(after, gp); const report = { schemaVersion: 1, task: "M16-GAP-00009", operation: "GREASE_PENCIL_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, gpFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, gpDesktopPath).replaceAll(path.sep, "/") }, wasm: { status: "EXACT", dataName: gp.name, layerCount: gp.layers.length, frameCount: gp.layers.reduce((sum, layer) => sum + layer.frames.length, 0) }, saveReopen: "EXACT", nextTask: "M16-GAP-00010" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00009/grease-pencil-local-exact-report.json"); fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} greasePencil=${gp.name} layers=${gp.layers.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00010") { + const latticeFixture = path.join(root, "tests/files/web/generated/M16-GAP-00010-datablock-Lattice.blend"); + const latticeDesktopPath = path.join(root, "tests/golden/M16-GAP-00010/lattice-desktop-report.json"); + fs.mkdirSync(path.dirname(latticeDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-lattice-desktop.py"), "--", latticeFixture, latticeDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(latticeDesktopPath, "utf8")); + const latticeEngine = await factory({ wasmBinary }); + const latticeHandle = latticeEngine._web_engine_create(); + open(latticeEngine, latticeHandle, fs.readFileSync(latticeFixture)); + const lattice = snapshot(latticeEngine, latticeHandle).lattices?.find((value) => value.id === "lattice:WebGapLattice"); + assert.ok(lattice); + assert.equal(lattice.status, "AVAILABLE"); + assert.deepEqual(lattice.dimensions, desktopEvidence.lattice.dimensions); + assert.equal(lattice.pointCount, desktopEvidence.lattice.pointCount); + assert.deepEqual(lattice.interpolation, ["KEY_LINEAR", "KEY_CARDINAL", "KEY_BSPLINE"]); + assert.equal(lattice.useOutside, true); + assert.equal(lattice.vertexGroup, "WebGapInfluence"); + assert.deepEqual(lattice.points, desktopEvidence.lattice.points); + const saved = output(latticeEngine, latticeHandle, latticeEngine._web_engine_save_blend, true); + const reopened = latticeEngine._web_engine_create(); + open(latticeEngine, reopened, saved); + const after = snapshot(latticeEngine, reopened).lattices?.find((value) => value.id === lattice.id); + assert.deepEqual(after, lattice); + const report = { schemaVersion: 1, task: "M16-GAP-00010", operation: "LATTICE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, latticeFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, latticeDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", latticeId: lattice.id, dimensions: lattice.dimensions, pointCount: lattice.pointCount, interpolation: lattice.interpolation, pointHash: crypto.createHash("sha256").update(JSON.stringify(lattice.points)).digest("hex") }, saveReopen: "EXACT", nextTask: "M16-GAP-00011" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00010/lattice-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} lattice=${lattice.id} points=${lattice.pointCount} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00011") { + const libraryFixture = path.join(root, "tests/files/web/generated/M16-GAP-00011-datablock-Library.blend"); + const libraryDesktopPath = path.join(root, "tests/golden/M16-GAP-00011/library-desktop-report.json"); + fs.mkdirSync(path.dirname(libraryDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-library-desktop.py"), "--", libraryFixture, libraryDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(libraryDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const libraryEngine = await factory({ wasmBinary }); + const libraryHandle = libraryEngine._web_engine_create(); + open(libraryEngine, libraryHandle, fs.readFileSync(libraryFixture)); + const librarySnapshot = snapshot(libraryEngine, libraryHandle); + assert.equal(librarySnapshot.libraryStatus, "AVAILABLE"); + assert.ok(Array.isArray(librarySnapshot.libraries)); + assert.equal(librarySnapshot.libraries.length, 1); + const library = librarySnapshot.libraries[0]; + assert.equal(library.id, desktopEvidence.library.id); + assert.equal(library.name, desktopEvidence.library.name); + assert.equal(library.sourcePath, "//WebGapLibrary.blend"); + assert.equal(library.packed, false); + assert.equal(library.status, "EXTERNAL_REQUIRED"); + assert.equal(library.errorCode, "LINKED_LIBRARY_RESOURCE_REQUIRED"); + assert.deepEqual(library.dependencyIds, []); + assert.equal(library.readOnly, true); + const saved = output(libraryEngine, libraryHandle, libraryEngine._web_engine_save_blend, true); + assert.ok(saved.byteLength > 0); + const reopened = libraryEngine._web_engine_create(); + open(libraryEngine, reopened, saved); + const after = snapshot(libraryEngine, reopened); + assert.deepEqual(after.libraries, librarySnapshot.libraries); + assert.equal(after.libraryStatus, librarySnapshot.libraryStatus); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = libraryEngine._malloc(malformed.byteLength); + let malformedResult; + try { + libraryEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = libraryEngine._web_engine_open_blend(libraryHandle, malformedPointer, malformed.byteLength); + } + finally { + libraryEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(libraryEngine, libraryHandle), librarySnapshot); + libraryEngine._web_engine_destroy(libraryHandle); + libraryEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00011", operation: "LIBRARY_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, libraryFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, libraryDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", libraryId: library.id, sourcePath: library.sourcePath, libraryStatus: library.status, dependencyIds: library.dependencyIds }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00012" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00011/library-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} library=${library.id} status=${library.status} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00012") { + const lightFixture = path.join(root, "tests/files/web/generated/M16-GAP-00012-datablock-Light.blend"); + const lightDesktopPath = path.join(root, "tests/golden/M16-GAP-00012/light-desktop-report.json"); + fs.mkdirSync(path.dirname(lightDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-light-desktop.py"), "--", lightFixture, lightDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(lightDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const lightEngine = await factory({ wasmBinary }); + const lightHandle = lightEngine._web_engine_create(); + open(lightEngine, lightHandle, fs.readFileSync(lightFixture)); + const lightSnapshot = snapshot(lightEngine, lightHandle); + const light = lightSnapshot.lights?.find((value) => value.id === "light:WebGapLight"); + assert.ok(light); + const normalizedLight = { ...light }; + for (const field of ["energy", "exposure", "temperature", "radius", "spotAngle", "spotBlend", "areaSize", "areaSizeY", "areaSpread", "sunAngle"]) normalizedLight[field] = Number(normalizedLight[field].toFixed(6)); + normalizedLight.color = normalizedLight.color.map((value) => Number(value.toFixed(6))); + assert.deepEqual(normalizedLight, desktopEvidence.light); + assert.equal(light.lightType, 4); + assert.deepEqual(light.color, [0.25, 0.5, 0.75]); + const closeLight = (actual, expected, label) => assert.ok(Math.abs(actual - expected) <= 1e-5, `${label}: ${actual} != ${expected}`); + closeLight(light.energy, 400, "energy"); + closeLight(light.exposure, 1, "exposure"); + closeLight(light.temperature, 5000, "temperature"); + assert.equal(light.useTemperature, true); + assert.equal(light.castsShadow, false); + closeLight(light.radius, 0.3, "radius"); + assert.equal(light.areaShape, 1); + closeLight(light.areaSize, 3, "areaSize"); + closeLight(light.areaSizeY, 2, "areaSizeY"); + closeLight(light.areaSpread, 2.4, "areaSpread"); + closeLight(light.sunAngle, 0.00918, "sunAngle"); + const saved = output(lightEngine, lightHandle, lightEngine._web_engine_save_blend, true); + const reopened = lightEngine._web_engine_create(); + open(lightEngine, reopened, saved); + const after = snapshot(lightEngine, reopened); + assert.deepEqual(after.lights, lightSnapshot.lights); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = lightEngine._malloc(malformed.byteLength); + let malformedResult; + try { + lightEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = lightEngine._web_engine_open_blend(lightHandle, malformedPointer, malformed.byteLength); + } + finally { + lightEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(lightEngine, lightHandle), lightSnapshot); + lightEngine._web_engine_destroy(lightHandle); + lightEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00012", operation: "LIGHT_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, lightFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, lightDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", lightId: light.id, lightType: light.lightType, fields: { energy: light.energy, exposure: light.exposure, temperature: light.temperature, useTemperature: light.useTemperature, castsShadow: light.castsShadow, areaSize: light.areaSize, areaSizeY: light.areaSizeY } }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00013" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00012/light-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} light=${light.id} type=${light.lightType} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00013") { + const materialFixture = path.join(root, "tests/files/web/generated/M16-GAP-00013-datablock-Material.blend"); + const materialDesktopPath = path.join(root, "tests/golden/M16-GAP-00013/material-desktop-report.json"); + fs.mkdirSync(path.dirname(materialDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-material-desktop.py"), "--", materialFixture, materialDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(materialDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const materialEngine = await factory({ wasmBinary }); + const materialHandle = materialEngine._web_engine_create(); + open(materialEngine, materialHandle, fs.readFileSync(materialFixture)); + const materialSnapshot = snapshot(materialEngine, materialHandle); + const material = materialSnapshot.materials?.find((value) => value.id === "material:WebGapMaterial"); + assert.ok(material); + const closeMaterial = (actual, expected, label) => assert.ok(Math.abs(actual - expected) <= 1e-5, `${label}: ${actual} != ${expected}`); + const closeArray = (actual, expected, label) => expected.forEach((value, index) => closeMaterial(actual[index], value, `${label}[${index}]`)); + closeArray(material.baseColor, [0.2, 0.4, 0.8, 0.9], "baseColor"); + closeMaterial(material.roughness, 0.6, "roughness"); + closeMaterial(material.metallic, 0.35, "metallic"); + closeArray(material.emissionColor, [0.05, 0.1, 0.2, 1], "emissionColor"); + closeMaterial(material.alpha, 0.9, "alpha"); + closeMaterial(material.ior, 1.6, "ior"); + closeMaterial(material.specularIORLevel, 0.35, "specularIORLevel"); + closeMaterial(material.transmissionWeight, 0.27, "transmissionWeight"); + closeMaterial(material.coatWeight, 0.64, "coatWeight"); + closeMaterial(material.coatRoughness, 0.12, "coatRoughness"); + closeMaterial(material.emissionStrength, 3.5, "emissionStrength"); + assert.ok(material.nodes?.some((node) => node.type === "PRINCIPLED")); + assert.ok(material.nodes?.some((node) => node.type === "OUTPUT")); + assert.equal(material.links?.length, 1); + assert.match(material.shaderGraphHash, /^[0-9a-f]{64}$/); + const saved = output(materialEngine, materialHandle, materialEngine._web_engine_save_blend, true); + const reopened = materialEngine._web_engine_create(); + open(materialEngine, reopened, saved); + const after = snapshot(materialEngine, reopened); + assert.deepEqual(after.materials, materialSnapshot.materials); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = materialEngine._malloc(malformed.byteLength); + let malformedResult; + try { + materialEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = materialEngine._web_engine_open_blend(materialHandle, malformedPointer, malformed.byteLength); + } + finally { + materialEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(materialEngine, materialHandle), materialSnapshot); + materialEngine._web_engine_destroy(materialHandle); + materialEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00013", operation: "MATERIAL_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, materialFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, materialDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", materialId: material.id, shaderGraphHash: material.shaderGraphHash, nodeCount: material.nodes.length, linkCount: material.links.length }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00014" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00013/material-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} material=${material.id} nodes=${material.nodes.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00014") { + const meshFixture = path.join(root, "tests/files/web/generated/M16-GAP-00014-datablock-Mesh.blend"); + const meshDesktopPath = path.join(root, "tests/golden/M16-GAP-00014/mesh-desktop-report.json"); + fs.mkdirSync(path.dirname(meshDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-mesh-desktop.py"), "--", meshFixture, meshDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(meshDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const meshEngine = await factory({ wasmBinary }); + const meshHandle = meshEngine._web_engine_create(); + open(meshEngine, meshHandle, fs.readFileSync(meshFixture)); + const meshSnapshot = snapshot(meshEngine, meshHandle); + const mesh = meshSnapshot.meshes?.find((value) => value.id === "mesh:WebGapMesh"); + assert.ok(mesh); + assert.equal(mesh.geometryStatus, "available"); + assert.equal(mesh.vertexCount, desktopEvidence.mesh.vertexCount); + assert.equal(mesh.edgeCount, desktopEvidence.mesh.edgeCount); + assert.equal(mesh.faceCount, desktopEvidence.mesh.faceCount); + assert.equal(mesh.cornerCount, desktopEvidence.mesh.cornerCount); + assert.equal(mesh.triangleCount, desktopEvidence.mesh.triangleCount); + assert.deepEqual(mesh.positions.map((value) => Number(value.toFixed(6))), desktopEvidence.mesh.positions); + assert.deepEqual(mesh.indices, desktopEvidence.mesh.indices); + assert.deepEqual(mesh.uvLayers?.map((layer) => layer.name), ["WebGapUV"]); + const saved = output(meshEngine, meshHandle, meshEngine._web_engine_save_blend, true); + const reopened = meshEngine._web_engine_create(); + open(meshEngine, reopened, saved); + const after = snapshot(meshEngine, reopened).meshes?.find((value) => value.id === mesh.id); + assert.deepEqual(after, mesh); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = meshEngine._malloc(malformed.byteLength); + let malformedResult; + try { + meshEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = meshEngine._web_engine_open_blend(meshHandle, malformedPointer, malformed.byteLength); + } + finally { + meshEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(meshEngine, meshHandle), meshSnapshot); + meshEngine._web_engine_destroy(meshHandle); + meshEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00014", operation: "MESH_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, meshFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, meshDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, vertexCount: mesh.vertexCount, triangleCount: mesh.triangleCount, uvLayers: mesh.uvLayers?.map((layer) => layer.name) }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00015" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00014/mesh-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} vertices=${mesh.vertexCount} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00015") { + const metaballFixture = path.join(root, "tests/files/web/generated/M16-GAP-00015-datablock-MetaBall.blend"); + const metaballDesktopPath = path.join(root, "tests/golden/M16-GAP-00015/metaball-desktop-report.json"); + fs.mkdirSync(path.dirname(metaballDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-metaball-desktop.py"), "--", metaballFixture, metaballDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(metaballDesktopPath, "utf8")); + const metaballEngine = await factory({ wasmBinary }); + const metaballHandle = metaballEngine._web_engine_create(); + open(metaballEngine, metaballHandle, fs.readFileSync(metaballFixture)); + const metaballSnapshot = snapshot(metaballEngine, metaballHandle); + const metaball = metaballSnapshot.nonMeshData?.find((value) => value.id === "metaball:WebGapMetaBall"); + assert.ok(metaball); + assert.equal(metaball.geometryStatus, "available"); + assert.equal(metaball.pointCount, 2); + assert.deepEqual(metaball.elements.map((item) => item.position.map((value) => Number(value.toFixed(6)))), desktopEvidence.metaball.elements.map((item) => item.position)); + metaball.elements.forEach((item, index) => { assert.ok(Math.abs(item.radius - desktopEvidence.metaball.elements[index].radius) <= 1e-5); item.scale.forEach((value, axis) => assert.ok(Math.abs(value - desktopEvidence.metaball.elements[index].scale[axis]) <= 1e-5)); }); + const saved = output(metaballEngine, metaballHandle, metaballEngine._web_engine_save_blend, true); + const reopened = metaballEngine._web_engine_create(); + open(metaballEngine, reopened, saved); + assert.deepEqual(snapshot(metaballEngine, reopened).nonMeshData?.find((value) => value.id === metaball.id), metaball); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = metaballEngine._malloc(malformed.byteLength); let malformedResult; + try { metaballEngine.HEAPU8.set(malformed, malformedPointer); malformedResult = metaballEngine._web_engine_open_blend(metaballHandle, malformedPointer, malformed.byteLength); } finally { metaballEngine._free(malformedPointer); } + assert.notEqual(malformedResult, 0); assert.deepEqual(snapshot(metaballEngine, metaballHandle), metaballSnapshot); + metaballEngine._web_engine_destroy(metaballHandle); metaballEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00015", operation: "METABALL_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, metaballFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, metaballDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", metaballId: metaball.id, pointCount: metaball.pointCount, elementHash: crypto.createHash("sha256").update(JSON.stringify(metaball.elements)).digest("hex") }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00016" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00015/metaball-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} metaball=${metaball.id} points=${metaball.pointCount} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00016") { + const nodeTreeFixture = path.join(root, "tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blend"); + const nodeTreeDesktopPath = path.join(root, "tests/golden/M16-GAP-00016/nodetree-desktop-report.json"); + fs.mkdirSync(path.dirname(nodeTreeDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-nodetree-desktop.py"), "--", nodeTreeFixture, nodeTreeDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(nodeTreeDesktopPath, "utf8")); + const nodeTreeEngine = await factory({ wasmBinary }); + const nodeTreeHandle = nodeTreeEngine._web_engine_create(); + open(nodeTreeEngine, nodeTreeHandle, fs.readFileSync(nodeTreeFixture)); + const nodeTreeSnapshot = snapshot(nodeTreeEngine, nodeTreeHandle); + const material = nodeTreeSnapshot.materials?.find((value) => value.id === "material:WebGapNodeTreeMaterial"); + assert.ok(material); + assert.equal(material.nodes?.length, desktopEvidence.nodeTree.nodeTypes.length); + assert.equal(material.links?.length, desktopEvidence.nodeTree.linkCount); + assert.ok(material.nodes?.some((node) => node.type === "RGB")); + assert.ok(material.nodes?.some((node) => node.type === "PRINCIPLED")); + assert.ok(material.nodes?.some((node) => node.type === "OUTPUT")); + assert.match(material.shaderGraphHash, /^[0-9a-f]{64}$/); + const saved = output(nodeTreeEngine, nodeTreeHandle, nodeTreeEngine._web_engine_save_blend, true); + const reopened = nodeTreeEngine._web_engine_create(); + open(nodeTreeEngine, reopened, saved); + const after = snapshot(nodeTreeEngine, reopened).materials?.find((value) => value.id === material.id); + assert.deepEqual(after, material); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = nodeTreeEngine._malloc(malformed.byteLength); let malformedResult; + try { nodeTreeEngine.HEAPU8.set(malformed, malformedPointer); malformedResult = nodeTreeEngine._web_engine_open_blend(nodeTreeHandle, malformedPointer, malformed.byteLength); } finally { nodeTreeEngine._free(malformedPointer); } + assert.notEqual(malformedResult, 0); assert.deepEqual(snapshot(nodeTreeEngine, nodeTreeHandle), nodeTreeSnapshot); + nodeTreeEngine._web_engine_destroy(nodeTreeHandle); nodeTreeEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00016", operation: "NODETREE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, nodeTreeFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, nodeTreeDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", nodeTreeId: "nodetree:WebGapNodeTreeMaterial", nodeCount: material.nodes.length, linkCount: material.links.length, shaderGraphHash: material.shaderGraphHash }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00017" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00016/nodetree-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} nodeTree=${report.wasm.nodeTreeId} nodes=${material.nodes.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00017") { + const objectFixture = path.join(root, "tests/files/web/generated/M16-GAP-00017-datablock-Object.blend"); + const objectDesktopPath = path.join(root, "tests/golden/M16-GAP-00017/object-desktop-report.json"); + fs.mkdirSync(path.dirname(objectDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-object-desktop.py"), "--", objectFixture, objectDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(objectDesktopPath, "utf8")); + const objectEngine = await factory({ wasmBinary }); + const objectHandle = objectEngine._web_engine_create(); + open(objectEngine, objectHandle, fs.readFileSync(objectFixture)); + const objectSnapshot = snapshot(objectEngine, objectHandle); + const object = objectSnapshot.nodes?.find((value) => value.id === "object:WebGapObject"); + assert.ok(object); + assert.equal(object.type, "EMPTY"); + assert.equal(object.visible, desktopEvidence.object.visible); + assert.equal(object.selectable, desktopEvidence.object.selectable); + assert.deepEqual(object.transform.translation.map((value) => Number(value.toFixed(6))), desktopEvidence.object.location); + object.transform.rotationEuler.forEach((value, index) => assert.ok(Math.abs(value - desktopEvidence.object.rotationEuler[index]) <= 1e-5)); + object.transform.scale.forEach((value, index) => assert.ok(Math.abs(value - desktopEvidence.object.scale[index]) <= 1e-5)); + assert.equal(object.parentId, null); + const saved = output(objectEngine, objectHandle, objectEngine._web_engine_save_blend, true); + const reopened = objectEngine._web_engine_create(); + open(objectEngine, reopened, saved); + assert.deepEqual(snapshot(objectEngine, reopened).nodes?.find((value) => value.id === object.id), object); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = objectEngine._malloc(malformed.byteLength); let malformedResult; + try { objectEngine.HEAPU8.set(malformed, malformedPointer); malformedResult = objectEngine._web_engine_open_blend(objectHandle, malformedPointer, malformed.byteLength); } finally { objectEngine._free(malformedPointer); } + assert.notEqual(malformedResult, 0); assert.deepEqual(snapshot(objectEngine, objectHandle), objectSnapshot); + objectEngine._web_engine_destroy(objectHandle); objectEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00017", operation: "OBJECT_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, objectFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, objectDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", objectId: object.id, type: object.type, translation: object.transform.translation, scale: object.transform.scale }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00018" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00017/object-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} object=${object.id} type=${object.type} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00018") { + const particleSettingsFixture = path.join(root, "tests/files/web/generated/M16-GAP-00018-datablock-ParticleSettings.blend"); + const particleSettingsDesktopPath = path.join(root, "tests/golden/M16-GAP-00018/particle-settings-desktop-report.json"); + fs.mkdirSync(path.dirname(particleSettingsDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-particle-settings-desktop.py"), "--", particleSettingsFixture, particleSettingsDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(particleSettingsDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const particleSettingsEngine = await factory({ wasmBinary }); + const particleSettingsHandle = particleSettingsEngine._web_engine_create(); + open(particleSettingsEngine, particleSettingsHandle, fs.readFileSync(particleSettingsFixture)); + const particleSettingsSnapshot = snapshot(particleSettingsEngine, particleSettingsHandle); + const particleSettings = particleSettingsSnapshot.particleSettings?.find((value) => value.id === "particle-settings:WebGapParticleSettings"); + assert.ok(particleSettings); + assert.deepEqual(particleSettings, desktopEvidence.particleSettings); + assert.equal(particleSettings.type, 0); + assert.equal(particleSettings.from, 0); + assert.equal(particleSettings.distribution, 0); + assert.equal(particleSettings.physicsType, 0); + assert.equal(particleSettings.totalParticles, 128); + assert.equal(particleSettings.start, 4); + assert.equal(particleSettings.end, 96); + assert.equal(particleSettings.lifetime, 32); + assert.equal(particleSettings.size, 0.125); + assert.equal(particleSettings.drawSize, 0.25); + const saved = output(particleSettingsEngine, particleSettingsHandle, particleSettingsEngine._web_engine_save_blend, true); + const reopened = particleSettingsEngine._web_engine_create(); + open(particleSettingsEngine, reopened, saved); + const after = snapshot(particleSettingsEngine, reopened).particleSettings?.find((value) => value.id === particleSettings.id); + assert.deepEqual(after, particleSettings); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = particleSettingsEngine._malloc(malformed.byteLength); + let malformedResult; + try { + particleSettingsEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = particleSettingsEngine._web_engine_open_blend(particleSettingsHandle, malformedPointer, malformed.byteLength); + } + finally { + particleSettingsEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(particleSettingsEngine, particleSettingsHandle), particleSettingsSnapshot); + particleSettingsEngine._web_engine_destroy(particleSettingsHandle); + particleSettingsEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00018", operation: "PARTICLE_SETTINGS_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, particleSettingsFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, particleSettingsDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", particleSettingsId: particleSettings.id, fields: { type: particleSettings.type, from: particleSettings.from, distribution: particleSettings.distribution, physicsType: particleSettings.physicsType, totalParticles: particleSettings.totalParticles, start: particleSettings.start, end: particleSettings.end, lifetime: particleSettings.lifetime, size: particleSettings.size, drawSize: particleSettings.drawSize } }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00019" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00018/particle-settings-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} particleSettings=${particleSettings.id} count=${particleSettings.totalParticles} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00019") { + const pointCloudFixture = path.join(root, "tests/files/web/generated/M16-GAP-00019-datablock-PointCloud.blend"); + const pointCloudDesktopPath = path.join(root, "tests/golden/M16-GAP-00019/pointcloud-desktop-report.json"); + fs.mkdirSync(path.dirname(pointCloudDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-pointcloud-desktop.py"), "--", pointCloudFixture, pointCloudDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(pointCloudDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const pointCloudEngine = await factory({ wasmBinary }); + const pointCloudHandle = pointCloudEngine._web_engine_create(); + open(pointCloudEngine, pointCloudHandle, fs.readFileSync(pointCloudFixture)); + const pointCloudSnapshot = snapshot(pointCloudEngine, pointCloudHandle); + const pointCloud = pointCloudSnapshot.nonMeshData?.find((value) => value.id === "pointcloud:WebGapPointCloud"); + assert.ok(pointCloud); + assert.equal(pointCloud.type, "POINT_CLOUD"); + assert.equal(pointCloud.geometryStatus, "available"); + assert.equal(pointCloud.pointCount, desktopEvidence.pointCloud.pointCount); + assert.deepEqual(pointCloud.controlPoints, desktopEvidence.pointCloud.controlPoints); + assert.deepEqual(pointCloud.radii, desktopEvidence.pointCloud.radii); + const saved = output(pointCloudEngine, pointCloudHandle, pointCloudEngine._web_engine_save_blend, true); + const reopened = pointCloudEngine._web_engine_create(); + open(pointCloudEngine, reopened, saved); + const after = snapshot(pointCloudEngine, reopened).nonMeshData?.find((value) => value.id === pointCloud.id); + assert.deepEqual(after, pointCloud); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = pointCloudEngine._malloc(malformed.byteLength); + let malformedResult; + try { + pointCloudEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = pointCloudEngine._web_engine_open_blend(pointCloudHandle, malformedPointer, malformed.byteLength); + } + finally { + pointCloudEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(pointCloudEngine, pointCloudHandle), pointCloudSnapshot); + pointCloudEngine._web_engine_destroy(pointCloudHandle); + pointCloudEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00019", operation: "POINT_CLOUD_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, pointCloudFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, pointCloudDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", pointCloudId: pointCloud.id, pointCount: pointCloud.pointCount, geometryStatus: pointCloud.geometryStatus, pointHash: crypto.createHash("sha256").update(JSON.stringify(pointCloud.controlPoints)).digest("hex"), radiusHash: crypto.createHash("sha256").update(JSON.stringify(pointCloud.radii)).digest("hex") }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00020" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00019/pointcloud-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} pointCloud=${pointCloud.id} points=${pointCloud.pointCount} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00020") { + const sceneFixture = path.join(root, "tests/files/web/generated/M16-GAP-00020-datablock-Scene.blend"); + const sceneDesktopPath = path.join(root, "tests/golden/M16-GAP-00020/scene-desktop-report.json"); + fs.mkdirSync(path.dirname(sceneDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-scene-desktop.py"), "--", sceneFixture, sceneDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(sceneDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const sceneEngine = await factory({ wasmBinary }); + const sceneHandle = sceneEngine._web_engine_create(); + open(sceneEngine, sceneHandle, fs.readFileSync(sceneFixture)); + const sceneSnapshot = snapshot(sceneEngine, sceneHandle); + const scene = sceneSnapshot.scenes?.find((value) => value.id === "scene:WebGapScene"); + assert.ok(scene); + const expected = desktopEvidence.scene; + assert.equal(scene.name, expected.name); + assert.equal(scene.renderEngine, expected.renderEngine); + assert.equal(sceneSnapshot.frame.current, expected.frameCurrent); + assert.equal(sceneSnapshot.frame.start, expected.frameStart); + assert.equal(sceneSnapshot.frame.end, expected.frameEnd); + assert.equal(sceneSnapshot.coordinateSystem.unitSystem, expected.unitSystem); + assert.equal(sceneSnapshot.coordinateSystem.unitScale, expected.unitScale); + assert.equal(sceneSnapshot.scenes.length, 1); + assert.equal(scene.id, expected.id); + const saved = output(sceneEngine, sceneHandle, sceneEngine._web_engine_save_blend, true); + const reopened = sceneEngine._web_engine_create(); + open(sceneEngine, reopened, saved); + assert.deepEqual(snapshot(sceneEngine, reopened).scenes, sceneSnapshot.scenes); + assert.deepEqual(snapshot(sceneEngine, reopened).frame, sceneSnapshot.frame); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = sceneEngine._malloc(malformed.byteLength); + let malformedResult; + try { + sceneEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = sceneEngine._web_engine_open_blend(sceneHandle, malformedPointer, malformed.byteLength); + } + finally { + sceneEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(sceneEngine, sceneHandle), sceneSnapshot); + sceneEngine._web_engine_destroy(sceneHandle); + sceneEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00020", operation: "SCENE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, sceneFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, sceneDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", sceneId: scene.id, frame: sceneSnapshot.frame, renderEngine: scene.renderEngine, unitSystem: sceneSnapshot.coordinateSystem.unitSystem, unitScale: sceneSnapshot.coordinateSystem.unitScale }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00021" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00020/scene-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} scene=${scene.id} frames=${sceneSnapshot.frame.start}-${sceneSnapshot.frame.end} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00021") { + const screenFixture = path.join(root, "tests/files/web/generated/M16-GAP-00021-datablock-Screen.blend"); + const screenDesktopPath = path.join(root, "tests/golden/M16-GAP-00021/screen-desktop-report.json"); + fs.mkdirSync(path.dirname(screenDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-screen-desktop.py"), "--", screenFixture, screenDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(screenDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const screenEngine = await factory({ wasmBinary }); + const screenHandle = screenEngine._web_engine_create(); + open(screenEngine, screenHandle, fs.readFileSync(screenFixture)); + const screenSnapshot = snapshot(screenEngine, screenHandle); + assert.equal(screenSnapshot.editorWorkflowStatus, "AVAILABLE"); + const workflow = screenSnapshot.editorWorkflow; + const desktopEditors = desktopEvidence.screen.editors.map((editor) => ({DOPESHEET_EDITOR: "DOPE_SHEET", VIEW_3D: "VIEW_3D", OUTLINER: "OUTLINER", PROPERTIES: "PROPERTIES"}[editor] ?? editor)).sort(); + const matchingWorkspace = workflow.workspaces.find((value) => value.areas.length === desktopEvidence.screen.areaCount && value.areas.map((area) => area.editor).sort().join(",") === desktopEditors.join(",")); + assert.ok(matchingWorkspace); + assert.ok(matchingWorkspace.areas.reduce((count, area) => count + area.regions.length, 0) <= desktopEvidence.screen.regionCount); + const saved = output(screenEngine, screenHandle, screenEngine._web_engine_save_blend, true); + const reopened = screenEngine._web_engine_create(); + open(screenEngine, reopened, saved); + assert.deepEqual(snapshot(screenEngine, reopened).editorWorkflow, screenSnapshot.editorWorkflow); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = screenEngine._malloc(malformed.byteLength); + let malformedResult; + try { + screenEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = screenEngine._web_engine_open_blend(screenHandle, malformedPointer, malformed.byteLength); + } + finally { + screenEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(screenEngine, screenHandle), screenSnapshot); + screenEngine._web_engine_destroy(screenHandle); + screenEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00021", operation: "SCREEN_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, screenFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, screenDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", workflowStatus: screenSnapshot.editorWorkflowStatus, workspaceId: matchingWorkspace.id, areaCount: matchingWorkspace.areas.length, editorTypes: matchingWorkspace.areas.map((area) => area.editor).sort() }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00022" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00021/screen-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} screen=${desktopEvidence.screen.id} areas=${matchingWorkspace.areas.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00022") { + const soundFixture = path.join(root, "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend"); + const soundDesktopPath = path.join(root, "tests/golden/M16-GAP-00022/sound-desktop-report.json"); + fs.mkdirSync(path.dirname(soundDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-sound-desktop.py"), "--", soundFixture, soundDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(soundDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const soundEngine = await factory({ wasmBinary }); + const soundHandle = soundEngine._web_engine_create(); + open(soundEngine, soundHandle, fs.readFileSync(soundFixture)); + const soundSnapshot = snapshot(soundEngine, soundHandle); + const sound = soundSnapshot.sounds?.find((value) => value.id === "sound:WebGapSound"); + assert.ok(sound); + assert.deepEqual(sound, desktopEvidence.sound); + const saved = output(soundEngine, soundHandle, soundEngine._web_engine_save_blend, true); + assert.ok(saved.byteLength > 0); + const reopened = soundEngine._web_engine_create(); + open(soundEngine, reopened, saved); + const after = snapshot(soundEngine, reopened).sounds?.find((value) => value.id === sound.id); + assert.deepEqual(after, sound); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = soundEngine._malloc(malformed.byteLength); + let malformedResult; + try { + soundEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = soundEngine._web_engine_open_blend(soundHandle, malformedPointer, malformed.byteLength); + } + finally { + soundEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(soundEngine, soundHandle), soundSnapshot); + soundEngine._web_engine_destroy(soundHandle); + soundEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00022", operation: "SOUND_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, soundFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, soundDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", soundId: sound.id, sourcePath: sound.sourcePath, packed: sound.packed, volume: sound.volume, pitch: sound.pitch, audioChannels: sound.audioChannels, sampleRate: sound.sampleRate }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00023" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00022/sound-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} sound=${sound.id} sampleRate=${sound.sampleRate} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00023") { + const speakerFixture = path.join(root, "tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend"); + const speakerDesktopPath = path.join(root, "tests/golden/M16-GAP-00023/speaker-desktop-report.json"); + fs.mkdirSync(path.dirname(speakerDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-speaker-desktop.py"), "--", speakerFixture, speakerDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(speakerDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const speakerEngine = await factory({ wasmBinary }); + const speakerHandle = speakerEngine._web_engine_create(); + open(speakerEngine, speakerHandle, fs.readFileSync(speakerFixture)); + const speakerSnapshot = snapshot(speakerEngine, speakerHandle); + const speaker = speakerSnapshot.speakers?.find((value) => value.id === "speaker:WebGapSpeaker"); + assert.ok(speaker); + assert.deepEqual(speaker, desktopEvidence.speaker); + const saved = output(speakerEngine, speakerHandle, speakerEngine._web_engine_save_blend, true); + assert.ok(saved.byteLength > 0); + const reopened = speakerEngine._web_engine_create(); + open(speakerEngine, reopened, saved); + const after = snapshot(speakerEngine, reopened).speakers?.find((value) => value.id === speaker.id); + assert.deepEqual(after, speaker); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = speakerEngine._malloc(malformed.byteLength); + let malformedResult; + try { + speakerEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = speakerEngine._web_engine_open_blend(speakerHandle, malformedPointer, malformed.byteLength); + } + finally { + speakerEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(speakerEngine, speakerHandle), speakerSnapshot); + speakerEngine._web_engine_destroy(speakerHandle); + speakerEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00023", operation: "SPEAKER_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, speakerFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, speakerDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", speakerId: speaker.id, soundId: speaker.soundId, volumeMax: speaker.volumeMax, volumeMin: speaker.volumeMin, distanceMax: speaker.distanceMax, distanceReference: speaker.distanceReference, attenuation: speaker.attenuation, coneAngleOuter: speaker.coneAngleOuter, coneAngleInner: speaker.coneAngleInner, coneVolumeOuter: speaker.coneVolumeOuter, volume: speaker.volume, pitch: speaker.pitch }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00024" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00023/speaker-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} speaker=${speaker.id} volume=${speaker.volume} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00024") { + const textFixture = path.join(root, "tests/files/web/generated/M16-GAP-00024-datablock-Text.blend"); + const textDesktopPath = path.join(root, "tests/golden/M16-GAP-00024/text-desktop-report.json"); + fs.mkdirSync(path.dirname(textDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-text-desktop.py"), "--", textFixture, textDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(textDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const textEngine = await factory({ wasmBinary }); + const textHandle = textEngine._web_engine_create(); + open(textEngine, textHandle, fs.readFileSync(textFixture)); + const textSnapshot = snapshot(textEngine, textHandle); + const text = textSnapshot.texts?.find((value) => value.id === "text:WebGapText"); + assert.ok(text); + assert.deepEqual(text, desktopEvidence.text); + const saved = output(textEngine, textHandle, textEngine._web_engine_save_blend, true); + assert.ok(saved.byteLength > 0); + const reopened = textEngine._web_engine_create(); + open(textEngine, reopened, saved); + const after = snapshot(textEngine, reopened).texts?.find((value) => value.id === text.id); + assert.deepEqual(after, text); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = textEngine._malloc(malformed.byteLength); + let malformedResult; + try { + textEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = textEngine._web_engine_open_blend(textHandle, malformedPointer, malformed.byteLength); + } + finally { + textEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(textEngine, textHandle), textSnapshot); + textEngine._web_engine_destroy(textHandle); + textEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00024", operation: "TEXT_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, textFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, textDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", textId: text.id, sourceSha256: text.sourceSha256, byteLength: text.byteLength, lineCount: text.lineCount, sourcePath: text.sourcePath, internal: text.internal, isDirty: text.isDirty, useModule: text.useModule }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00025" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00024/text-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} text=${text.id} bytes=${text.byteLength} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00025") { + const textureFixture = path.join(root, "tests/files/web/generated/M16-GAP-00025-datablock-Texture.blend"); + const textureDesktopPath = path.join(root, "tests/golden/M16-GAP-00025/texture-desktop-report.json"); + fs.mkdirSync(path.dirname(textureDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-texture-desktop.py"), "--", textureFixture, textureDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(textureDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const textureEngine = await factory({ wasmBinary }); + const textureHandle = textureEngine._web_engine_create(); + open(textureEngine, textureHandle, fs.readFileSync(textureFixture)); + const textureSnapshot = snapshot(textureEngine, textureHandle); + const texture = textureSnapshot.textures?.find((value) => value.id === "texture:WebGapTexture"); + assert.ok(texture); + assert.equal(texture.type, 1); + assert.deepEqual(texture, desktopEvidence.texture); + const saved = output(textureEngine, textureHandle, textureEngine._web_engine_save_blend, true); + assert.ok(saved.byteLength > 0); + const reopened = textureEngine._web_engine_create(); + open(textureEngine, reopened, saved); + const after = snapshot(textureEngine, reopened).textures?.find((value) => value.id === texture.id); + assert.deepEqual(after, texture); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = textureEngine._malloc(malformed.byteLength); + let malformedResult; + try { + textureEngine.HEAPU8.set(malformed, malformedPointer); + malformedResult = textureEngine._web_engine_open_blend(textureHandle, malformedPointer, malformed.byteLength); + } + finally { + textureEngine._free(malformedPointer); + } + assert.notEqual(malformedResult, 0); + assert.deepEqual(snapshot(textureEngine, textureHandle), textureSnapshot); + textureEngine._web_engine_destroy(textureHandle); + textureEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00025", operation: "TEXTURE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, textureFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, textureDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", textureId: texture.id, type: texture.type, noiseScale: texture.noiseScale, noiseDepth: texture.noiseDepth, intensity: texture.intensity, contrast: texture.contrast, saturation: texture.saturation }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00026" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00025/texture-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} texture=${texture.id} type=${texture.type} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00026") { + const volumeFixture = path.join(root, "tests/files/web/generated/M16-GAP-00026-datablock-Volume.blend"); + const volumeDesktopPath = path.join(root, "tests/golden/M16-GAP-00026/volume-desktop-report.json"); + fs.mkdirSync(path.dirname(volumeDesktopPath), { recursive: true }); + const desktopRun = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-volume-desktop.py"), "--", volumeFixture, volumeDesktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(desktopRun.status, 0, `${desktopRun.stdout ?? ""}\n${desktopRun.stderr ?? ""}`); + const desktopEvidence = JSON.parse(fs.readFileSync(volumeDesktopPath, "utf8")); + assert.equal(desktopEvidence.saveReopen, "EXACT"); + const volumeEngine = await factory({ wasmBinary }); + const volumeHandle = volumeEngine._web_engine_create(); + open(volumeEngine, volumeHandle, fs.readFileSync(volumeFixture)); + const volumeSnapshot = snapshot(volumeEngine, volumeHandle); + const volume = volumeSnapshot.nonMeshData?.find((value) => value.id === "volume:WebGapVolume"); + assert.ok(volume); + assert.equal(volume.geometryStatus, "blocked"); + assert.deepEqual({ id: volume.id, name: volume.name, sourcePath: volume.sourcePath, volumeProperties: volume.volumeProperties }, { id: desktopEvidence.volume.id, name: desktopEvidence.volume.name, sourcePath: desktopEvidence.volume.sourcePath, volumeProperties: { displayDensity: desktopEvidence.volume.displayDensity, interpolation: desktopEvidence.volume.interpolation, stepSize: desktopEvidence.volume.stepSize, velocityGrid: desktopEvidence.volume.velocityGrid, velocityScale: desktopEvidence.volume.velocityScale } }); + const saved = output(volumeEngine, volumeHandle, volumeEngine._web_engine_save_blend, true); + const reopened = volumeEngine._web_engine_create(); + open(volumeEngine, reopened, saved); + const after = snapshot(volumeEngine, reopened).nonMeshData?.find((value) => value.id === volume.id); + assert.deepEqual(after, volume); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const malformedPointer = volumeEngine._malloc(malformed.byteLength); let malformedResult; + try { volumeEngine.HEAPU8.set(malformed, malformedPointer); malformedResult = volumeEngine._web_engine_open_blend(volumeHandle, malformedPointer, malformed.byteLength); } finally { volumeEngine._free(malformedPointer); } + assert.notEqual(malformedResult, 0); assert.deepEqual(snapshot(volumeEngine, volumeHandle), volumeSnapshot); + volumeEngine._web_engine_destroy(volumeHandle); volumeEngine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00026", operation: "VOLUME_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, volumeFixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, volumeDesktopPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", volumeId: volume.id, geometryStatus: volume.geometryStatus, sourcePath: volume.sourcePath, volumeProperties: volume.volumeProperties }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00027" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00026/volume-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} volume=${volume.id} density=${volume.volumeProperties.displayDensity} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00028") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00028-datablock-WorkSpace.blend"); const desktopPath = path.join(root, "tests/golden/M16-GAP-00028/workspace-desktop-report.json"); fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-workspace-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, fs.readFileSync(fixture)); const before = snapshot(engine, handle); const workspace = before.workspaces?.find((value) => value.id === "workspace:WebGapWorkspace"); assert.ok(workspace); assert.deepEqual(workspace, desktop.workspace); + const saved = output(engine, handle, engine._web_engine_save_blend, true); const reopened = engine._web_engine_create(); open(engine, reopened, saved); assert.deepEqual(snapshot(engine, reopened).workspaces?.find((value) => value.id === workspace.id), workspace); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); const pointer = engine._malloc(malformed.byteLength); let result; try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } finally { engine._free(pointer); } assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00028", operation: "WORKSPACE_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", workspace: workspace }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00029" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00028/workspace-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} workspace=${workspace.id} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00029") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00029-datablock-World.blend"); const desktopPath = path.join(root, "tests/golden/M16-GAP-00029/world-desktop-report.json"); fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-world-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, fs.readFileSync(fixture)); const before = snapshot(engine, handle); const world = before.worlds?.find((value) => value.id === "world:WebGapWorld"); assert.ok(world); assert.deepEqual(world, desktop.world); + const saved = output(engine, handle, engine._web_engine_save_blend, true); const reopened = engine._web_engine_create(); open(engine, reopened, saved); assert.deepEqual(snapshot(engine, reopened).worlds?.find((value) => value.id === world.id), world); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); const pointer = engine._malloc(malformed.byteLength); let result; try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } finally { engine._free(pointer); } assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00029", operation: "WORLD_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", world: world }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00030" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00029/world-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} world=${world.id} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00030") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00030-modifier-ARMATURE.blend"); + const desktopPath = path.join(root, "tests/golden/M16-GAP-00030/armature-modifier-desktop-report.json"); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-armature-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); + const handle = engine._web_engine_create(); + open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); + const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); + assert.ok(mesh); + const modifier = mesh.modifierStack?.find((value) => value.type === "ARMATURE"); + assert.ok(modifier); + assert.equal(modifier.name, desktop.modifier.modifier.name); + assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); + assert.equal(modifier.parameters.armatureObjectId, desktop.modifier.armatureObjectId); + assert.equal(modifier.parameters.vertexGroup, desktop.modifier.modifier.vertexGroup); + assert.equal(modifier.parameters.deformFlags, 1); + assert.ok(modifier.dependsOn.includes(desktop.modifier.armatureObjectId)); + assert.equal(modifier.enabled, desktop.modifier.modifier.enabled); + assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); + assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); + assert.equal(modifier.showEditMode, desktop.modifier.modifier.showEditMode); + assert.equal(modifier.showOnCage, desktop.modifier.modifier.showOnCage); + const saved = output(engine, handle, engine._web_engine_save_blend, true); + const reopened = engine._web_engine_create(); + open(engine, reopened, saved); + const after = snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id); + assert.deepEqual(after?.modifierStack, mesh.modifierStack); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const pointer = engine._malloc(malformed.byteLength); + let result; + try { + engine.HEAPU8.set(malformed, pointer); + result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); + } + finally { + engine._free(pointer); + } + assert.notEqual(result, 0); + assert.deepEqual(snapshot(engine, handle), before); + engine._web_engine_destroy(handle); + engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00030", operation: "ARMATURE_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier: modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00031" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00030/armature-modifier-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00031") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00031-modifier-ARRAY.blend"); + const desktopPath = path.join(root, "tests/golden/M16-GAP-00031/array-modifier-desktop-report.json"); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-array-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); + const handle = engine._web_engine_create(); + open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); + const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); + assert.ok(mesh); + const modifier = mesh.modifierStack?.find((value) => value.type === "ARRAY"); + assert.ok(modifier); + assert.equal(modifier.name, desktop.modifier.modifier.name); + assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); + assert.equal(modifier.parameters.count, desktop.modifier.modifier.count); + assert.deepEqual(modifier.parameters.targetObjectIds, [desktop.modifier.modifier.startCapObjectId, desktop.modifier.modifier.endCapObjectId]); + assert.ok(modifier.dependsOn.includes(desktop.modifier.modifier.startCapObjectId)); + assert.ok(modifier.dependsOn.includes(desktop.modifier.modifier.endCapObjectId)); + assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); + assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); + assert.equal(modifier.showEditMode, desktop.modifier.modifier.showEditMode); + assert.equal(modifier.showOnCage, desktop.modifier.modifier.showOnCage); + const saved = output(engine, handle, engine._web_engine_save_blend, true); + const reopened = engine._web_engine_create(); + open(engine, reopened, saved); + assert.deepEqual(snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id)?.modifierStack, mesh.modifierStack); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const pointer = engine._malloc(malformed.byteLength); + let result; + try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } + finally { engine._free(pointer); } + assert.notEqual(result, 0); + assert.deepEqual(snapshot(engine, handle), before); + engine._web_engine_destroy(handle); + engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00031", operation: "ARRAY_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier: modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00032" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00031/array-modifier-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} count=${modifier.parameters.count} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00032") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00032-modifier-BEVEL.blend"); + const desktopPath = path.join(root, "tests/golden/M16-GAP-00032/bevel-modifier-desktop-report.json"); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-bevel-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); + const handle = engine._web_engine_create(); + open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); + const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); + assert.ok(mesh); + const modifier = mesh.modifierStack?.find((value) => value.type === "BEVEL"); + assert.ok(modifier); + assert.equal(modifier.name, desktop.modifier.modifier.name); + assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); + assert.ok(Math.abs(modifier.parameters.width - desktop.modifier.modifier.width) < 1e-5); + assert.equal(modifier.parameters.segments, desktop.modifier.modifier.segments); + assert.ok(Math.abs(modifier.parameters.profile - desktop.modifier.modifier.profile) < 1e-5); + assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); + assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); + assert.equal(modifier.showEditMode, desktop.modifier.modifier.showEditMode); + assert.equal(modifier.showOnCage, desktop.modifier.modifier.showOnCage); + const saved = output(engine, handle, engine._web_engine_save_blend, true); + const reopened = engine._web_engine_create(); + open(engine, reopened, saved); + assert.deepEqual(snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id)?.modifierStack, mesh.modifierStack); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const pointer = engine._malloc(malformed.byteLength); + let result; + try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } + finally { engine._free(pointer); } + assert.notEqual(result, 0); + assert.deepEqual(snapshot(engine, handle), before); + engine._web_engine_destroy(handle); + engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00032", operation: "BEVEL_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier: modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00033" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00032/bevel-modifier-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} width=${modifier.parameters.width} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00033") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00033-modifier-BOOLEAN.blend"); + const desktopPath = path.join(root, "tests/golden/M16-GAP-00033/boolean-modifier-desktop-report.json"); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-boolean-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); + const handle = engine._web_engine_create(); + open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); + const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); + assert.ok(mesh); + const modifier = mesh.modifierStack?.find((value) => value.type === "BOOLEAN"); + assert.ok(modifier); + assert.equal(modifier.name, desktop.modifier.modifier.name); + assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); + assert.equal(modifier.parameters.operation, 2); + assert.equal(modifier.parameters.solver, 1); + assert.equal(modifier.parameters.targetObjectIds[0], desktop.modifier.modifier.targetObjectId); + assert.ok(modifier.dependsOn.includes(desktop.modifier.modifier.targetObjectId)); + assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); + assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); + assert.equal(modifier.showEditMode, desktop.modifier.modifier.showEditMode); + assert.equal(modifier.showOnCage, desktop.modifier.modifier.showOnCage); + const saved = output(engine, handle, engine._web_engine_save_blend, true); + const reopened = engine._web_engine_create(); + open(engine, reopened, saved); + assert.deepEqual(snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id)?.modifierStack, mesh.modifierStack); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const pointer = engine._malloc(malformed.byteLength); + let result; + try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } + finally { engine._free(pointer); } + assert.notEqual(result, 0); + assert.deepEqual(snapshot(engine, handle), before); + engine._web_engine_destroy(handle); + engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00033", operation: "BOOLEAN_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier: modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00034" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00033/boolean-modifier-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} operation=${modifier.parameters.operation} desktop=exact saveReopen=exact next=${report.nextTask}\n`); + process.exit(0); +} +if (task === "M16-GAP-00034") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00034-modifier-BUILD.blend"); + const desktopPath = path.join(root, "tests/golden/M16-GAP-00034/build-modifier-desktop-report.json"); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-build-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); + const handle = engine._web_engine_create(); + open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); + const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); + assert.ok(mesh); + const modifier = mesh.modifierStack?.find((value) => value.type === "BUILD"); + assert.ok(modifier); + assert.equal(modifier.name, desktop.modifier.modifier.name); + assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); + assert.ok(Math.abs(modifier.parameters.start - desktop.modifier.modifier.start) < 1e-5); + assert.ok(Math.abs(modifier.parameters.length - desktop.modifier.modifier.length) < 1e-5); + assert.equal(modifier.parameters.flag, 5); + assert.equal(modifier.parameters.seed, desktop.modifier.modifier.seed); + assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); + assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); + assert.equal(modifier.showEditMode, desktop.modifier.modifier.showEditMode); + assert.equal(modifier.showOnCage, desktop.modifier.modifier.showOnCage); + const saved = output(engine, handle, engine._web_engine_save_blend, true); + const reopened = engine._web_engine_create(); + open(engine, reopened, saved); + assert.deepEqual(snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id)?.modifierStack, mesh.modifierStack); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); + const pointer = engine._malloc(malformed.byteLength); let result; + try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } + finally { engine._free(pointer); } + assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); + engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00034", operation: "BUILD_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier: modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00035" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00034/build-modifier-local-exact-report.json"); + fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); + process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} start=${modifier.parameters.start} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00035") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00035-modifier-CAST.blend"); const desktopPath = path.join(root, "tests/golden/M16-GAP-00035/cast-modifier-desktop-report.json"); fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-cast-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, fs.readFileSync(fixture)); const before = snapshot(engine, handle); const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); assert.ok(mesh); const modifier = mesh.modifierStack?.find((value) => value.type === "CAST"); assert.ok(modifier); assert.equal(modifier.name, desktop.modifier.modifier.name); assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); assert.ok(Math.abs(modifier.parameters.factor - desktop.modifier.modifier.factor) < 1e-5); assert.ok(Math.abs(modifier.parameters.radius - desktop.modifier.modifier.radius) < 1e-5); assert.equal(modifier.parameters.mode, 3); assert.equal(modifier.parameters.flag, 5); assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); const saved = output(engine, handle, engine._web_engine_save_blend, true); const reopened = engine._web_engine_create(); open(engine, reopened, saved); assert.deepEqual(snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id)?.modifierStack, mesh.modifierStack); const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); const pointer = engine._malloc(malformed.byteLength); let result; try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } finally { engine._free(pointer); } assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00035", operation: "CAST_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00036" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00035/cast-modifier-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} factor=${modifier.parameters.factor} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00036") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00036-modifier-CLOTH.blend"); const desktopPath = path.join(root, "tests/golden/M16-GAP-00036/cloth-modifier-desktop-report.json"); fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-cloth-modifier-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, fs.readFileSync(fixture)); const before = snapshot(engine, handle); const mesh = before.meshes?.find((value) => value.id === desktop.modifier.meshId); assert.ok(mesh); const modifier = mesh.modifierStack?.find((value) => value.type === "CLOTH"); assert.ok(modifier); assert.equal(modifier.name, desktop.modifier.modifier.name); assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); const saved = output(engine, handle, engine._web_engine_save_blend, true); const reopened = engine._web_engine_create(); open(engine, reopened, saved); assert.deepEqual(snapshot(engine, reopened).meshes?.find((value) => value.id === mesh.id)?.modifierStack, mesh.modifierStack); const malformed = new Uint8Array([0x42,0x4c,0x45,0x4e,0x44,0x45,0x52]); const pointer = engine._malloc(malformed.byteLength); let result; try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } finally { engine._free(pointer); } assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00036", operation: "CLOTH_MODIFIER_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", meshId: mesh.id, modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00037" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00036/cloth-modifier-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00037") { + const fixture=path.join(root,"tests/files/web/generated/M16-GAP-00037-modifier-COLLISION.blend"), desktopPath=path.join(root,"tests/golden/M16-GAP-00037/collision-modifier-desktop-report.json"); fs.mkdirSync(path.dirname(desktopPath),{recursive:true}); const run=spawnSync(process.env.BLENDER_BIN??path.join(root,"build_blender_5.2.0/bin/blender"),["-b","--factory-startup","--python",path.join(root,"tools/web/check-collision-modifier-desktop.py"),"--",fixture,desktopPath],{cwd:root,encoding:"utf8",maxBuffer:8*1024*1024}); assert.equal(run.status,0,`${run.stdout??""}\n${run.stderr??""}`); const desktop=JSON.parse(fs.readFileSync(desktopPath,"utf8")); const engine=await factory({wasmBinary}); const handle=engine._web_engine_create(); open(engine,handle,fs.readFileSync(fixture)); const before=snapshot(engine,handle); const mesh=before.meshes?.find(v=>v.id===desktop.modifier.meshId); assert.ok(mesh); const modifier=mesh.modifierStack?.find(v=>v.type==="COLLISION"); assert.ok(modifier); assert.equal(modifier.name,desktop.modifier.modifier.name); assert.equal(modifier.parameters.typeCode,desktop.modifier.modifier.typeCode); assert.equal(modifier.showViewport,desktop.modifier.modifier.showViewport); assert.equal(modifier.showRender,desktop.modifier.modifier.showRender); const saved=output(engine,handle,engine._web_engine_save_blend,true), reopened=engine._web_engine_create(); open(engine,reopened,saved); assert.deepEqual(snapshot(engine,reopened).meshes?.find(v=>v.id===mesh.id)?.modifierStack,mesh.modifierStack); const malformed=new Uint8Array([0x42,0x4c,0x45,0x4e,0x44,0x45,0x52]), pointer=engine._malloc(malformed.byteLength); let result; try{engine.HEAPU8.set(malformed,pointer); result=engine._web_engine_open_blend(handle,pointer,malformed.byteLength)}finally{engine._free(pointer)} assert.notEqual(result,0); assert.deepEqual(snapshot(engine,handle),before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); const report={schemaVersion:1,task:"M16-GAP-00037",operation:"COLLISION_MODIFIER_LOCAL_EXACT",fixture:{path:path.relative(root,fixture).replaceAll(path.sep,"/"),sha256:desktop.fixtureSha256},desktop:{status:"EXACT",report:path.relative(root,desktopPath).replaceAll(path.sep,"/"),saveReopen:desktop.saveReopen},wasm:{status:"EXACT",meshId:mesh.id,modifier},saveReopen:"EXACT",negative:{malformedBlend:"REJECTED_WITHOUT_MAIN_MUTATION"},nextTask:"M16-GAP-00038"}; const reportPath=path.join(root,"tests/golden/M16-GAP-00037/collision-modifier-local-exact-report.json"); fs.writeFileSync(reportPath,`${JSON.stringify(report,null,2)}\n`); process.stdout.write(`generated-gap-ok task=${task} mesh=${mesh.id} modifier=${modifier.name} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +const genericModifierTasks = { + "M16-GAP-00038": { type: "CORRECTIVE_SMOOTH", stem: "WebGapCorrectiveSmooth", nextTask: "M16-GAP-00039" }, + "M16-GAP-00039": { type: "CURVE", stem: "WebGapCurveModifier", nextTask: "M16-GAP-00040" }, + "M16-GAP-00040": { type: "DATA_TRANSFER", stem: "WebGapDataTransfer", nextTask: "M16-GAP-00041" }, + "M16-GAP-00041": { type: "DECIMATE", stem: "WebGapDecimate", nextTask: "M16-GAP-00042" }, + "M16-GAP-00042": { type: "DISPLACE", stem: "WebGapDisplace", nextTask: "M16-GAP-00043" }, + "M16-GAP-00043": { type: "DYNAMIC_PAINT", stem: "WebGapDynamicPaint", nextTask: "M16-GAP-00044" }, + "M16-GAP-00044": { type: "EDGE_SPLIT", stem: "WebGapEdgeSplit", nextTask: "M16-GAP-00045" }, + "M16-GAP-00045": { type: "EXPLODE", stem: "WebGapExplode", nextTask: "M16-GAP-00046" }, + "M16-GAP-00046": { type: "FLUID", stem: "WebGapFluid", nextTask: "M16-GAP-00047" }, + "M16-GAP-00047": { type: "GREASE_PENCIL_ARMATURE", stem: "WebGapGreasePencilArmature", objectName: "GreasePencilObject", nextTask: "M16-GAP-00048" }, + "M16-GAP-00048": { type: "GREASE_PENCIL_ARRAY", stem: "WebGapGreasePencilArray", objectName: "GreasePencilObject", nextTask: "M16-GAP-00049" }, + "M16-GAP-00049": { type: "GREASE_PENCIL_BUILD", stem: "WebGapGreasePencilBuild", objectName: "GreasePencilObject", nextTask: "M16-GAP-00050" }, + "M16-GAP-00050": { type: "GREASE_PENCIL_COLOR", stem: "WebGapGreasePencilColor", objectName: "GreasePencilObject", nextTask: "M16-GAP-00051" }, + "M16-GAP-00051": { type: "GREASE_PENCIL_DASH", stem: "WebGapGreasePencilDash", objectName: "GreasePencilObject", nextTask: "M16-GAP-00052" }, + "M16-GAP-00052": { type: "GREASE_PENCIL_ENVELOPE", stem: "WebGapGreasePencilEnvelope", objectName: "GreasePencilObject", nextTask: "M16-GAP-00053" }, + "M16-GAP-00053": { type: "GREASE_PENCIL_HOOK", stem: "WebGapGreasePencilHook", objectName: "GreasePencilObject", nextTask: "M16-GAP-00054" }, + "M16-GAP-00054": { type: "GREASE_PENCIL_LATTICE", stem: "WebGapGreasePencilLattice", objectName: "GreasePencilObject", nextTask: "M16-GAP-00055" }, + "M16-GAP-00055": { type: "GREASE_PENCIL_LENGTH", stem: "WebGapGreasePencilLength", objectName: "GreasePencilObject", nextTask: "M16-GAP-00056" }, + "M16-GAP-00056": { type: "GREASE_PENCIL_MIRROR", stem: "WebGapGreasePencilMirror", objectName: "GreasePencilObject", nextTask: "M16-GAP-00057" }, + "M16-GAP-00057": { type: "GREASE_PENCIL_MULTIPLY", stem: "WebGapGreasePencilMultiply", objectName: "GreasePencilObject", nextTask: "M16-GAP-00058" }, + "M16-GAP-00058": { type: "GREASE_PENCIL_NOISE", stem: "WebGapGreasePencilNoise", objectName: "GreasePencilObject", nextTask: "M16-GAP-00059" }, + "M16-GAP-00059": { type: "GREASE_PENCIL_OFFSET", stem: "WebGapGreasePencilOffset", objectName: "GreasePencilObject", nextTask: "M16-GAP-00060" }, + "M16-GAP-00060": { type: "GREASE_PENCIL_OPACITY", stem: "WebGapGreasePencilOpacity", objectName: "GreasePencilObject", nextTask: "M16-GAP-00061" }, + "M16-GAP-00061": { type: "GREASE_PENCIL_OUTLINE", stem: "WebGapGreasePencilOutline", objectName: "GreasePencilObject", nextTask: "M16-GAP-00062" }, + "M16-GAP-00062": { type: "GREASE_PENCIL_SHRINKWRAP", stem: "WebGapGreasePencilShrinkwrap", objectName: "GreasePencilObject", nextTask: "M16-GAP-00063" }, + "M16-GAP-00063": { type: "GREASE_PENCIL_SIMPLIFY", stem: "WebGapGreasePencilSimplify", objectName: "GreasePencilObject", nextTask: "M16-GAP-00064" }, + "M16-GAP-00064": { type: "GREASE_PENCIL_SMOOTH", stem: "WebGapGreasePencilSmooth", objectName: "GreasePencilObject", nextTask: "M16-GAP-00065" }, + "M16-GAP-00065": { type: "GREASE_PENCIL_SUBDIV", stem: "WebGapGreasePencilSubdiv", objectName: "GreasePencilObject", nextTask: "M16-GAP-00066" }, + "M16-GAP-00066": { type: "GREASE_PENCIL_TEXTURE", stem: "WebGapGreasePencilTexture", objectName: "GreasePencilObject", nextTask: "M16-GAP-00067" }, + "M16-GAP-00067": { type: "GREASE_PENCIL_THICKNESS", stem: "WebGapGreasePencilThickness", objectName: "GreasePencilObject", nextTask: "M16-GAP-00068" }, + "M16-GAP-00068": { type: "GREASE_PENCIL_TIME", stem: "WebGapGreasePencilTime", objectName: "GreasePencilObject", nextTask: "M16-GAP-00069" }, + "M16-GAP-00069": { type: "GREASE_PENCIL_TINT", stem: "WebGapGreasePencilTint", objectName: "GreasePencilObject", nextTask: "M16-GAP-00070" }, + "M16-GAP-00070": { type: "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE", stem: "WebGapGreasePencilVertexWeightAngle", objectName: "GreasePencilObject", nextTask: "M16-GAP-00071" }, + "M16-GAP-00071": { type: "GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY", stem: "WebGapGreasePencilVertexWeightProximity", objectName: "GreasePencilObject", nextTask: "M16-GAP-00072" }, +}; +if (genericModifierTasks[task]) { + const config = genericModifierTasks[task]; + const fixture = path.join(root, `tests/files/web/generated/${task}-modifier-${config.type}.blend`); + const desktopPath = path.join(root, `tests/golden/${task}/${config.type.toLowerCase().replaceAll("_", "-")}-modifier-desktop-report.json`); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-generic-modifier-desktop.py"), "--", fixture, desktopPath, task, config.type, config.objectName ?? `${config.stem}Object`], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); const mesh = desktop.modifier.meshId ? before.meshes?.find((value) => value.id === desktop.modifier.meshId) : null; const node = desktop.modifier.objectId ? before.nodes?.find((value) => value.id === desktop.modifier.objectId) : null; const holder = mesh ?? node; assert.ok(holder); + const modifier = holder.modifierStack?.find((value) => value.type === config.type); assert.ok(modifier); assert.equal(modifier.name, desktop.modifier.modifier.name); assert.equal(modifier.parameters.typeCode, desktop.modifier.modifier.typeCode); assert.equal(modifier.showViewport, desktop.modifier.modifier.showViewport); assert.equal(modifier.showRender, desktop.modifier.modifier.showRender); assert.equal(modifier.showEditMode, desktop.modifier.modifier.showEditMode); assert.equal(modifier.showOnCage, desktop.modifier.modifier.showOnCage); + if (config.type === "DECIMATE") { + assert.ok(Math.abs(modifier.parameters.ratio - desktop.modifier.modifier.ratio) < 1e-5); + assert.equal(modifier.parameters.iterations, desktop.modifier.modifier.iterations); + assert.ok(Math.abs(modifier.parameters.angleLimit - desktop.modifier.modifier.angleLimit) < 1e-5); + assert.equal(modifier.parameters.decimateMode, desktop.modifier.modifier.decimateMode); + } + if (config.type === "DISPLACE") { + assert.equal(modifier.parameters.direction, desktop.modifier.modifier.direction); + assert.ok(Math.abs(modifier.parameters.strength - desktop.modifier.modifier.strength) < 1e-5); + assert.ok(Math.abs(modifier.parameters.midLevel - desktop.modifier.modifier.midLevel) < 1e-5); + assert.equal(modifier.parameters.space, desktop.modifier.modifier.space); + assert.equal(modifier.parameters.textureMapping, desktop.modifier.modifier.textureMapping); + } + if (config.type === "EDGE_SPLIT") { + assert.ok(Math.abs(modifier.parameters.splitAngle - desktop.modifier.modifier.splitAngle) < 1e-5); + } + const saved = output(engine, handle, engine._web_engine_save_blend, true); const reopened = engine._web_engine_create(); open(engine, reopened, saved); const reopenedSnapshot = snapshot(engine, reopened); const reopenedHolder = mesh ? reopenedSnapshot.meshes?.find((value) => value.id === mesh.id) : reopenedSnapshot.nodes?.find((value) => value.id === node.id); assert.deepEqual(reopenedHolder?.modifierStack, holder.modifierStack); + const malformed = new Uint8Array([0x42,0x4c,0x45,0x4e,0x44,0x45,0x52]); const pointer = engine._malloc(malformed.byteLength); let result; try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } finally { engine._free(pointer); } assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task, operation: `${config.type}_MODIFIER_LOCAL_EXACT`, fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", objectId: node?.id, meshId: mesh?.id, modifier }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: config.nextTask }; + const reportPath = path.join(root, `tests/golden/${task}/${config.type.toLowerCase().replaceAll("_", "-")}-modifier-local-exact-report.json`); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} holder=${holder.id} modifier=${modifier.name} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task === "M16-GAP-00027") { + const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00027-datablock-WindowManager.blend"); + const desktopPath = path.join(root, "tests/golden/M16-GAP-00027/window-manager-desktop-report.json"); + fs.mkdirSync(path.dirname(desktopPath), { recursive: true }); + const run = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-window-manager-desktop.py"), "--", fixture, desktopPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); + assert.equal(run.status, 0, `${run.stdout ?? ""}\n${run.stderr ?? ""}`); + const desktop = JSON.parse(fs.readFileSync(desktopPath, "utf8")); + const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, fs.readFileSync(fixture)); + const before = snapshot(engine, handle); assert.deepEqual(before.windowManager, desktop.windowManager); + const saved = output(engine, handle, engine._web_engine_save_blend, true); const reopened = engine._web_engine_create(); open(engine, reopened, saved); assert.deepEqual(snapshot(engine, reopened).windowManager, before.windowManager); + const malformed = new Uint8Array([0x42, 0x4c, 0x45, 0x4e, 0x44, 0x45, 0x52]); const pointer = engine._malloc(malformed.byteLength); let result; + try { engine.HEAPU8.set(malformed, pointer); result = engine._web_engine_open_blend(handle, pointer, malformed.byteLength); } finally { engine._free(pointer); } + assert.notEqual(result, 0); assert.deepEqual(snapshot(engine, handle), before); engine._web_engine_destroy(handle); engine._web_engine_destroy(reopened); + const report = { schemaVersion: 1, task: "M16-GAP-00027", operation: "WINDOW_MANAGER_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktop.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopPath).replaceAll(path.sep, "/"), saveReopen: desktop.saveReopen }, wasm: { status: "EXACT", windowManager: before.windowManager }, saveReopen: "EXACT", negative: { malformedBlend: "REJECTED_WITHOUT_MAIN_MUTATION" }, nextTask: "M16-GAP-00028" }; + const reportPath = path.join(root, "tests/golden/M16-GAP-00027/window-manager-local-exact-report.json"); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} windowManager=${before.windowManager.id} desktop=exact saveReopen=exact next=${report.nextTask}\n`); process.exit(0); +} +if (task !== "M16-GAP-00001") { process.stdout.write(`generated-gap-blocked task=${task} reason=IMPLEMENTATION_NOT_STARTED next=${task}\n`); process.exit(0); } +const fixture = path.join(root, "tests/files/web/generated/M16-GAP-00001-datablock-Action.blend"); +assert.equal(fs.existsSync(fixture), true, "Action fixture is required"); +const bytes = fs.readFileSync(fixture); +const desktopReportPath = path.join(root, "tests/golden/M16-GAP-00001/action-desktop-report.json"); +const desktop = spawnSync(process.env.BLENDER_BIN ?? path.join(root, "build_blender_5.2.0/bin/blender"), ["-b", "--factory-startup", "--python", path.join(root, "tools/web/check-action-desktop.py"), "--", fixture, desktopReportPath], { cwd: root, encoding: "utf8", maxBuffer: 8 * 1024 * 1024 }); +assert.equal(desktop.status, 0, `${desktop.stdout ?? ""}\n${desktop.stderr ?? ""}`); +const desktopEvidence = JSON.parse(fs.readFileSync(desktopReportPath, "utf8")); +assert.equal(desktopEvidence.saveReopen, "EXACT"); assert.equal(desktopEvidence.actions.length, 1); assert.equal(desktopEvidence.actions[0].name, "AnimatedObjectAction"); +const engine = await factory({ wasmBinary }); const handle = engine._web_engine_create(); open(engine, handle, bytes); const before = snapshot(engine, handle); const animation = before.animations.find((item) => item.targetId === "object:AnimatedObject"); assert.ok(animation); assert.equal(animation.id, "action:AnimatedObjectAction:object:AnimatedObject"); assert.deepEqual(animation.channels.map((channel) => channel.path), ["location[0]", "location[1]", "location[2]"]); assert.ok(animation.channels.every((channel) => channel.keyframes.length === 2)); +const saved = output(engine, handle, engine._web_engine_save_blend, true); assert.ok(saved.byteLength > 0); const reopened = engine._web_engine_create(); open(engine, reopened, saved); const after = snapshot(engine, reopened); assert.deepEqual(after.animations, before.animations); const report = { schemaVersion: 1, task: "M16-GAP-00001", operation: "ACTION_DATABLOCK_LOCAL_EXACT", fixture: { path: path.relative(root, fixture).replaceAll(path.sep, "/"), sha256: desktopEvidence.fixtureSha256 }, desktop: { status: "EXACT", report: path.relative(root, desktopReportPath).replaceAll(path.sep, "/"), saveReopen: desktopEvidence.saveReopen }, wasm: { status: "EXACT", actionId: animation.id, channelPaths: animation.channels.map((channel) => channel.path), keyframesPerChannel: animation.channels.map((channel) => channel.keyframes.length) }, saveReopen: "EXACT", nextTask: "M16-GAP-00002" }; const reportPath = path.join(root, "tests/golden/M16-GAP-00001/action-local-exact-report.json"); fs.mkdirSync(path.dirname(reportPath), { recursive: true }); fs.writeFileSync(reportPath, `${JSON.stringify(report, null, 2)}\n`); process.stdout.write(`generated-gap-ok task=${task} action=${animation.id} channels=${animation.channels.length} desktop=exact saveReopen=exact next=${report.nextTask}\n`); diff --git a/tools/web/check-generic-modifier-desktop.py b/tools/web/check-generic-modifier-desktop.py new file mode 100644 index 00000000..71d74239 --- /dev/null +++ b/tools/web/check-generic-modifier-desktop.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(task, modifier_type, object_name): + obj = bpy.data.objects.get(object_name) + if obj is None: + raise RuntimeError(f"{object_name} is missing") + modifiers = [modifier for modifier in obj.modifiers if modifier.type == modifier_type] + if len(modifiers) != 1: + raise RuntimeError(f"expected one {modifier_type} modifier, found {len(modifiers)}") + modifier = modifiers[0] + value = { + "task": task, + "objectId": "object:" + obj.name, + "modifier": { + "name": modifier.name, + "type": modifier.type, + "typeCode": bpy.types.Modifier.bl_rna.properties["type"].enum_items[modifier.type].value, + "showViewport": bool(modifier.show_viewport), + "showRender": bool(modifier.show_render), + "showEditMode": bool(modifier.show_in_editmode), + "showOnCage": bool(modifier.show_on_cage), + }, + } + if obj.type == "MESH": + value["meshId"] = "mesh:" + obj.data.name + if modifier_type == "DECIMATE": + value["modifier"]["ratio"] = float(modifier.ratio) + value["modifier"]["iterations"] = int(modifier.iterations) + value["modifier"]["angleLimit"] = float(modifier.angle_limit) + value["modifier"]["decimateType"] = modifier.decimate_type + value["modifier"]["decimateMode"] = {"COLLAPSE": 0, "DISSOLVE": 1, "UNSUBDIV": 2}[modifier.decimate_type] + if modifier_type == "DISPLACE": + value["modifier"]["direction"] = {"X": 0, "Y": 1, "Z": 2, "NORMAL": 3, "CUSTOM_NORMAL": 4}[modifier.direction] + value["modifier"]["strength"] = float(modifier.strength) + value["modifier"]["midLevel"] = float(modifier.mid_level) + value["modifier"]["space"] = {"GLOBAL": 0, "LOCAL": 1, "NORMAL": 2}.get(modifier.texture_coords, 0) + value["modifier"]["textureMapping"] = {"GLOBAL": 1, "LOCAL": 2, "OBJECT": 3, "UV": 4}.get(modifier.texture_coords, 1) + if modifier_type == "EDGE_SPLIT": + value["modifier"]["splitAngle"] = float(modifier.split_angle) + return value + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 5: + raise SystemExit("usage: blender -b --python check-generic-modifier-desktop.py -- FIXTURE REPORT TASK TYPE OBJECT") + fixture = pathlib.Path(arguments[0]).resolve() + output = pathlib.Path(arguments[1]).resolve() + task, modifier_type, object_name = arguments[2:] + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report(task, modifier_type, object_name) + descriptor, temporary = tempfile.mkstemp(prefix="m16-generic-modifier-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report(task, modifier_type, object_name) + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"modifier save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": task, "operation": modifier_type + "_MODIFIER_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "modifier": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"generic-modifier-desktop-ok task={task} type={modifier_type} mesh={after['meshId']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-grease-pencil-desktop.py b/tools/web/check-grease-pencil-desktop.py new file mode 100644 index 00000000..34ce3ed1 --- /dev/null +++ b/tools/web/check-grease-pencil-desktop.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 +import hashlib +import json +import pathlib +import sys +import tempfile +import os +import bpy + +def report(): + data = bpy.data.grease_pencils.get("GreasePencilData") + if data is None: raise RuntimeError("GreasePencilData is missing") + layers = [] + for layer in data.layers: + frames = sorted(int(frame.frame_number) for frame in layer.frames) + layers.append({"name": layer.name, "frames": frames}) + return {"name": data.name, "layers": layers} + +def main(): + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 2: raise SystemExit("usage: blender -b --python check-grease-pencil-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in args) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False); before = report(); descriptor, temporary = tempfile.mkstemp(prefix="m16-gp-reopen-", suffix=".blend"); os.close(descriptor) + try: bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"Grease Pencil save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00009", "operation": "GREASE_PENCIL_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "greasePencil": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string}; output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"grease-pencil-desktop-ok layers={len(after['layers'])} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-lattice-desktop.py b/tools/web/check-lattice-desktop.py new file mode 100644 index 00000000..5f42fe66 --- /dev/null +++ b/tools/web/check-lattice-desktop.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(values): + return [round(float(value), 6) for value in values] + + +def lattice_report(): + lattice = bpy.data.lattices.get("WebGapLattice") + if lattice is None: + raise RuntimeError("WebGapLattice is missing") + return { + "id": "lattice:WebGapLattice", + "name": lattice.name, + "dimensions": [lattice.points_u, lattice.points_v, lattice.points_w], + "pointCount": len(lattice.points), + "interpolation": [ + lattice.interpolation_type_u, + lattice.interpolation_type_v, + lattice.interpolation_type_w, + ], + "useOutside": bool(lattice.use_outside), + "activePoint": -1, + "vertexGroup": lattice.vertex_group, + "points": [ + { + "coDeform": rounded(point.co_deform), + "weight": round(float(point.weight_softbody), 6), + "selected": bool(point.select), + } + for point in lattice.points + ], + } + + +def main() -> None: + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-lattice-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = lattice_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-lattice-reopen-", suffix=".blend") + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = lattice_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"lattice save/reopen drift: {before} != {after}") + report = { + "schemaVersion": 1, + "task": "M16-GAP-00010", + "operation": "LATTICE_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "lattice": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"lattice-desktop-ok points={after['pointCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-library-desktop.py b/tools/web/check-library-desktop.py new file mode 100644 index 00000000..7f0c1c81 --- /dev/null +++ b/tools/web/check-library-desktop.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def library_report(): + libraries = list(bpy.data.libraries) + if len(libraries) != 1: + raise RuntimeError(f"expected one library, found {len(libraries)}") + library = libraries[0] + return { + "id": "library:" + library.name, + "name": library.name, + "sourcePath": library.filepath, + "packed": library.packed_file is not None, + "readOnly": True, + "dependencyIds": [], + } + + +def main() -> None: + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-library-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = library_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-library-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = library_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"library save/reopen drift: {before} != {after}") + report = { + "schemaVersion": 1, + "task": "M16-GAP-00011", + "operation": "LIBRARY_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "library": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"library-desktop-ok id={after['id']} sourcePath={after['sourcePath']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-light-desktop.py b/tools/web/check-light-desktop.py new file mode 100644 index 00000000..4624a1a0 --- /dev/null +++ b/tools/web/check-light-desktop.py @@ -0,0 +1,74 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def light_report(): + light = bpy.data.lights.get("WebGapLight") + if light is None: + raise RuntimeError("WebGapLight is missing") + return { + "id": "light:WebGapLight", + "name": light.name, + "lightType": {"POINT": 0, "SUN": 1, "SPOT": 2, "AREA": 4}[light.type], + "color": [rounded(value) for value in light.color], + "energy": rounded(light.energy), + "exposure": rounded(light.exposure), + "temperature": rounded(light.temperature), + "useTemperature": bool(light.use_temperature), + "castsShadow": bool(light.use_shadow), + "radius": rounded(light.shadow_soft_size), + "spotAngle": rounded(getattr(light, "spot_size", 0.785398)), + "spotBlend": rounded(getattr(light, "spot_blend", 0.15)), + "areaShape": {"POINT": 0, "DISK": 0, "RECTANGLE": 1, "ELLIPSE": 2}[light.shape] if light.type == "AREA" else 0, + "areaSize": rounded(light.size), + "areaSizeY": rounded(light.size_y), + "areaSpread": rounded(light.spread), + "sunAngle": rounded(getattr(light, "angle", 0.00918)), + } + + +def main() -> None: + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-light-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = light_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-light-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = light_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"light save/reopen drift: {before} != {after}") + report = { + "schemaVersion": 1, + "task": "M16-GAP-00012", + "operation": "LIGHT_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "light": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"light-desktop-ok id={after['id']} type={after['lightType']} energy={after['energy']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-material-desktop.py b/tools/web/check-material-desktop.py new file mode 100644 index 00000000..bc96ca82 --- /dev/null +++ b/tools/web/check-material-desktop.py @@ -0,0 +1,86 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def socket_value(node, name, fallback): + socket = node.inputs.get(name) + if socket is None: + return fallback + value = socket.default_value + if hasattr(value, "__len__"): + return [rounded(item) for item in value] + return rounded(value) + + +def material_report(): + material = bpy.data.materials.get("WebGapMaterial") + if material is None or not material.use_nodes: + raise RuntimeError("WebGapMaterial node tree is missing") + nodes = material.node_tree.nodes + principled = nodes.get("Principled BSDF") + if principled is None: + raise RuntimeError("WebGapMaterial Principled node is missing") + return { + "id": "material:WebGapMaterial", + "name": material.name, + "baseColor": socket_value(principled, "Base Color", [0.8, 0.8, 0.8, 1.0]), + "roughness": socket_value(principled, "Roughness", 0.4), + "metallic": socket_value(principled, "Metallic", 0.0), + "emissionColor": socket_value(principled, "Emission Color", [0.0, 0.0, 0.0, 1.0]), + "alpha": socket_value(principled, "Alpha", 1.0), + "ior": socket_value(principled, "IOR", 1.45), + "specularIORLevel": socket_value(principled, "Specular IOR Level", 0.5), + "transmissionWeight": socket_value(principled, "Transmission Weight", 0.0), + "coatWeight": socket_value(principled, "Coat Weight", 0.0), + "coatRoughness": socket_value(principled, "Coat Roughness", 0.03), + "emissionStrength": socket_value(principled, "Emission Strength", 1.0), + "nodeTypes": sorted(node.bl_idname for node in nodes), + "linkCount": len(material.node_tree.links), + } + + +def main() -> None: + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-material-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = material_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-material-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = material_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"material save/reopen drift: {before} != {after}") + report = { + "schemaVersion": 1, + "task": "M16-GAP-00013", + "operation": "MATERIAL_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "material": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"material-desktop-ok id={after['id']} nodes={len(after['nodeTypes'])} links={after['linkCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-mesh-desktop.py b/tools/web/check-mesh-desktop.py new file mode 100644 index 00000000..757a0552 --- /dev/null +++ b/tools/web/check-mesh-desktop.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def mesh_report(): + mesh = bpy.data.meshes.get("WebGapMesh") + if mesh is None: + raise RuntimeError("WebGapMesh is missing") + mesh.calc_loop_triangles() + positions = [rounded(value) for vertex in mesh.vertices for value in vertex.co] + indices = [index for triangle in mesh.loop_triangles for index in triangle.vertices] + uv_layer = mesh.uv_layers.get("WebGapUV") + uvs = [rounded(value) for loop in uv_layer.data for value in loop.uv] if uv_layer else [] + return { + "id": "mesh:WebGapMesh", + "name": mesh.name, + "vertexCount": len(mesh.vertices), + "edgeCount": len(mesh.edges), + "faceCount": len(mesh.polygons), + "cornerCount": len(mesh.loops), + "triangleCount": len(mesh.loop_triangles), + "positions": positions, + "indices": indices, + "uvLayers": [layer.name for layer in mesh.uv_layers], + "uvs": uvs, + } + + +def main() -> None: + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-mesh-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = mesh_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-mesh-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = mesh_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"mesh save/reopen drift: {before} != {after}") + report = { + "schemaVersion": 1, + "task": "M16-GAP-00014", + "operation": "MESH_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "mesh": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"mesh-desktop-ok id={after['id']} vertices={after['vertexCount']} triangles={after['triangleCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-metaball-desktop.py b/tools/web/check-metaball-desktop.py new file mode 100644 index 00000000..b0fe9d4e --- /dev/null +++ b/tools/web/check-metaball-desktop.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def report(): + data = bpy.data.metaballs.get("WebGapMetaBall") + if data is None: + raise RuntimeError("WebGapMetaBall is missing") + return { + "id": "metaball:WebGapMetaBall", + "name": data.name, + "resolution": rounded(data.resolution), + "renderResolution": rounded(data.render_resolution), + "pointCount": len(data.elements), + "elements": [{"position": [rounded(v) for v in item.co], "radius": rounded(item.radius), "scale": [rounded(item.size_x), rounded(item.size_y), rounded(item.size_z)]} for item in data.elements], + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-metaball-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-metaball-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"metaball save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00015", "operation": "METABALL_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "metaball": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"metaball-desktop-ok id={after['id']} points={after['pointCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-nodetree-desktop.py b/tools/web/check-nodetree-desktop.py new file mode 100644 index 00000000..a34c84d9 --- /dev/null +++ b/tools/web/check-nodetree-desktop.py @@ -0,0 +1,51 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def graph_report(): + material = bpy.data.materials.get("WebGapNodeTreeMaterial") + if material is None or not material.use_nodes: + raise RuntimeError("WebGapNodeTreeMaterial is missing") + tree = material.node_tree + return { + "id": "nodetree:WebGapNodeTreeMaterial", + "name": tree.name, + "nodeTypes": sorted(node.bl_idname for node in tree.nodes), + "nodeNames": sorted(node.name for node in tree.nodes), + "linkCount": len(tree.links), + "links": sorted([[link.from_node.bl_idname, link.from_socket.name, link.to_node.bl_idname, link.to_socket.name] for link in tree.links]), + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-nodetree-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = graph_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-nodetree-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = graph_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"node tree save/reopen drift: {before} != {after}") + report = {"schemaVersion": 1, "task": "M16-GAP-00016", "operation": "NODETREE_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "nodeTree": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"nodetree-desktop-ok id={after['id']} nodes={len(after['nodeTypes'])} links={after['linkCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-object-desktop.py b/tools/web/check-object-desktop.py new file mode 100644 index 00000000..80152123 --- /dev/null +++ b/tools/web/check-object-desktop.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def report(): + obj = bpy.data.objects.get("WebGapObject") + if obj is None: + raise RuntimeError("WebGapObject is missing") + return {"id": "object:WebGapObject", "name": obj.name, "type": obj.type, "visible": not obj.hide_get(), "selectable": not obj.hide_select, "location": [rounded(v) for v in obj.location], "rotationEuler": [rounded(v) for v in obj.rotation_euler], "scale": [rounded(v) for v in obj.scale], "parent": obj.parent.name if obj.parent else None} + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-object-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-object-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"object save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00017", "operation": "OBJECT_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "object": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"object-desktop-ok id={after['id']} type={after['type']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-particle-settings-desktop.py b/tools/web/check-particle-settings-desktop.py new file mode 100644 index 00000000..cecc6b2d --- /dev/null +++ b/tools/web/check-particle-settings-desktop.py @@ -0,0 +1,69 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def settings_report(): + settings = bpy.data.particles.get("WebGapParticleSettings") + if settings is None: + raise RuntimeError("WebGapParticleSettings is missing") + return { + "id": "particle-settings:" + settings.name, + "name": settings.name, + "type": int({"EMITTER": 0, "HAIR": 1}.get(settings.type, -1)), + "from": int({"FACE": 0, "VERT": 1, "VOLUME": 2}.get(settings.emit_from, -1)), + "distribution": int({"JIT": 0, "RAND": 1, "GRID": 2}.get(settings.distribution, -1)), + "physicsType": int({"NEWTON": 0, "KEYED": 1, "BOIDS": 2, "NO": 3}.get(settings.physics_type, -1)), + "totalParticles": int(settings.count), + "start": rounded(settings.frame_start), + "end": rounded(settings.frame_end), + "lifetime": rounded(settings.lifetime), + "size": rounded(settings.particle_size), + "drawSize": rounded(settings.display_size), + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-particle-settings-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = settings_report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-particle-settings-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = settings_report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"particle settings save/reopen drift: {before} != {after}") + report = { + "schemaVersion": 1, + "task": "M16-GAP-00018", + "operation": "PARTICLE_SETTINGS_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "particleSettings": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(report, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"particle-settings-desktop-ok id={after['id']} count={after['totalParticles']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-pointcloud-desktop.py b/tools/web/check-pointcloud-desktop.py new file mode 100644 index 00000000..5471de22 --- /dev/null +++ b/tools/web/check-pointcloud-desktop.py @@ -0,0 +1,68 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def rounded(value): + return round(float(value), 6) + + +def report(): + data = bpy.data.pointclouds.get("WebGapPointCloud") + if data is None: + raise RuntimeError("WebGapPointCloud is missing") + positions = [0.0] * (len(data.points) * 3) + data.points.foreach_get("co", positions) + radius = data.attributes.get("radius") + radii = [0.0] * len(data.points) + if radius is not None: + radius.data.foreach_get("value", radii) + return { + "id": "pointcloud:" + data.name, + "name": data.name, + "pointCount": len(data.points), + "controlPoints": [rounded(value) for value in positions], + "radii": [rounded(value) for value in radii], + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-pointcloud-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-pointcloud-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"point cloud save/reopen drift: {before} != {after}") + value = { + "schemaVersion": 1, + "task": "M16-GAP-00019", + "operation": "POINT_CLOUD_DATABLOCK_DESKTOP", + "fixture": str(fixture), + "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), + "pointCloud": after, + "saveReopen": "EXACT", + "blenderVersion": bpy.app.version_string, + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"pointcloud-desktop-ok id={after['id']} points={after['pointCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-scene-desktop.py b/tools/web/check-scene-desktop.py new file mode 100644 index 00000000..1ce46ae5 --- /dev/null +++ b/tools/web/check-scene-desktop.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + scene = bpy.data.scenes.get("WebGapScene") + if scene is None: + raise RuntimeError("WebGapScene is missing") + return { + "id": "scene:" + scene.name, + "name": scene.name, + "frameCurrent": int(scene.frame_current), + "frameStart": int(scene.frame_start), + "frameEnd": int(scene.frame_end), + "fps": round(float(scene.render.fps), 6), + "fpsBase": round(float(scene.render.fps_base), 6), + "unitSystem": {"NONE": 0, "METRIC": 1, "IMPERIAL": 2}.get(scene.unit_settings.system, -1), + "unitScale": round(float(scene.unit_settings.scale_length), 6), + "renderEngine": scene.render.engine, + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-scene-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-scene-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"scene save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00020", "operation": "SCENE_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "scene": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"scene-desktop-ok id={after['id']} frames={after['frameStart']}-{after['frameEnd']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-screen-desktop.py b/tools/web/check-screen-desktop.py new file mode 100644 index 00000000..a5148586 --- /dev/null +++ b/tools/web/check-screen-desktop.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + screen = bpy.data.screens.get("WebGapScreen") + if screen is None: + raise RuntimeError("WebGapScreen is missing") + return { + "id": "screen:" + screen.name, + "name": screen.name, + "areaCount": len(screen.areas), + "editors": sorted(area.type for area in screen.areas), + "regionCount": sum(len(area.regions) for area in screen.areas), + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-screen-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=True) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-screen-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=True) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"screen save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00021", "operation": "SCREEN_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "screen": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"screen-desktop-ok id={after['id']} areas={after['areaCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-sound-desktop.py b/tools/web/check-sound-desktop.py new file mode 100644 index 00000000..a9a69579 --- /dev/null +++ b/tools/web/check-sound-desktop.py @@ -0,0 +1,52 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + sound = bpy.data.sounds.get("WebGapSound") + if sound is None: + raise RuntimeError("WebGapSound is missing") + return { + "id": "sound:" + sound.name, + "name": sound.name, + "sourcePath": sound.filepath, + "packed": sound.packed_file is not None, + "volume": 0.0, + "pitch": 0.0, + "audioChannels": {"MONO": 1, "STEREO": 2, "STEREO_LFE": 3, "SURROUND4": 4, "SURROUND5_1": 6, "SURROUND7_1": 8}.get(sound.channels, 0), + "sampleRate": int(sound.samplerate), + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-sound-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-sound-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"sound save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00022", "operation": "SOUND_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "sound": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"sound-desktop-ok id={after['id']} volume={after['volume']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-speaker-desktop.py b/tools/web/check-speaker-desktop.py new file mode 100644 index 00000000..23614128 --- /dev/null +++ b/tools/web/check-speaker-desktop.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + speaker = bpy.data.speakers.get("WebGapSpeaker") + if speaker is None: + raise RuntimeError("WebGapSpeaker is missing") + return { + "id": "speaker:" + speaker.name, + "name": speaker.name, + "soundId": "sound:" + speaker.sound.name if speaker.sound else None, + "volumeMax": float(speaker.volume_max), + "volumeMin": float(speaker.volume_min), + "distanceMax": float(speaker.distance_max), + "distanceReference": float(speaker.distance_reference), + "attenuation": float(speaker.attenuation), + "coneAngleOuter": float(speaker.cone_angle_outer), + "coneAngleInner": float(speaker.cone_angle_inner), + "coneVolumeOuter": float(speaker.cone_volume_outer), + "volume": float(speaker.volume), + "pitch": float(speaker.pitch), + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-speaker-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-speaker-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"speaker save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00023", "operation": "SPEAKER_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "speaker": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"speaker-desktop-ok id={after['id']} volume={after['volume']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-task-context.mjs b/tools/web/check-task-context.mjs new file mode 100644 index 00000000..c0b8e03b --- /dev/null +++ b/tools/web/check-task-context.mjs @@ -0,0 +1,39 @@ +import assert from "node:assert/strict"; +import fs from "node:fs"; +import path from "node:path"; +import { buildTaskContext, contextSizeReport, CONTEXT_LIMITS, root, verifyTaskIndex } from "./task-context-lib.mjs"; +import { validateContextBundle } from "./context-governance.mjs"; + +const taskArg = process.argv.indexOf("--task"); +const task = taskArg >= 0 ? process.argv[taskArg + 1] : undefined; +const write = process.argv.includes("--write"); +verifyTaskIndex(); +const bundle = buildTaskContext(task); +const report = contextSizeReport(bundle); +const { context } = bundle; +const governance = validateContextBundle(bundle); +assert.equal(report.withinBudget, true, `task context exceeds budget: ${JSON.stringify(report)}`); +assert.deepEqual(governance.violations, [], `task context governance failed: ${JSON.stringify(governance.violations)}`); +if (task) assert.equal(context.task, task); +assert.ok(context.parentTask); +assert.ok(context.commands.length > 0, "task must expose at least one focused command"); +assert.ok(context.sourceDocuments.parentManifest.endsWith("manifest.json")); +assert.ok(!context.sourceDocuments.taskCard.includes("CURRENT_EXECUTION_PLAN")); +if (bundle.sources.taskSource && context.task === bundle.sources.queue.currentTask) { + for (const heading of ["## 目标", "## 输入与范围", "## 验收", "## 交付与回滚"]) { + assert.ok(bundle.sources.taskSource.includes(heading), `current task card must include ${heading}`); + } + assert.match(bundle.sources.taskSource, /malformed|unsupported|取消|超限|负例|失败/iu, "current task card must name one failure boundary"); +} +if (context.task === bundle.sources.queue.currentTask) { + assert.ok(bundle.sources.taskSource, "current task must have a compact task card; do not fall back to the full plan"); + assert.ok(bundle.sources.taskSource.length <= CONTEXT_LIMITS.taskBytes, "current task card exceeds the 8 KiB context budget"); +} + +const outputDir = path.join(root, "tests/golden", context.task); +const outputPath = path.join(outputDir, "task-context.json"); +if (write) { + fs.mkdirSync(outputDir, { recursive: true }); + fs.writeFileSync(outputPath, `${JSON.stringify({ ...context, size: report }, null, 2)}\n`); +} +process.stdout.write(`task-context-ok task=${context.task} parent=${context.parentTask} totalTokens=${report.totalTokens} taskBytes=${context.budgets.taskBytes} next=${context.nextTask ?? "NONE"}${write ? ` output=${path.relative(root, outputPath)}` : ""}\n`); diff --git a/tools/web/check-task-index.mjs b/tools/web/check-task-index.mjs new file mode 100644 index 00000000..d55c3683 --- /dev/null +++ b/tools/web/check-task-index.mjs @@ -0,0 +1,42 @@ +import assert from "node:assert/strict"; +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const indexPath = path.join(root, "tests/golden/M15-03A/task-index.json"); +const index = JSON.parse(fs.readFileSync(indexPath, "utf8")); +const sha256File = (file) => crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex"); +const resolve = (value) => path.join(root, value); +const planPath = resolve(index.source.path); +const catalogPath = resolve(index.catalog.path); +assert.equal(index.schemaVersion, 1); +assert.equal(sha256File(planPath), index.source.sha256, "task index source plan is stale; regenerate it"); +assert.equal(sha256File(catalogPath), index.catalog.sha256, "task catalog hash mismatch"); +assert.equal(Object.keys(index.entries).length, index.taskCount); + +const catalog = fs.openSync(catalogPath, "r"); +let activeCount = 0; +try { + const bytes = fs.statSync(catalogPath).size; + let previousEnd = 0; + for (const [id, entry] of Object.entries(index.entries)) { + assert.equal(entry.offset, previousEnd, `${id} offset is not contiguous`); + assert.ok(entry.length > 0, `${id} has an empty record`); + assert.ok(entry.offset + entry.length <= bytes, `${id} points past catalog`); + const buffer = Buffer.alloc(entry.length); + fs.readSync(catalog, buffer, 0, entry.length, entry.offset); + const record = JSON.parse(buffer.toString("utf8")); + assert.equal(record.id, id); + assert.ok(record.gapId && record.ownerFamily && record.targetImplementationClass); + if (record.state === "active") activeCount += 1; + previousEnd += entry.length; + } + assert.equal(previousEnd, bytes, "catalog has unindexed bytes"); +} finally { + fs.closeSync(catalog); +} +assert.ok(index.entries[index.activeTask]?.previous, "active task must have a parent"); +assert.equal(activeCount, 1, "task index must contain exactly one active task"); +process.stdout.write(`task-index-ok tasks=${index.taskCount} active=${index.activeTask} catalog=${index.catalog.path}\n`); diff --git a/tools/web/check-text-desktop.py b/tools/web/check-text-desktop.py new file mode 100644 index 00000000..a186be4a --- /dev/null +++ b/tools/web/check-text-desktop.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + text = bpy.data.texts.get("WebGapText") + if text is None: + raise RuntimeError("WebGapText is missing") + source = text.as_string() + return { + "id": "text:" + text.name, + "name": text.name, + "source": source, + "sourceSha256": hashlib.sha256(source.encode("utf-8")).hexdigest(), + "byteLength": len(source.encode("utf-8")), + "lineCount": len(source.splitlines()) + (1 if source.endswith("\n") else 0), + "sourcePath": text.filepath, + "internal": not bool(text.filepath), + "isDirty": text.is_dirty, + "useModule": text.use_module, + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-text-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-text-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"text save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00024", "operation": "TEXT_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "text": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"text-desktop-ok id={after['id']} bytes={after['byteLength']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-texture-desktop.py b/tools/web/check-texture-desktop.py new file mode 100644 index 00000000..d50641b3 --- /dev/null +++ b/tools/web/check-texture-desktop.py @@ -0,0 +1,52 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + texture = bpy.data.textures.get("WebGapTexture") + if texture is None: + raise RuntimeError("WebGapTexture is missing") + return { + "id": "texture:" + texture.name, + "name": texture.name, + "type": {"NONE": 0, "CLOUDS": 1, "WOOD": 2, "MARBLE": 3, "MAGIC": 4, "BLEND": 5, "STUCCI": 6, "NOISE": 7, "IMAGE": 8, "MUSGRAVE": 9, "VORONOI": 10, "DISTORTED_NOISE": 11}.get(texture.type, 0), + "noiseScale": float(texture.noise_scale), + "noiseDepth": int(texture.noise_depth), + "intensity": float(texture.intensity), + "contrast": float(texture.contrast), + "saturation": float(texture.saturation), + } + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-texture-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-texture-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"texture save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00025", "operation": "TEXTURE_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "texture": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"texture-desktop-ok id={after['id']} type={after['type']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-volume-desktop.py b/tools/web/check-volume-desktop.py new file mode 100644 index 00000000..89bfbc45 --- /dev/null +++ b/tools/web/check-volume-desktop.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + volume = bpy.data.volumes.get("WebGapVolume") + if volume is None: + raise RuntimeError("WebGapVolume is missing") + return {"id": "volume:" + volume.name, "name": volume.name, "sourcePath": volume.filepath, "displayDensity": float(volume.display.density), "interpolation": "NEAREST" if volume.display.interpolation_method == "CLOSEST" else "LINEAR", "stepSize": float(volume.render.step_size), "velocityGrid": volume.velocity_grid, "velocityScale": 1.0} + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-volume-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-volume-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"volume save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00026", "operation": "VOLUME_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "volume": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"volume-desktop-ok id={after['id']} density={after['displayDensity']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-window-manager-desktop.py b/tools/web/check-window-manager-desktop.py new file mode 100644 index 00000000..46255348 --- /dev/null +++ b/tools/web/check-window-manager-desktop.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 +import hashlib +import json +import os +import pathlib +import sys +import tempfile + +import bpy + + +def report(): + manager = bpy.context.window_manager + return {"id": "window-manager:" + manager.name, "name": manager.name, "presetName": manager.preset_name, "windowCount": len(manager.windows), "interfaceLocked": manager.is_interface_locked} + + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: + raise SystemExit("usage: blender -b --python check-window-manager-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture), load_ui=False) + before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-window-manager-reopen-", suffix=".blend", dir=fixture.parent) + os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True) + bpy.ops.wm.open_mainfile(filepath=temporary, load_ui=False) + after = report() + finally: + pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: + raise RuntimeError(f"window manager save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00027", "operation": "WINDOW_MANAGER_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "windowManager": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"window-manager-desktop-ok id={after['id']} windows={after['windowCount']} saveReopen=exact") + + +if __name__ == "__main__": + main() diff --git a/tools/web/check-workspace-desktop.py b/tools/web/check-workspace-desktop.py new file mode 100644 index 00000000..6e41d4a2 --- /dev/null +++ b/tools/web/check-workspace-desktop.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python3 +import hashlib, json, os, pathlib, sys, tempfile +import bpy + +def report(): + workspace = bpy.data.workspaces.get("WebGapWorkspace") + if workspace is None: raise RuntimeError("WebGapWorkspace is missing") + return {"id": "workspace:" + workspace.name, "name": workspace.name, "screenCount": len(workspace.screens)} + +def main(): + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 2: raise SystemExit("usage: blender -b --python check-workspace-desktop.py -- FIXTURE REPORT") + fixture, output = (pathlib.Path(value).resolve() for value in arguments) + bpy.ops.wm.open_mainfile(filepath=str(fixture)); before = report() + descriptor, temporary = tempfile.mkstemp(prefix="m16-workspace-reopen-", suffix=".blend", dir=fixture.parent); os.close(descriptor) + try: + bpy.ops.wm.save_as_mainfile(filepath=temporary, check_existing=False, compress=True); bpy.ops.wm.open_mainfile(filepath=temporary); after = report() + finally: pathlib.Path(temporary).unlink(missing_ok=True) + if before != after: raise RuntimeError(f"workspace save/reopen drift: {before} != {after}") + value = {"schemaVersion": 1, "task": "M16-GAP-00028", "operation": "WORKSPACE_DATABLOCK_DESKTOP", "fixture": str(fixture), "fixtureSha256": hashlib.sha256(fixture.read_bytes()).hexdigest(), "workspace": after, "saveReopen": "EXACT", "blenderVersion": bpy.app.version_string} + output.parent.mkdir(parents=True, exist_ok=True); output.write_text(json.dumps(value, indent=2, sort_keys=True) + "\n", encoding="utf-8"); print(f"workspace-desktop-ok id={after['id']} saveReopen=exact") +if __name__ == "__main__": main() diff --git a/tools/web/check-world-desktop.py b/tools/web/check-world-desktop.py new file mode 100644 index 00000000..2a765eed --- /dev/null +++ b/tools/web/check-world-desktop.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python3 +import hashlib,json,os,pathlib,sys,tempfile +import bpy +def report(): + world=bpy.data.worlds.get("WebGapWorld") + if world is None: raise RuntimeError("WebGapWorld is missing") + mist=world.mist_settings + return {"id":"world:"+world.name,"name":world.name,"color":list(world.color),"exposure":0.0,"backgroundVisible":True,"environmentStrength":1.0,"mist":{"enabled":mist.use_mist,"type":"QUADRATIC","start":float(mist.start),"depth":float(mist.depth),"intensity":float(mist.intensity),"height":0.0}} +def main(): + args=sys.argv[sys.argv.index("--")+1:] + if len(args)!=2: raise SystemExit("usage: blender -b --python check-world-desktop.py -- FIXTURE REPORT") + fixture,output=(pathlib.Path(v).resolve() for v in args); bpy.ops.wm.open_mainfile(filepath=str(fixture),load_ui=False); before=report(); fd,tmp=tempfile.mkstemp(prefix="m16-world-reopen-",suffix=".blend",dir=fixture.parent); os.close(fd) + try: bpy.ops.wm.save_as_mainfile(filepath=tmp,check_existing=False,compress=True); bpy.ops.wm.open_mainfile(filepath=tmp,load_ui=False); after=report() + finally: pathlib.Path(tmp).unlink(missing_ok=True) + if before!=after: raise RuntimeError(f"world save/reopen drift: {before} != {after}") + value={"schemaVersion":1,"task":"M16-GAP-00029","operation":"WORLD_DATABLOCK_DESKTOP","fixture":str(fixture),"fixtureSha256":hashlib.sha256(fixture.read_bytes()).hexdigest(),"world":after,"saveReopen":"EXACT","blenderVersion":bpy.app.version_string}; output.parent.mkdir(parents=True,exist_ok=True); output.write_text(json.dumps(value,indent=2,sort_keys=True)+"\n",encoding="utf-8"); print(f"world-desktop-ok id={after['id']} saveReopen=exact") +if __name__=="__main__": main() diff --git a/tools/web/context-governance.mjs b/tools/web/context-governance.mjs new file mode 100644 index 00000000..18b4c669 --- /dev/null +++ b/tools/web/context-governance.mjs @@ -0,0 +1,148 @@ +import fs from "node:fs"; +import path from "node:path"; +import { CONTEXT_LIMITS, contextSizeReport, root } from "./task-context-lib.mjs"; + +export const GOVERNANCE_LIMITS = Object.freeze({ + maxTaskInputs: 12, + maxTaskCommands: 8, + maxManifestArtifacts: 32, + maxCatalogRecordBytes: 2048, +}); + +export const FORBIDDEN_CONTEXT_REFERENCES = Object.freeze([ + "next-task-plan.json", + "CURRENT_EXECUTION_PLAN.md", + "PROJECT_STATUS_AND_NEXT_WORK.md", + "BLENDER_5_2_FULL_PARITY_WBS.md", + "BLENDER_5_2_FULL_WEB_PARITY_EXECUTION_PLAN.md", + "test-results/", +]); +export const INPUT_EXCLUSION_REASONS = Object.freeze(new Set([ + "ALREADY_IN_CONTEXT", + "EVIDENCE_FILE_COUNT", + "EVIDENCE_BYTE_BUDGET", + "CONTEXT_REMAINING_SPACE", + "MISSING_PATH", + "PATH_OUTSIDE_REPOSITORY", + "PATH_STAT_FAILED", + "SYMLINK_PATH", + "UNREADABLE_PATH_TYPE", + "GENERATED_EVIDENCE_OUTPUT", +])); + +const byteLength = (value) => Buffer.byteLength(value, "utf8"); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +function add(violations, code, detail) { + violations.push({ code, detail }); +} + +export function validateContextBundle(bundle, { current = true } = {}) { + const violations = []; + const { context, files, sources } = bundle; + const report = contextSizeReport(bundle); + const measured = [ + ["queue", sources.queue.source, CONTEXT_LIMITS.queueBytes], + ["task", sources.taskSource, CONTEXT_LIMITS.taskBytes], + ["parentManifest", sources.parentManifestSource, CONTEXT_LIMITS.parentManifestBytes], + ["parentStatus", sources.parentStatusSource, CONTEXT_LIMITS.parentStatusBytes], + ]; + + for (const [name, source, limit] of measured) { + if (byteLength(source) > limit) add(violations, "DOCUMENT_OVER_BUDGET", `${name}=${byteLength(source)}>${limit}`); + } + if (!report.withinBudget) add(violations, "CONTEXT_OVER_BUDGET", `tokens=${report.totalTokens}>${CONTEXT_LIMITS.contextTokens}`); + if (context.inputPaths.length > GOVERNANCE_LIMITS.maxTaskInputs) { + add(violations, "TASK_INPUTS_TOO_WIDE", `count=${context.inputPaths.length}`); + } + if (context.commands.length > GOVERNANCE_LIMITS.maxTaskCommands) { + add(violations, "TASK_COMMANDS_TOO_WIDE", `count=${context.commands.length}`); + } + + const selection = context.inputSelection; + if (!selection || selection.schemaVersion !== 1 || !Array.isArray(selection.selected) || !Array.isArray(selection.excluded)) { + add(violations, "INPUT_SELECTION_AUDIT_MISSING", context.task); + } else { + const sourceBytes = report.documents.reduce((sum, item) => sum + item.bytes, 0); + if (selection.source?.bytes !== sourceBytes || selection.source?.tokens !== report.sourceTokens) { + add(violations, "INPUT_SELECTION_SOURCE_MISMATCH", context.task); + } + const selectedPaths = selection.selected.map((item) => item?.path); + if (JSON.stringify(selectedPaths) !== JSON.stringify(context.inputPaths)) { + add(violations, "INPUT_SELECTION_PATHS_MISMATCH", context.task); + } + const selectedBytes = selection.selected.reduce((sum, item) => sum + (Number.isSafeInteger(item?.bytes) ? item.bytes : 0), 0); + const selectedTokens = selection.selected.reduce((sum, item) => sum + (Number.isSafeInteger(item?.tokens) ? item.tokens : 0), 0); + for (const item of selection.selected) { + if (!item?.path || !Number.isSafeInteger(item.bytes) || item.bytes < 0 || item.tokens !== Math.ceil(item.bytes / 4)) { + add(violations, "INPUT_SELECTION_ENTRY_INVALID", context.task); + } + } + if (selection.selected.length > CONTEXT_LIMITS.evidenceFiles) add(violations, "EVIDENCE_FILE_COUNT_OVER_BUDGET", `count=${selection.selected.length}`); + if (selectedBytes > CONTEXT_LIMITS.evidenceBytes) add(violations, "EVIDENCE_BYTES_OVER_BUDGET", `bytes=${selectedBytes}`); + if (selectedBytes > selection.limits?.contextRemainingBytes) add(violations, "CONTEXT_REMAINING_BYTES_OVER_BUDGET", `bytes=${selectedBytes}`); + if (selectedTokens > selection.limits?.contextRemainingTokens) add(violations, "CONTEXT_REMAINING_SPACE_OVER_BUDGET", `tokens=${selectedTokens}`); + if (selection.totals?.files !== selection.selected.length || selection.totals?.bytes !== selectedBytes || selection.totals?.tokens !== selectedTokens) { + add(violations, "INPUT_SELECTION_TOTALS_MISMATCH", context.task); + } + for (const item of selection.excluded) { + if (!item?.path || typeof item.reason !== "string" || item.reason.length === 0) add(violations, "INPUT_EXCLUSION_REASON_MISSING", context.task); + else if (!INPUT_EXCLUSION_REASONS.has(item.reason)) add(violations, "INPUT_EXCLUSION_REASON_UNKNOWN", `${context.task}:${item.reason}`); + } + } + + const taskSource = sources.taskSource; + if (taskSource && context.task === sources.queue.currentTask) { + for (const heading of ["## 目标", "## 输入与范围", "## 验收", "## 交付与回滚"]) { + if (!taskSource.includes(heading)) add(violations, "TASK_CARD_SECTION_MISSING", heading); + } + if (!/malformed|unsupported|取消|超限|负例|失败/iu.test(taskSource)) { + add(violations, "TASK_CARD_FAILURE_BOUNDARY_MISSING", context.task); + } + } + + for (const [name, source] of [["task", taskSource], ["parentStatus", sources.parentStatusSource]]) { + for (const reference of FORBIDDEN_CONTEXT_REFERENCES) { + if (source.includes(reference)) add(violations, "FORBIDDEN_CONTEXT_REFERENCE", `${name}:${reference}`); + } + } + + const manifest = sources.parentManifest; + const artifacts = manifest?.artifacts && typeof manifest.artifacts === "object" ? Object.keys(manifest.artifacts) : []; + if (artifacts.length > GOVERNANCE_LIMITS.maxManifestArtifacts) { + add(violations, "MANIFEST_ARTIFACTS_TOO_WIDE", `count=${artifacts.length}`); + } + for (const [name, artifact] of Object.entries(manifest?.artifacts ?? {})) { + if (!artifact?.path || path.isAbsolute(artifact.path) || artifact.path.includes("..")) { + add(violations, "MANIFEST_PATH_NOT_REPOSITORY_RELATIVE", name); + } + } + + if (current && sources.queue.currentTask !== context.task) add(violations, "QUEUE_TASK_MISMATCH", `${sources.queue.currentTask}!=${context.task}`); + if (manifest.nextTask !== context.task) add(violations, "PARENT_NEXT_TASK_MISMATCH", `${manifest.nextTask}!=${context.task}`); + if (path.basename(path.dirname(files.parentManifestPath)) !== context.parentTask) { + add(violations, "PARENT_MANIFEST_PATH_MISMATCH", relative(files.parentManifestPath)); + } + + return { report, violations }; +} + +export function validateCatalogRecords(catalogPath, index) { + const violations = []; + const handle = fs.openSync(catalogPath, "r"); + try { + for (const [id, entry] of Object.entries(index.entries ?? {})) { + if (!Number.isInteger(entry.offset) || !Number.isInteger(entry.length) || entry.length <= 0) { + add(violations, "CATALOG_OFFSET_INVALID", id); + continue; + } + if (entry.length > GOVERNANCE_LIMITS.maxCatalogRecordBytes) add(violations, "CATALOG_RECORD_TOO_LARGE", `${id}=${entry.length}`); + const buffer = Buffer.alloc(entry.length); + fs.readSync(handle, buffer, 0, entry.length, entry.offset); + if (!buffer.toString("utf8").endsWith("\n")) add(violations, "CATALOG_RECORD_NOT_LINE_DELIMITED", id); + } + } finally { + fs.closeSync(handle); + } + return violations; +} diff --git a/tools/web/generate-blender-contract-audit.mjs b/tools/web/generate-blender-contract-audit.mjs new file mode 100644 index 00000000..e7c7fd57 --- /dev/null +++ b/tools/web/generate-blender-contract-audit.mjs @@ -0,0 +1,36 @@ +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const task = process.argv[2]; +const output = path.resolve(process.argv[3] ?? ""); +const contracts = { + "M15-02C": { mode: "LOCAL_EXACT", nextTask: "M15-02D", required: ["desktopFixture", "wasmFixture", "sameFixture"] }, + "M15-02D": { mode: "LOCAL_EQUIVALENT", nextTask: "M15-02E", required: ["mainEvidence", "saveReopenEvidence"] }, + "M15-02E": { mode: "SERVER_EXACT", nextTask: "M15-02F", required: ["jobEvidence", "cancelEvidence", "isolationEvidence", "resultBindingEvidence"] }, + "M15-02F": { mode: "UNKNOWN_DATA_PRESERVATION", nextTask: "M15-03A", required: ["unknownDataFixture", "saveReloadEvidence", "bytePreservationEvidence"] }, +}; +if (!contracts[task] || !output) throw new Error("usage: node generate-blender-contract-audit.mjs M15-02C OUTPUT.json"); +const contract = contracts[task]; +const mapPath = path.join(root, "tests/golden/M15-02A/blender-parity-map.json"); +const map = JSON.parse(fs.readFileSync(mapPath, "utf8")); +const claims = map.entries.filter((entry) => entry.implementationClass === contract.mode); +const blocked = claims.filter((entry) => contract.required.some((field) => !entry[field])); +const ready = claims.filter((entry) => !blocked.includes(entry)); +const audit = { + schemaVersion: 1, + task, + operation: "BLENDER_PARITY_CONTRACT_AUDIT", + source: { path: "tests/golden/M15-02A/blender-parity-map.json", sha256: crypto.createHash("sha256").update(fs.readFileSync(mapPath)).digest("hex") }, + contract: { mode: contract.mode, requiredEvidence: contract.required, failClosed: true }, + summary: { inventoried: map.entries.length, applicable: claims.length, blocked: blocked.length, ready: ready.length, notApplicable: map.entries.length - claims.length }, + blockedIds: blocked.map((entry) => entry.id).sort((a, b) => a < b ? -1 : a > b ? 1 : 0), + readyIds: ready.map((entry) => entry.id).sort((a, b) => a < b ? -1 : a > b ? 1 : 0), + interpretation: claims.length === 0 ? "NO_CLAIMS_DECLARED" : "MISSING_EVIDENCE_BLOCKS_CLAIM", + nextTask: contract.nextTask, +}; +fs.mkdirSync(path.dirname(output), { recursive: true }); +fs.writeFileSync(output, `${JSON.stringify(audit, null, 2)}\n`); +process.stdout.write(`blender-contract-audit-generated task=${task} mode=${contract.mode} applicable=${claims.length} blocked=${blocked.length} output=${output}\n`); diff --git a/tools/web/generate-blender-core-inventory.py b/tools/web/generate-blender-core-inventory.py new file mode 100644 index 00000000..832aa5d5 --- /dev/null +++ b/tools/web/generate-blender-core-inventory.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 +"""Generate deterministic Blender 5.2 Main/Scene/Mesh/Depsgraph/core RNA inventory.""" + +import hashlib +import json +import pathlib +import sys + +import bpy + + +def text(value): + return value.decode("utf-8", errors="replace") if isinstance(value, bytes) else str(value) + + +def sha256_file(path): + digest = hashlib.sha256() + with open(path, "rb") as handle: + for chunk in iter(lambda: handle.read(1024 * 1024), b""): + digest.update(chunk) + return digest.hexdigest() + + +def class_properties(rna): + properties = [] + for prop in rna.properties: + if prop.identifier == "rna_type": + continue + value = {"identifier": prop.identifier, "type": prop.type, "readOnly": bool(prop.is_readonly)} + if hasattr(prop, "array_length"): + value["arrayLength"] = prop.array_length + properties.append(value) + properties.sort(key=lambda prop: prop["identifier"]) + return properties + + +def family_for(name): + if name == "BlendData" or name.startswith("BlendData"): + return "Main" + if name.startswith("Depsgraph"): + return "Depsgraph" + if name.startswith("Mesh") or name in {"Attribute", "AttributeGroupMesh", "BoolAttribute", "ByteColorAttribute", "FloatAttribute", "IntAttribute"}: + return "Mesh" + if name in {"Scene", "Object", "Collection", "ViewLayer", "LayerCollection", "Window", "WindowManager", "Screen", "RenderSettings", "World", "Camera", "Light", "Material", "NodeTree", "Modifier", "Constraint"}: + return "Scene" + if name in {"ID", "Image", "Curve", "Armature", "Action", "Text", "MovieClip", "Mask", "Sound", "Speaker", "GreasePencil", "Volume", "ParticleSettings", "Key", "Brush", "Palette", "Lattice", "MetaBall", "PointCloud", "Curves"}: + return "Core" + return None + + +def main(): + if "--" not in sys.argv or len(sys.argv[sys.argv.index("--") + 1:]) != 1: + raise SystemExit("usage: blender --background --factory-startup --python generate-blender-core-inventory.py -- OUTPUT.json") + output = pathlib.Path(sys.argv[sys.argv.index("--") + 1]).resolve() + version = tuple(int(value) for value in bpy.app.version) + if version != (5, 2, 0): + raise RuntimeError(f"expected Blender 5.2.0, got {version}") + entries = [] + for class_name in sorted(name for name in dir(bpy.types) if not name.startswith("_")): + family = family_for(class_name) + if not family: + continue + cls = getattr(bpy.types, class_name) + rna = getattr(cls, "bl_rna", None) + if not rna: + continue + entries.append({"family": family, "className": class_name, "rnaIdentifier": text(rna.identifier), "properties": class_properties(rna)}) + entries.sort(key=lambda entry: (entry["family"], entry["rnaIdentifier"], entry["className"])) + counts = {family: sum(1 for entry in entries if entry["family"] == family) for family in ("Main", "Scene", "Mesh", "Depsgraph", "Core")} + binary_path = pathlib.Path(bpy.app.binary_path).resolve() + inventory = { + "schemaVersion": 1, + "task": "M15-01F", + "operation": "BLENDER_CORE_INVENTORY", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "runtime": { + "blenderVersion": text(bpy.app.version_string), + "versionTuple": list(version), + "buildHash": text(bpy.app.build_hash), + "buildBranch": text(bpy.app.build_branch), + "buildPlatform": text(bpy.app.build_platform), + "buildType": text(bpy.app.build_type), + "buildDate": text(bpy.app.build_date), + "buildTime": text(bpy.app.build_time), + "binarySha256": sha256_file(binary_path), + }, + "summary": {"classCount": len(entries), "byFamily": counts}, + "classes": entries, + "nextTask": "M15-02A", + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(inventory, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"blender-core-inventory-generated classes={len(entries)} families={counts} output={output}") + + +if __name__ == "__main__": + main() diff --git a/tools/web/generate-blender-editor-inventory.py b/tools/web/generate-blender-editor-inventory.py new file mode 100644 index 00000000..9a8cca6e --- /dev/null +++ b/tools/web/generate-blender-editor-inventory.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python3 +"""Generate deterministic Blender 5.2 editor, space, workspace, and keymap inventory.""" + +import hashlib +import json +import pathlib +import sys + +import bpy + + +def text(value): + return value.decode("utf-8", errors="replace") if isinstance(value, bytes) else str(value) + + +def sha256_file(path): + digest = hashlib.sha256() + with open(path, "rb") as handle: + for chunk in iter(lambda: handle.read(1024 * 1024), b""): + digest.update(chunk) + return digest.hexdigest() + + +def enum_info(rna_type, property_name): + entries = [] + for item in rna_type.bl_rna.properties[property_name].enum_items: + entries.append({"identifier": item.identifier, "name": text(item.name), "description": text(item.description), "value": item.value}) + entries.sort(key=lambda entry: entry["identifier"]) + return entries + + +def property_info(prop): + result = {"identifier": prop.identifier, "type": prop.type, "readOnly": bool(prop.is_readonly)} + if hasattr(prop, "array_length"): + result["arrayLength"] = prop.array_length + return result + + +def space_types(): + entries = [] + for class_name in sorted(name for name in dir(bpy.types) if name.startswith("Space")): + cls = getattr(bpy.types, class_name) + try: + if not isinstance(cls, type) or cls is bpy.types.Space or not issubclass(cls, bpy.types.Space): + continue + rna = getattr(cls, "bl_rna", None) + if not rna: + continue + props = [property_info(prop) for prop in rna.properties if prop.identifier != "rna_type"] + props.sort(key=lambda prop: prop["identifier"]) + entries.append({"className": class_name, "rnaIdentifier": text(rna.identifier), "properties": props}) + except (AttributeError, RuntimeError, TypeError): + continue + return entries + + +def keymaps(): + bpy.utils.keyconfig_init() + keyconfig = bpy.context.window_manager.keyconfigs.default + maps = [] + for keymap in sorted(keyconfig.keymaps, key=lambda value: f"{value.name}:{value.space_type}:{value.region_type}"): + items = [] + for item in keymap.keymap_items: + items.append({ + "idname": text(item.idname), + "type": text(item.type), + "value": text(item.value), + "ctrl": bool(item.ctrl), + "shift": bool(item.shift), + "alt": bool(item.alt), + "oskey": bool(item.oskey), + "any": bool(item.any), + "repeat": bool(item.repeat), + "keyModifier": text(item.key_modifier), + "direction": text(item.direction), + "mapType": text(item.map_type), + "active": bool(item.active), + }) + items.sort(key=lambda item: tuple(item.values())) + maps.append({"name": text(keymap.name), "spaceType": text(keymap.space_type), "regionType": text(keymap.region_type), "modal": bool(keymap.is_modal), "items": items}) + return maps + + +def main(): + if "--" not in sys.argv or len(sys.argv[sys.argv.index("--") + 1:]) != 1: + raise SystemExit("usage: blender --background --factory-startup --python generate-blender-editor-inventory.py -- OUTPUT.json") + output = pathlib.Path(sys.argv[sys.argv.index("--") + 1]).resolve() + version = tuple(int(value) for value in bpy.app.version) + if version != (5, 2, 0): + raise RuntimeError(f"expected Blender 5.2.0, got {version}") + areas = enum_info(bpy.types.Area, "type") + regions = enum_info(bpy.types.Region, "type") + spaces = enum_info(bpy.types.Space, "type") + workspace_modes = enum_info(bpy.types.WorkSpace, "object_mode") + space_classes = space_types() + maps = keymaps() + binary_path = pathlib.Path(bpy.app.binary_path).resolve() + inventory = { + "schemaVersion": 1, + "task": "M15-01E", + "operation": "BLENDER_EDITOR_INVENTORY", + "sourceAnchor": "blender-5.2.0/source/blender/editors", + "runtime": { + "blenderVersion": text(bpy.app.version_string), + "versionTuple": list(version), + "buildHash": text(bpy.app.build_hash), + "buildBranch": text(bpy.app.build_branch), + "buildPlatform": text(bpy.app.build_platform), + "buildType": text(bpy.app.build_type), + "buildDate": text(bpy.app.build_date), + "buildTime": text(bpy.app.build_time), + "binarySha256": sha256_file(binary_path), + }, + "summary": {"areaTypeCount": len(areas), "regionTypeCount": len(regions), "spaceTypeCount": len(spaces), "spaceClassCount": len(space_classes), "workspaceModeCount": len(workspace_modes), "keymapCount": len(maps), "keymapItemCount": sum(len(keymap["items"]) for keymap in maps)}, + "areaTypes": areas, + "regionTypes": regions, + "spaceTypes": spaces, + "spaceClasses": space_classes, + "workspaceModes": workspace_modes, + "keymaps": maps, + "nextTask": "M15-01F", + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(inventory, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"blender-editor-inventory-generated areas={len(areas)} regions={len(regions)} spaces={len(spaces)} keymaps={len(maps)} items={inventory['summary']['keymapItemCount']} output={output}") + + +if __name__ == "__main__": + main() diff --git a/tools/web/generate-blender-family-inventory.py b/tools/web/generate-blender-family-inventory.py new file mode 100644 index 00000000..1eec9cee --- /dev/null +++ b/tools/web/generate-blender-family-inventory.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python3 +"""Generate deterministic Blender 5.2 modifier, constraint, and node inventories.""" + +import hashlib +import json +import pathlib +import sys + +import bpy + + +def text(value): + return value.decode("utf-8", errors="replace") if isinstance(value, bytes) else str(value) + + +def sha256_file(path): + digest = hashlib.sha256() + with open(path, "rb") as handle: + for chunk in iter(lambda: handle.read(1024 * 1024), b""): + digest.update(chunk) + return digest.hexdigest() + + +def property_info(prop): + result = { + "identifier": prop.identifier, + "type": prop.type, + "readOnly": bool(prop.is_readonly), + } + if hasattr(prop, "array_length"): + result["arrayLength"] = prop.array_length + return result + + +def enum_item_info(item): + return { + "identifier": item.identifier, + "name": text(item.name), + "description": text(item.description), + "value": item.value, + } + + +def enum_inventory(rna_type, property_name): + enum = rna_type.bl_rna.properties[property_name].enum_items + entries = [enum_item_info(item) for item in enum] + entries.sort(key=lambda item: item["identifier"]) + return entries + + +def node_properties(rna): + properties = [property_info(prop) for prop in rna.properties if prop.identifier != "rna_type"] + properties.sort(key=lambda prop: prop["identifier"]) + return properties + + +def node_inventory(): + entries = [] + for class_name in sorted(name for name in dir(bpy.types) if not name.startswith("_")): + cls = getattr(bpy.types, class_name) + try: + if not isinstance(cls, type) or not issubclass(cls, bpy.types.Node) or cls is bpy.types.Node: + continue + is_registered = getattr(cls, "is_registered_node_type", None) + if is_registered is None or not is_registered(): + continue + rna = getattr(cls, "bl_rna", None) + identifier = text(getattr(rna, "identifier", "")) if rna else "" + family = next((prefix[:-4] for prefix in ("ShaderNode", "GeometryNode", "CompositorNode") if identifier.startswith(prefix)), None) + if not family: + continue + entries.append({ + "family": family, + "className": class_name, + "rnaIdentifier": identifier, + "properties": node_properties(rna), + }) + except (AttributeError, RuntimeError, TypeError): + continue + entries.sort(key=lambda entry: (entry["family"], entry["rnaIdentifier"], entry["className"])) + return entries + + +def main(): + if "--" not in sys.argv or len(sys.argv[sys.argv.index("--") + 1:]) != 1: + raise SystemExit("usage: blender --background --factory-startup --python generate-blender-family-inventory.py -- OUTPUT.json") + output = pathlib.Path(sys.argv[sys.argv.index("--") + 1]).resolve() + version = tuple(int(value) for value in bpy.app.version) + if version != (5, 2, 0): + raise RuntimeError(f"expected Blender 5.2.0, got {version}") + modifiers = enum_inventory(bpy.types.Modifier, "type") + constraints = enum_inventory(bpy.types.Constraint, "type") + nodes = node_inventory() + family_counts = {family: sum(1 for node in nodes if node["family"] == family) for family in ("Shader", "Geometry", "Compositor")} + binary_path = pathlib.Path(bpy.app.binary_path).resolve() + inventory = { + "schemaVersion": 1, + "task": "M15-01C", + "operation": "BLENDER_FAMILY_INVENTORY", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "runtime": { + "blenderVersion": text(bpy.app.version_string), + "versionTuple": list(version), + "buildHash": text(bpy.app.build_hash), + "buildBranch": text(bpy.app.build_branch), + "buildPlatform": text(bpy.app.build_platform), + "buildType": text(bpy.app.build_type), + "buildDate": text(bpy.app.build_date), + "buildTime": text(bpy.app.build_time), + "binarySha256": sha256_file(binary_path), + }, + "summary": { + "modifierCount": len(modifiers), + "constraintCount": len(constraints), + "nodeCount": len(nodes), + "nodesByFamily": family_counts, + }, + "modifiers": modifiers, + "constraints": constraints, + "nodes": nodes, + "nextTask": "M15-01D", + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(inventory, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"blender-family-inventory-generated modifiers={len(modifiers)} constraints={len(constraints)} nodes={len(nodes)} output={output}") + + +if __name__ == "__main__": + main() diff --git a/tools/web/generate-blender-format-inventory.py b/tools/web/generate-blender-format-inventory.py new file mode 100644 index 00000000..ffe042fb --- /dev/null +++ b/tools/web/generate-blender-format-inventory.py @@ -0,0 +1,127 @@ +#!/usr/bin/env python3 +"""Generate deterministic Blender 5.2 sequencer, physics, and I/O inventories.""" + +import hashlib +import json +import pathlib +import re +import sys + +import bpy + + +def text(value): + return value.decode("utf-8", errors="replace") if isinstance(value, bytes) else str(value) + + +def sha256_file(path): + digest = hashlib.sha256() + with open(path, "rb") as handle: + for chunk in iter(lambda: handle.read(1024 * 1024), b""): + digest.update(chunk) + return digest.hexdigest() + + +def property_info(prop): + result = {"identifier": prop.identifier, "type": prop.type, "readOnly": bool(prop.is_readonly)} + if hasattr(prop, "array_length"): + result["arrayLength"] = prop.array_length + return result + + +def enum_item_info(item): + return {"identifier": item.identifier, "name": text(item.name), "description": text(item.description), "value": item.value} + + +def enum_inventory(rna_type, property_name): + entries = [enum_item_info(item) for item in rna_type.bl_rna.properties[property_name].enum_items] + entries.sort(key=lambda item: item["identifier"]) + return entries + + +def class_properties(rna): + entries = [property_info(prop) for prop in rna.properties if prop.identifier != "rna_type"] + entries.sort(key=lambda prop: prop["identifier"]) + return entries + + +def physics_inventory(): + marker = re.compile(r"(Particle|Boid|Cloth|SoftBody|RigidBody|Fluid|DynamicPaint|Effector|Collision|Field|PointCache|BakeSettings)") + entries = [] + for class_name in sorted(name for name in dir(bpy.types) if not name.startswith("_")): + cls = getattr(bpy.types, class_name) + if not isinstance(cls, type) or not marker.search(class_name) or re.match(r"[A-Z0-9]+_(?:PT|OT|MT|UL)_", class_name): + continue + rna = getattr(cls, "bl_rna", None) + if not rna or class_name.endswith("Node"): + continue + entries.append({"className": class_name, "rnaIdentifier": text(rna.identifier), "properties": class_properties(rna)}) + entries.sort(key=lambda entry: (entry["rnaIdentifier"], entry["className"])) + return entries + + +def operator_inventory(): + entries = [] + for module_name in sorted(name for name in dir(bpy.ops) if not name.startswith("_")): + module = getattr(bpy.ops, module_name) + for operator_name in sorted(name for name in dir(module) if not name.startswith("_")): + operator_path = f"{module_name}.{operator_name}" + if not re.search(r"(?:import|export)", operator_path, re.IGNORECASE): + continue + try: + operator = getattr(module, operator_name) + rna = operator.get_rna_type() + properties = class_properties(rna) + try: + poll = bool(operator.poll()) + poll_error = None + except (AttributeError, RuntimeError) as error: + poll = None + poll_error = type(error).__name__ + entries.append({"operator": operator_path, "rnaIdentifier": text(rna.identifier), "poll": poll, "pollError": poll_error, "properties": properties}) + except (AttributeError, KeyError, RuntimeError): + continue + entries.sort(key=lambda entry: entry["operator"]) + return entries + + +def main(): + if "--" not in sys.argv or len(sys.argv[sys.argv.index("--") + 1:]) != 1: + raise SystemExit("usage: blender --background --factory-startup --python generate-blender-format-inventory.py -- OUTPUT.json") + output = pathlib.Path(sys.argv[sys.argv.index("--") + 1]).resolve() + version = tuple(int(value) for value in bpy.app.version) + if version != (5, 2, 0): + raise RuntimeError(f"expected Blender 5.2.0, got {version}") + strips = enum_inventory(bpy.types.Strip, "type") + physics = physics_inventory() + io_operators = operator_inventory() + binary_path = pathlib.Path(bpy.app.binary_path).resolve() + inventory = { + "schemaVersion": 1, + "task": "M15-01D", + "operation": "BLENDER_FORMAT_INVENTORY", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "runtime": { + "blenderVersion": text(bpy.app.version_string), + "versionTuple": list(version), + "buildHash": text(bpy.app.build_hash), + "buildBranch": text(bpy.app.build_branch), + "buildPlatform": text(bpy.app.build_platform), + "buildType": text(bpy.app.build_type), + "buildDate": text(bpy.app.build_date), + "buildTime": text(bpy.app.build_time), + "binarySha256": sha256_file(binary_path), + }, + "summary": {"stripTypeCount": len(strips), "physicsTypeCount": len(physics), "ioOperatorCount": len(io_operators)}, + "stripTypes": strips, + "physicsTypes": physics, + "ioOperators": io_operators, + "nextTask": "M15-01E", + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(inventory, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"blender-format-inventory-generated strips={len(strips)} physics={len(physics)} io={len(io_operators)} output={output}") + + +if __name__ == "__main__": + main() diff --git a/tools/web/generate-blender-gap-audit.mjs b/tools/web/generate-blender-gap-audit.mjs new file mode 100644 index 00000000..f7261c48 --- /dev/null +++ b/tools/web/generate-blender-gap-audit.mjs @@ -0,0 +1,37 @@ +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const inputPath = path.join(root, "tests/golden/M15-02A/blender-parity-map.json"); +const output = path.resolve(process.argv[2] ?? path.join(root, "tests/golden/M15-02B/blender-gap-audit.json")); +const map = JSON.parse(fs.readFileSync(inputPath, "utf8")); +const seen = new Set(); +const duplicateIds = []; +const unmapped = []; +const summaryOnly = []; +const proxyOnly = []; +const routeOnly = []; +for (const entry of map.entries) { + if (seen.has(entry.id)) duplicateIds.push(entry.id); + seen.add(entry.id); + if (!entry.ownerFamily || !entry.implementationClass || !Array.isArray(entry.tests) || !Array.isArray(entry.evidence)) unmapped.push(entry.id); + if (entry.implementationClass === "INVENTORY_BASELINE") summaryOnly.push(entry.id); + if (entry.implementationClass === "PROXY_ONLY") proxyOnly.push(entry.id); + if (entry.implementationClass === "ROUTE_ONLY") routeOnly.push(entry.id); +} +for (const values of [duplicateIds, unmapped, summaryOnly, proxyOnly, routeOnly]) values.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); +const audit = { + schemaVersion: 1, + task: "M15-02B", + operation: "BLENDER_PARITY_GAP_AUDIT", + source: { path: "tests/golden/M15-02A/blender-parity-map.json", sha256: crypto.createHash("sha256").update(fs.readFileSync(inputPath)).digest("hex") }, + summary: { inventoried: map.entries.length, unmapped: unmapped.length, duplicate: duplicateIds.length, summaryOnly: summaryOnly.length, proxyOnly: proxyOnly.length, routeOnly: routeOnly.length, gapCount: unmapped.length + duplicateIds.length + summaryOnly.length + proxyOnly.length + routeOnly.length }, + gaps: { unmapped, duplicateIds, summaryOnly, proxyOnly, routeOnly }, + interpretation: { inventoryBaseline: "SUMMARY_ONLY", parityClaims: "NONE", nextTaskPerEntry: false }, + nextTask: "M15-02C", +}; +fs.mkdirSync(path.dirname(output), { recursive: true }); +fs.writeFileSync(output, `${JSON.stringify(audit, null, 2)}\n`); +process.stdout.write(`blender-gap-audit-generated inventoried=${audit.summary.inventoried} gaps=${audit.summary.gapCount} summaryOnly=${audit.summary.summaryOnly} output=${output}\n`); diff --git a/tools/web/generate-blender-next-task-plan.mjs b/tools/web/generate-blender-next-task-plan.mjs new file mode 100644 index 00000000..86727bde --- /dev/null +++ b/tools/web/generate-blender-next-task-plan.mjs @@ -0,0 +1,70 @@ +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const output = path.resolve(process.argv[2] ?? path.join(root, "tests/golden/M15-03A/next-task-plan.json")); +const mapPath = path.join(root, "tests/golden/M15-02A/blender-parity-map.json"); +const gapPath = path.join(root, "tests/golden/M15-02B/blender-gap-audit.json"); +const map = JSON.parse(fs.readFileSync(mapPath, "utf8")); +const gaps = JSON.parse(fs.readFileSync(gapPath, "utf8")); +const completionPath = path.join(root, "tests/golden/M15-03A/completed-gap-tasks.json"); +const completedIds = fs.existsSync(completionPath) ? new Set(JSON.parse(fs.readFileSync(completionPath, "utf8"))) : new Set(); +const byId = new Map(map.entries.map((entry) => [entry.id, entry])); +const waveFor = (owner) => { + if (["Main", "Mesh", "MODIFIER", "RNA_DATABLOCK", "OPERATOR"].includes(owner)) return "M16"; + if (owner === "CONSTRAINT") return "M17"; + if (["SHADER_NODE", "GEOMETRY_NODE", "COMPOSITOR_NODE"].includes(owner)) return "M18"; + if (owner === "Core") return "M19"; + if (["PHYSICS", "SEQUENCER"].includes(owner)) return "M20"; + if (["IMPORT_EXPORT", "EDITOR", "REGION", "SPACE", "WORKSPACE", "KEYMAP"].includes(owner)) return "M21"; + return "M22"; +}; +const safeName = (value) => value.replace(/[^A-Za-z0-9_.-]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 96) || "gap"; +const sourceGaps = [...gaps.gaps.unmapped, ...gaps.gaps.summaryOnly, ...gaps.gaps.proxyOnly, ...gaps.gaps.routeOnly]; +const uniqueGaps = [...new Set(sourceGaps)]; +const work = uniqueGaps.map((gapId) => { + const mapping = byId.get(gapId); + if (!mapping) throw new Error(`gap has no parity map entry: ${gapId}`); + return { gapId, mapping, wave: waveFor(mapping.ownerFamily) }; +}); +work.sort((a, b) => a.wave.localeCompare(b.wave) || (a.gapId < b.gapId ? -1 : a.gapId > b.gapId ? 1 : 0)); +const waveCounts = new Map(); +const activeIndex = work.findIndex((value) => !completedIds.has(value.gapId)); +const tasks = work.map((value, index) => { + const serial = (waveCounts.get(value.wave) ?? 0) + 1; + waveCounts.set(value.wave, serial); + const id = `${value.wave}-GAP-${String(serial).padStart(5, "0")}`; + const fixturePath = `tests/files/web/generated/${id}-${safeName(value.gapId)}.blend`; + return { + id, + gapId: value.gapId, + ownerFamily: value.mapping.ownerFamily, + sourceTask: value.mapping.task, + state: completedIds.has(value.gapId) ? "completed" : index === activeIndex ? "active" : "pending", + dependencies: [], + targetImplementationClass: "LOCAL_EXACT", + fixture: { path: fixturePath, state: "REQUIRED" }, + desktopCommand: `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/${id}.py -- ${fixturePath}`, + webCommand: `npm --prefix web run test:generated-gap -- --task ${id}`, + comparator: `node tools/web/check-generated-gap.mjs --task ${id}`, + exitCriteria: ["desktop fixture evidence exists", "WASM uses the same fixture", "comparator passes", "save/reopen preserves Main", "manifest hashes all artifacts"], + }; +}); +const sha256File = (file) => crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex"); +const completionBytes = fs.readFileSync(completionPath); +const plan = { + schemaVersion: 1, + task: "M15-03A", + operation: "BLENDER_NEXT_TASK_PLAN", + sources: { parityMap: { path: "tests/golden/M15-02A/blender-parity-map.json", sha256: sha256File(mapPath) }, gapAudit: { path: "tests/golden/M15-02B/blender-gap-audit.json", sha256: sha256File(gapPath) }, completions: { path: "tests/golden/M15-03A/completed-gap-tasks.json", sha256: crypto.createHash("sha256").update(completionBytes).digest("hex") } }, + summary: { taskCount: tasks.length, active: tasks.filter((task) => task.state === "active").length, pending: tasks.filter((task) => task.state === "pending").length, completed: tasks.filter((task) => task.state === "completed").length, blocked: tasks.filter((task) => task.state === "blocked").length, byWave: Object.fromEntries([...waveCounts.entries()]) }, + tasks, + firstTask: tasks.find((task) => task.state === "active")?.id ?? null, + closureGate: "M15-03E", + nextTask: "M15-03B", +}; +fs.mkdirSync(path.dirname(output), { recursive: true }); +fs.writeFileSync(output, `${JSON.stringify(plan, null, 2)}\n`); +process.stdout.write(`blender-next-task-plan-generated tasks=${tasks.length} active=${plan.summary.active} first=${plan.firstTask} output=${output}\n`); diff --git a/tools/web/generate-blender-operator-inventory.py b/tools/web/generate-blender-operator-inventory.py new file mode 100644 index 00000000..5d77b4fb --- /dev/null +++ b/tools/web/generate-blender-operator-inventory.py @@ -0,0 +1,116 @@ +#!/usr/bin/env python3 +"""Generate a deterministic operator/RNA inventory from pinned Blender 5.2.""" + +import hashlib +import json +import pathlib +import sys + +import bpy + + +def decode(value): + return value.decode("utf-8", errors="replace") if isinstance(value, bytes) else str(value) + + +def binary_sha256(path): + digest = hashlib.sha256() + with open(path, "rb") as handle: + for block in iter(lambda: handle.read(1024 * 1024), b""): + digest.update(block) + return digest.hexdigest() + + +def property_info(prop): + result = {"identifier": prop.identifier, "type": prop.type} + if hasattr(prop, "array_length"): + result["arrayLength"] = prop.array_length + return result + + +def operator_info(module_name, operator_name): + operator_path = f"{module_name}.{operator_name}" + try: + operator = getattr(getattr(bpy.ops, module_name), operator_name) + rna = operator.get_rna_type() + properties = [property_info(prop) for prop in rna.properties if prop.identifier != "rna_type"] + properties.sort(key=lambda prop: prop["identifier"]) + try: + poll = bool(operator.poll()) + poll_error = None + except (AttributeError, RuntimeError) as error: + poll = None + poll_error = type(error).__name__ + return { + "operator": operator_path, + "rnaIdentifier": rna.identifier, + "registered": True, + "poll": poll, + "pollError": poll_error, + "properties": properties, + } + except (AttributeError, KeyError, RuntimeError) as error: + return { + "operator": operator_path, + "rnaIdentifier": None, + "registered": False, + "poll": None, + "pollError": type(error).__name__, + "properties": [], + } + + +def main(): + if "--" not in sys.argv or len(sys.argv[sys.argv.index("--") + 1:]) != 1: + raise SystemExit("usage: blender --background --factory-startup --python generate-blender-operator-inventory.py -- OUTPUT.json") + output = pathlib.Path(sys.argv[sys.argv.index("--") + 1]).resolve() + version = tuple(int(value) for value in bpy.app.version) + if version != (5, 2, 0): + raise RuntimeError(f"expected Blender 5.2.0, got {version}") + operators = [] + for module_name in sorted(name for name in dir(bpy.ops) if not name.startswith("_")): + try: + module = getattr(bpy.ops, module_name) + names = sorted(name for name in dir(module) if not name.startswith("_")) + except (AttributeError, RuntimeError): + continue + for operator_name in names: + try: + value = getattr(module, operator_name) + if not hasattr(value, "get_rna_type"): + continue + except (AttributeError, RuntimeError): + continue + operators.append(operator_info(module_name, operator_name)) + operators.sort(key=lambda entry: entry["operator"]) + operator_ids = [entry["operator"] for entry in operators] + if len(operator_ids) != len(set(operator_ids)): + raise RuntimeError("duplicate Blender operator idname") + binary_path = pathlib.Path(bpy.app.binary_path).resolve() + inventory = { + "schemaVersion": 1, + "task": "M15-01B", + "operation": "BLENDER_OPERATOR_INVENTORY", + "sourceAnchor": "blender-5.2.0/source/blender/editors", + "runtime": { + "blenderVersion": decode(bpy.app.version_string), + "versionTuple": list(version), + "buildHash": decode(bpy.app.build_hash), + "buildBranch": decode(bpy.app.build_branch), + "buildPlatform": decode(bpy.app.build_platform), + "buildType": decode(bpy.app.build_type), + "buildDate": decode(bpy.app.build_date), + "buildTime": decode(bpy.app.build_time), + "binarySha256": binary_sha256(binary_path), + }, + "summary": {"count": len(operators), "registered": sum(1 for entry in operators if entry["registered"]), "pollTrue": sum(1 for entry in operators if entry["poll"] is True), "pollFalse": sum(1 for entry in operators if entry["poll"] is False), "pollUnknown": sum(1 for entry in operators if entry["poll"] is None)}, + "operators": operators, + "nextTask": "M15-01C", + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(inventory, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"blender-operator-inventory-generated count={len(operators)} blender={bpy.app.version_string} output={output}") + + +if __name__ == "__main__": + main() diff --git a/tools/web/generate-blender-parity-map.mjs b/tools/web/generate-blender-parity-map.mjs new file mode 100644 index 00000000..a1c597e5 --- /dev/null +++ b/tools/web/generate-blender-parity-map.mjs @@ -0,0 +1,69 @@ +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const output = path.resolve(process.argv[2] ?? path.join(root, "tests/golden/M15-02A/blender-parity-map.json")); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const read = (relative) => { const file = path.join(root, relative); const bytes = fs.readFileSync(file); return { relative, bytes, value: JSON.parse(bytes) }; }; +const sources = [ + read("tests/golden/M15-01A/blender-rna-datablock-inventory.json"), + read("tests/golden/M15-01B/blender-operator-inventory.json"), + read("tests/golden/M15-01C/blender-family-inventory.json"), + read("tests/golden/M15-01D/blender-format-inventory.json"), + read("tests/golden/M15-01E/blender-editor-inventory.json"), + read("tests/golden/M15-01F/blender-core-inventory.json"), +]; + +const checkerByTask = { + "M15-01A": "tools/web/check-blender-rna-datablock-inventory.mjs", + "M15-01B": "tools/web/check-blender-operator-inventory.mjs", + "M15-01C": "tools/web/check-blender-family-inventory.mjs", + "M15-01D": "tools/web/check-blender-format-inventory.mjs", + "M15-01E": "tools/web/check-blender-editor-inventory.mjs", + "M15-01F": "tools/web/check-blender-core-inventory.mjs", +}; + +function item(id, task, ownerFamily, source, detail = {}) { + return { id, task, ownerFamily, implementationClass: "INVENTORY_BASELINE", coverage: "INVENTORIED_ONLY", tests: [checkerByTask[task]], evidence: [`tests/golden/${task}/manifest.json`], source, ...detail }; +} + +const entries = []; +for (const source of sources) { + const inv = source.value; + const task = inv.task; + if (task === "M15-01A") for (const value of inv.dataBlockTypes) entries.push(item(`datablock:${value.rnaIdentifier}`, task, "RNA_DATABLOCK", source.relative, { rnaIdentifier: value.rnaIdentifier })); + if (task === "M15-01B") for (const value of inv.operators) entries.push(item(`operator:${value.operator}`, task, "OPERATOR", source.relative, { operator: value.operator, poll: value.poll })); + if (task === "M15-01C") { + for (const value of inv.modifiers) entries.push(item(`modifier:${value.identifier}`, task, "MODIFIER", source.relative, { identifier: value.identifier })); + for (const value of inv.constraints) entries.push(item(`constraint:${value.identifier}`, task, "CONSTRAINT", source.relative, { identifier: value.identifier })); + for (const value of inv.nodes) entries.push(item(`node:${value.family}:${value.rnaIdentifier}`, task, `${value.family.toUpperCase()}_NODE`, source.relative, { identifier: value.rnaIdentifier })); + } + if (task === "M15-01D") { + for (const value of inv.stripTypes) entries.push(item(`strip:${value.identifier}`, task, "SEQUENCER", source.relative, { identifier: value.identifier })); + for (const value of inv.physicsTypes) entries.push(item(`physics:${value.rnaIdentifier}`, task, "PHYSICS", source.relative, { identifier: value.rnaIdentifier })); + for (const value of inv.ioOperators) entries.push(item(`io:${value.operator}`, task, "IMPORT_EXPORT", source.relative, { operator: value.operator })); + } + if (task === "M15-01E") { + for (const value of inv.areaTypes) entries.push(item(`area:${value.identifier}`, task, "EDITOR", source.relative, { identifier: value.identifier })); + for (const value of inv.regionTypes) entries.push(item(`region:${value.identifier}`, task, "REGION", source.relative, { identifier: value.identifier })); + for (const value of inv.spaceTypes) entries.push(item(`space:${value.identifier}`, task, "SPACE", source.relative, { identifier: value.identifier })); + for (const value of inv.spaceClasses) entries.push(item(`space-class:${value.rnaIdentifier}`, task, "SPACE", source.relative, { identifier: value.rnaIdentifier })); + for (const value of inv.workspaceModes) entries.push(item(`workspace:${value.identifier}`, task, "WORKSPACE", source.relative, { identifier: value.identifier })); + for (const value of inv.keymaps) { + const key = `${value.name}:${value.spaceType}:${value.regionType}`; + entries.push(item(`keymap:${key}`, task, "KEYMAP", source.relative, { name: value.name, spaceType: value.spaceType, regionType: value.regionType, itemCount: value.items.length })); + for (const [index, keymapItem] of value.items.entries()) entries.push(item(`keymap-item:${key}:${index}`, task, "KEYMAP", source.relative, { keymap: key, idname: keymapItem.idname, type: keymapItem.type, value: keymapItem.value })); + } + } + if (task === "M15-01F") for (const value of inv.classes) entries.push(item(`rna:${value.family}:${value.rnaIdentifier}`, task, value.family, source.relative, { identifier: value.rnaIdentifier })); +} +entries.sort((a, b) => a.id < b.id ? -1 : a.id > b.id ? 1 : 0); +const ids = entries.map((entry) => entry.id); +if (new Set(ids).size !== ids.length) throw new Error("duplicate parity map IDs"); +const inventoryRefs = Object.fromEntries(sources.map((source) => [source.value.task, { path: source.relative, sha256: sha256(source.bytes) }])); +const map = { schemaVersion: 1, task: "M15-02A", operation: "BLENDER_PARITY_MAPPING", statusAxis: "INVENTORY_ONLY", implementationClasses: ["INVENTORY_BASELINE"], sourceInventories: inventoryRefs, summary: { mapped: entries.length, byTask: Object.fromEntries(sources.map((source) => [source.value.task, entries.filter((entry) => entry.task === source.value.task).length])), ownerFamilies: [...new Set(entries.map((entry) => entry.ownerFamily))].sort() }, entries, nextTask: "M15-02B" }; +fs.mkdirSync(path.dirname(output), { recursive: true }); +fs.writeFileSync(output, `${JSON.stringify(map, null, 2)}\n`); +process.stdout.write(`blender-parity-map-generated entries=${entries.length} output=${output} sha256=${sha256(fs.readFileSync(output))}\n`); diff --git a/tools/web/generate-blender-rna-datablock-inventory.py b/tools/web/generate-blender-rna-datablock-inventory.py new file mode 100644 index 00000000..a88271c1 --- /dev/null +++ b/tools/web/generate-blender-rna-datablock-inventory.py @@ -0,0 +1,75 @@ +#!/usr/bin/env python3 +"""Generate the Blender 5.2 RNA data-block type inventory from the pinned runtime.""" + +import hashlib +import json +import pathlib +import sys + +import bpy + + +def decode(value): + return value.decode("utf-8", errors="replace") if isinstance(value, bytes) else str(value) + + +def binary_sha256(path): + digest = hashlib.sha256() + with open(path, "rb") as handle: + for block in iter(lambda: handle.read(1024 * 1024), b""): + digest.update(block) + return digest.hexdigest() + + +def main(): + if "--" not in sys.argv or len(sys.argv[sys.argv.index("--") + 1:]) != 1: + raise SystemExit("usage: blender --background --factory-startup --python generate-blender-rna-datablock-inventory.py -- OUTPUT.json") + output = pathlib.Path(sys.argv[sys.argv.index("--") + 1]).resolve() + version = tuple(int(value) for value in bpy.app.version) + if version != (5, 2, 0): + raise RuntimeError(f"expected Blender 5.2.0, got {version}") + binary_path = pathlib.Path(bpy.app.binary_path).resolve() + entries = [] + for cls in bpy.types.ID.__subclasses__(): + rna = getattr(cls, "bl_rna", None) + identifier = getattr(rna, "identifier", "") if rna else "" + if not identifier: + raise RuntimeError(f"RNA ID type {cls.__name__} has no identifier") + entries.append({ + "parityId": f"BLENDER52_RNA_ID_{identifier.upper()}", + "rnaIdentifier": identifier, + "typeName": cls.__name__, + "baseType": "ID", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + }) + entries.sort(key=lambda entry: (entry["rnaIdentifier"], entry["typeName"])) + identifiers = [entry["rnaIdentifier"] for entry in entries] + if len(identifiers) != len(set(identifiers)): + raise RuntimeError("duplicate RNA data-block identifier") + inventory = { + "schemaVersion": 1, + "task": "M15-01A", + "operation": "BLENDER_RNA_DATABLOCK_INVENTORY", + "sourceAnchor": "blender-5.2.0/source/blender/makesrna", + "runtime": { + "blenderVersion": decode(bpy.app.version_string), + "versionTuple": list(version), + "buildHash": decode(bpy.app.build_hash), + "buildBranch": decode(bpy.app.build_branch), + "buildPlatform": decode(bpy.app.build_platform), + "buildType": decode(bpy.app.build_type), + "buildDate": decode(bpy.app.build_date), + "buildTime": decode(bpy.app.build_time), + "binarySha256": binary_sha256(binary_path), + }, + "summary": {"count": len(entries), "baseType": "ID"}, + "dataBlockTypes": entries, + "nextTask": "M15-01B", + } + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(json.dumps(inventory, indent=2, sort_keys=True) + "\n", encoding="utf-8") + print(f"blender-rna-datablock-inventory-generated count={len(entries)} blender={bpy.app.version_string} output={output}") + + +if __name__ == "__main__": + main() diff --git a/tools/web/generate-brush-fixture.py b/tools/web/generate-brush-fixture.py new file mode 100644 index 00000000..ac343bda --- /dev/null +++ b/tools/web/generate-brush-fixture.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python3 +import sys +import bpy + +def main(output): + bpy.ops.wm.read_factory_settings(use_empty=True) + brush = bpy.data.brushes.new("WebGapBrush") + brush.size = 42 + brush.strength = 0.65 + brush.hardness = 0.8 + brush.spacing = 17 + brush.jitter = 0.2 + brush.sculpt_brush_type = "DRAW" + bpy.ops.wm.save_as_mainfile(filepath=output, compress=True) + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: raise SystemExit("usage: blender -b --python generate-brush-fixture.py -- OUTPUT") + main(args[0]) diff --git a/tools/web/generate-camera-fixture.py b/tools/web/generate-camera-fixture.py new file mode 100644 index 00000000..b07666d4 --- /dev/null +++ b/tools/web/generate-camera-fixture.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +import sys +import bpy + +def main(output): + bpy.ops.wm.read_factory_settings(use_empty=True) + camera = bpy.data.cameras.new("WebGapCamera") + camera.lens = 52.0 + camera.clip_start = 0.1 + camera.clip_end = 2500.0 + camera.sensor_width = 36.0 + camera.type = "PERSP" + object_ = bpy.data.objects.new("WebGapCameraObject", camera) + bpy.context.collection.objects.link(object_) + object_.location = (1.0, -2.0, 3.0) + bpy.ops.wm.save_as_mainfile(filepath=output, compress=True) + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: raise SystemExit("usage: blender -b --python generate-camera-fixture.py -- OUTPUT") + main(args[0]) diff --git a/tools/web/generate-collection-fixture.py b/tools/web/generate-collection-fixture.py new file mode 100644 index 00000000..544e388c --- /dev/null +++ b/tools/web/generate-collection-fixture.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 +import sys +import bpy + +def main(output): + bpy.ops.wm.read_factory_settings(use_empty=True) + parent = bpy.data.collections.new("WebGapCollection") + child = bpy.data.collections.new("WebGapChild") + bpy.context.scene.collection.children.link(parent) + parent.children.link(child) + mesh = bpy.data.meshes.new("WebGapCollectionMesh") + mesh.from_pydata([(0, 0, 0), (1, 0, 0), (0, 1, 0)], [], [(0, 1, 2)]) + object_ = bpy.data.objects.new("WebGapCollectionObject", mesh) + child.objects.link(object_) + bpy.ops.wm.save_as_mainfile(filepath=output, compress=True) + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: raise SystemExit("usage: blender -b --python generate-collection-fixture.py -- OUTPUT") + main(args[0]) diff --git a/tools/web/generate-curve-fixture.py b/tools/web/generate-curve-fixture.py new file mode 100644 index 00000000..1bc7bd11 --- /dev/null +++ b/tools/web/generate-curve-fixture.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python3 +import sys +import bpy + +def main(output): + bpy.ops.wm.read_factory_settings(use_empty=True) + curve = bpy.data.curves.new("WebGapCurve", type="CURVE") + curve.dimensions = "3D" + curve.resolution_u = 8 + spline = curve.splines.new("BEZIER") + spline.bezier_points.add(2) + points = [((-1, 0, 0), (1, 1, 1)), ((0, 1, 0.5), (1, 1, 1)), ((1, 0, 1), (1, 1, 1))] + for point, (co, handle) in zip(spline.bezier_points, points): + point.co = co + point.handle_left_type = "AUTO" + point.handle_right_type = "AUTO" + spline.use_cyclic_u = False + object_ = bpy.data.objects.new("WebGapCurveObject", curve) + bpy.context.collection.objects.link(object_) + bpy.ops.wm.save_as_mainfile(filepath=output, compress=True) + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: raise SystemExit("usage: blender -b --python generate-curve-fixture.py -- OUTPUT") + main(args[0]) diff --git a/tools/web/generate-curves-fixture.py b/tools/web/generate-curves-fixture.py new file mode 100644 index 00000000..a2a20834 --- /dev/null +++ b/tools/web/generate-curves-fixture.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +import sys +import bpy + +def main(output): + bpy.ops.wm.read_factory_settings(use_empty=True) + legacy = bpy.data.curves.new("WebGapCurvesSeed", "CURVE") + legacy.dimensions = "3D" + spline = legacy.splines.new("BEZIER") + spline.bezier_points.add(3) + for point, co in zip(spline.bezier_points, ((-1.5, 0, 0), (-0.5, 0.3, 0.5), (0.5, 0, 0), (1.5, 0.3, 0.5))): + point.co = co + point.handle_left_type = "AUTO" + point.handle_right_type = "AUTO" + object_ = bpy.data.objects.new("WebGapCurvesObject", legacy) + bpy.context.collection.objects.link(object_) + bpy.context.view_layer.objects.active = object_ + object_.select_set(True) + bpy.ops.object.convert(target="CURVES") + if legacy != object_.data: bpy.data.curves.remove(legacy, do_unlink=True) + object_.data.name = "WebGapCurves" + radius = object_.data.attributes.get("radius") or object_.data.attributes.new("radius", "FLOAT", "POINT") + for index, item in enumerate(radius.data): item.value = 0.03 + index * 0.005 + bpy.ops.wm.save_as_mainfile(filepath=output, compress=True) + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: raise SystemExit("usage: blender -b --python generate-curves-fixture.py -- OUTPUT") + main(args[0]) diff --git a/tools/web/generate-freestyle-fixture.py b/tools/web/generate-freestyle-fixture.py new file mode 100644 index 00000000..60d4e5b4 --- /dev/null +++ b/tools/web/generate-freestyle-fixture.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 +import sys +import bpy + +def main(output): + bpy.ops.wm.read_factory_settings(use_empty=True) + style = bpy.data.linestyles.new("WebGapLineStyle") + style.color = (0.2, 0.4, 0.8) + style.alpha = 0.75 + style.thickness = 2.5 + style.use_chaining = True + style.use_dashed_line = True + scene = bpy.context.scene + scene.render.engine = "BLENDER_WORKBENCH" + scene.render.use_freestyle = True + line_set = scene.view_layers[0].freestyle_settings.linesets.new("WebGapLineSet") + line_set.linestyle = style + bpy.ops.wm.save_as_mainfile(filepath=output, compress=True) + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: raise SystemExit("usage: blender -b --python generate-freestyle-fixture.py -- OUTPUT") + main(args[0]) diff --git a/tools/web/generate-task-card.mjs b/tools/web/generate-task-card.mjs new file mode 100644 index 00000000..3f3deabd --- /dev/null +++ b/tools/web/generate-task-card.mjs @@ -0,0 +1,46 @@ +import fs from 'node:fs'; +import path from 'node:path'; +import { readIndexedTask, verifyTaskIndex, root } from './task-context-lib.mjs'; + +const taskArg = process.argv.indexOf('--task'); +const task = taskArg >= 0 ? process.argv[taskArg + 1] : undefined; +if (!task) throw new Error('usage: node tools/web/generate-task-card.mjs --task '); +verifyTaskIndex(); +const entry = readIndexedTask(task); +if (!entry) throw new Error('unknown indexed task: ' + task); +const cardPath = path.join(root, 'docs/tasks', task + '.md'); +if (fs.existsSync(cardPath) && !process.argv.includes('--force')) { + process.stdout.write('task-card-exists task=' + task + ' path=' + path.relative(root, cardPath) + '\n'); + process.exit(0); +} +if (!entry.previous) throw new Error('task ' + task + ' has no indexed parent'); +const safeName = entry.gapId.replace(/[^A-Za-z0-9_.-]+/g, '-').replace(/^-+|-+$/g, '') || 'gap'; +const fixture = 'tests/files/web/generated/' + task + '-' + safeName + '.blend'; +const source = [ + '# ' + task + ': ' + entry.gapId + ' LOCAL_EXACT slice', '', + '- task: ' + task, '- parent: ' + entry.previous, '- status: in_progress', + '- gap: ' + entry.gapId, '- ownerFamily: ' + entry.ownerFamily, + '- targetImplementationClass: ' + entry.targetImplementationClass, '', + '## 目标', '', + 'Make the same minimal fixture produce observable ' + entry.gapId + ' 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: `' + fixture + '`', + '- Generator: `tools/web/generated/' + task + '.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/' + task + '.py -- ' + fixture, + 'npm --prefix web run test:generated-gap -- --task ' + task, + 'node tools/web/check-generated-gap.mjs --task ' + task, '', + '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/' + task + '/`', '- Status: `docs/status/' + task + '.md`', + '- Manifest: `tests/golden/' + task + '/manifest.json`', + '- Handoff: `node tools/web/check-task-context.mjs --task ' + task + ' --write`', + '- Rollback: remove this task production entry, fixture, tests, reports, manifest, status, and context; restore the parent as queue tail without rewriting parent evidence.', +].join('\n') + '\n'; +fs.mkdirSync(path.dirname(cardPath), { recursive: true }); +fs.writeFileSync(cardPath, source); +process.stdout.write('task-card-generated task=' + task + ' bytes=' + Buffer.byteLength(source) + ' path=' + path.relative(root, cardPath) + '\n'); diff --git a/tools/web/generate-task-index.mjs b/tools/web/generate-task-index.mjs new file mode 100644 index 00000000..ec12a868 --- /dev/null +++ b/tools/web/generate-task-index.mjs @@ -0,0 +1,56 @@ +import crypto from "node:crypto"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); +const outputDir = path.join(root, "tests/golden/M15-03A"); +const catalogPath = path.join(outputDir, "task-catalog.jsonl"); +const indexPath = path.join(outputDir, "task-index.json"); +const sha256 = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex"); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); + +const planBytes = fs.readFileSync(planPath); +const plan = JSON.parse(planBytes); +if (!Array.isArray(plan.tasks) || plan.tasks.length === 0) throw new Error("next-task plan has no tasks"); + +fs.mkdirSync(outputDir, { recursive: true }); +const lines = []; +const entries = {}; +let offset = 0; +for (let index = 0; index < plan.tasks.length; index += 1) { + const task = plan.tasks[index]; + const compactTask = { + id: task.id, + gapId: task.gapId, + ownerFamily: task.ownerFamily, + sourceTask: task.sourceTask, + state: task.state, + targetImplementationClass: task.targetImplementationClass, + }; + const line = `${JSON.stringify(compactTask)}\n`; + const length = Buffer.byteLength(line, "utf8"); + lines.push(line); + entries[task.id] = { + line: index, + offset, + length, + previous: plan.tasks[index - 1]?.id ?? null, + next: plan.tasks[index + 1]?.id ?? null, + }; + offset += length; +} +const catalogBytes = Buffer.from(lines.join(""), "utf8"); +fs.writeFileSync(catalogPath, catalogBytes); +const index = { + schemaVersion: 1, + operation: "BLENDER_TASK_CONTEXT_INDEX", + source: { path: relative(planPath), sha256: sha256(planBytes) }, + catalog: { path: relative(catalogPath), sha256: sha256(catalogBytes) }, + taskCount: plan.tasks.length, + activeTask: plan.firstTask, + entries, +}; +fs.writeFileSync(indexPath, `${JSON.stringify(index)}\n`); +process.stdout.write(`task-index-generated tasks=${plan.tasks.length} catalogBytes=${catalogBytes.byteLength} output=${relative(indexPath)}\n`); diff --git a/tools/web/generated/M16-GAP-00010.py b/tools/web/generated/M16-GAP-00010.py new file mode 100644 index 00000000..7915e1cd --- /dev/null +++ b/tools/web/generated/M16-GAP-00010.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + lattice = bpy.data.lattices.new("WebGapLattice") + lattice.points_u = 3 + lattice.points_v = 2 + lattice.points_w = 2 + lattice.interpolation_type_u = "KEY_LINEAR" + lattice.interpolation_type_v = "KEY_CARDINAL" + lattice.interpolation_type_w = "KEY_BSPLINE" + lattice.use_outside = True + lattice.vertex_group = "WebGapInfluence" + lattice_object = bpy.data.objects.new("WebGapLatticeObject", lattice) + bpy.context.collection.objects.link(lattice_object) + for index, point in enumerate(lattice.points): + point.co_deform = ( + point.co.x + 0.125 * (index % 3), + point.co.y - 0.0625 * (index % 2), + point.co.z + 0.25 * (index // 6), + ) + point.weight_softbody = 0.5 + index * 0.125 + point.select = index in {0, len(lattice.points) - 1} + bpy.ops.wm.save_as_mainfile(filepath=str(output), compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00010.py -- OUTPUT") + main(pathlib.Path(arguments[0]).resolve()) diff --git a/tools/web/generated/M16-GAP-00011.py b/tools/web/generated/M16-GAP-00011.py new file mode 100644 index 00000000..e8b25e79 --- /dev/null +++ b/tools/web/generated/M16-GAP-00011.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +LIBRARY_NAME = "WebGapLibrary.blend" +OBJECT_NAME = "WebGapLibraryObject" + + +def reset() -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + + +def create_source(path: pathlib.Path) -> None: + reset() + mesh = bpy.data.meshes.new("WebGapLibraryMesh") + mesh.from_pydata([(-1.0, 0.0, 0.0), (1.0, 0.0, 0.0), (0.0, 1.0, 0.0)], [], [(0, 1, 2)]) + obj = bpy.data.objects.new(OBJECT_NAME, mesh) + bpy.context.scene.collection.objects.link(obj) + bpy.ops.wm.save_as_mainfile(filepath=str(path), check_existing=False, compress=True) + + +def create_fixture(output: pathlib.Path) -> None: + source = output.with_name(LIBRARY_NAME) + create_source(source) + reset() + with bpy.data.libraries.load(str(source), link=True) as (data_from, data_to): + if OBJECT_NAME not in data_from.objects: + raise RuntimeError("source object is missing") + data_to.objects = [OBJECT_NAME] + linked = data_to.objects[0] + if linked is None: + raise RuntimeError("linked object is missing") + bpy.context.scene.collection.objects.link(linked) + bpy.ops.wm.save_as_mainfile(filepath=str(output), check_existing=False, compress=True) + + +def main(output: pathlib.Path) -> None: + output.parent.mkdir(parents=True, exist_ok=True) + create_fixture(output.resolve()) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00011.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00012.py b/tools/web/generated/M16-GAP-00012.py new file mode 100644 index 00000000..8da40045 --- /dev/null +++ b/tools/web/generated/M16-GAP-00012.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + light = bpy.data.lights.new("WebGapLight", type="AREA") + light.color = (0.25, 0.5, 0.75) + light.energy = 400.0 + light.exposure = 1.0 + light.temperature = 5000.0 + light.use_temperature = True + light.use_shadow = False + light.shadow_soft_size = 0.3 + light.shape = "RECTANGLE" + light.size = 3.0 + light.size_y = 2.0 + light.spread = 2.4 + light_object = bpy.data.objects.new("WebGapLightObject", light) + bpy.context.collection.objects.link(light_object) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00012.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00013.py b/tools/web/generated/M16-GAP-00013.py new file mode 100644 index 00000000..02549d53 --- /dev/null +++ b/tools/web/generated/M16-GAP-00013.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def set_socket(node, name, value): + socket = node.inputs.get(name) + if socket is not None: + socket.default_value = value + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + material = bpy.data.materials.new("WebGapMaterial") + material.use_nodes = True + material.diffuse_color = (0.2, 0.4, 0.8, 0.9) + nodes = material.node_tree.nodes + links = material.node_tree.links + principled = nodes.get("Principled BSDF") + output_node = nodes.get("Material Output") + if principled is None or output_node is None: + raise RuntimeError("default Principled/Output nodes are missing") + set_socket(principled, "Base Color", (0.2, 0.4, 0.8, 0.9)) + set_socket(principled, "Metallic", 0.35) + set_socket(principled, "Roughness", 0.6) + set_socket(principled, "IOR", 1.6) + set_socket(principled, "Specular IOR Level", 0.35) + set_socket(principled, "Transmission Weight", 0.27) + set_socket(principled, "Coat Weight", 0.64) + set_socket(principled, "Coat Roughness", 0.12) + set_socket(principled, "Emission Color", (0.05, 0.1, 0.2, 1.0)) + set_socket(principled, "Emission Strength", 3.5) + set_socket(principled, "Alpha", 0.9) + if not any(link.from_node == principled and link.to_node == output_node for link in links): + links.new(principled.outputs["BSDF"], output_node.inputs["Surface"]) + mesh = bpy.data.meshes.new("WebGapMaterialMesh") + mesh.from_pydata([(-1.0, -1.0, 0.0), (1.0, -1.0, 0.0), (0.0, 1.0, 0.0)], [], [(0, 1, 2)]) + mesh.materials.append(material) + obj = bpy.data.objects.new("WebGapMaterialObject", mesh) + bpy.context.collection.objects.link(obj) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00013.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00014.py b/tools/web/generated/M16-GAP-00014.py new file mode 100644 index 00000000..3291cf6e --- /dev/null +++ b/tools/web/generated/M16-GAP-00014.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapMesh") + mesh.from_pydata( + [(-1.0, -1.0, 0.0), (1.0, -1.0, 0.0), (1.0, 1.0, 0.25), (-1.0, 1.0, 0.25)], + [], + [(0, 1, 2, 3)], + ) + uv_layer = mesh.uv_layers.new(name="WebGapUV") + for loop, uv in zip(uv_layer.data, [(0.0, 0.0), (1.0, 0.0), (1.0, 1.0), (0.0, 1.0)]): + loop.uv = uv + mesh.update() + mesh_object = bpy.data.objects.new("WebGapMeshObject", mesh) + bpy.context.collection.objects.link(mesh_object) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00014.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00015.py b/tools/web/generated/M16-GAP-00015.py new file mode 100644 index 00000000..9ce601d2 --- /dev/null +++ b/tools/web/generated/M16-GAP-00015.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + data = bpy.data.metaballs.new("WebGapMetaBall") + data.resolution = 0.2 + data.render_resolution = 0.1 + first = data.elements.new() + first.co = (-0.65, 0.0, 0.4) + first.radius = 0.75 + first.size_x = 1.1 + first.size_y = 0.9 + first.size_z = 1.2 + second = data.elements.new() + second.co = (0.65, 0.0, 0.4) + second.radius = 0.55 + second.size_x = 0.8 + second.size_y = 1.05 + second.size_z = 0.95 + obj = bpy.data.objects.new("WebGapMetaBallObject", data) + bpy.context.collection.objects.link(obj) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00015.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00016.py b/tools/web/generated/M16-GAP-00016.py new file mode 100644 index 00000000..928e251d --- /dev/null +++ b/tools/web/generated/M16-GAP-00016.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + material = bpy.data.materials.new("WebGapNodeTreeMaterial") + material.use_nodes = True + nodes = material.node_tree.nodes + links = material.node_tree.links + principled = nodes.get("Principled BSDF") + output_node = nodes.get("Material Output") + if principled is None or output_node is None: + raise RuntimeError("default shader nodes are missing") + rgb = nodes.new("ShaderNodeRGB") + rgb.name = "WebGapRGB" + rgb.outputs["Color"].default_value = (0.1, 0.3, 0.7, 1.0) + links.new(rgb.outputs["Color"], principled.inputs["Base Color"]) + links.new(principled.outputs["BSDF"], output_node.inputs["Surface"]) + mesh = bpy.data.meshes.new("WebGapNodeTreeMesh") + mesh.from_pydata([(-1.0, -1.0, 0.0), (1.0, -1.0, 0.0), (0.0, 1.0, 0.0)], [], [(0, 1, 2)]) + mesh.materials.append(material) + obj = bpy.data.objects.new("WebGapNodeTreeObject", mesh) + bpy.context.collection.objects.link(obj) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00016.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00017.py b/tools/web/generated/M16-GAP-00017.py new file mode 100644 index 00000000..239128d2 --- /dev/null +++ b/tools/web/generated/M16-GAP-00017.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + obj = bpy.data.objects.new("WebGapObject", None) + obj.location = (1.25, -2.5, 3.75) + obj.rotation_mode = "XYZ" + obj.rotation_euler = (0.2, -0.35, 0.5) + obj.scale = (1.5, 0.75, 2.0) + obj.hide_viewport = False + obj.hide_render = False + obj.hide_set(False) + bpy.context.collection.objects.link(obj) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00017.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00018.py b/tools/web/generated/M16-GAP-00018.py new file mode 100644 index 00000000..f69a7270 --- /dev/null +++ b/tools/web/generated/M16-GAP-00018.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + settings = bpy.data.particles.new("WebGapParticleSettings") + settings.use_fake_user = True + settings.type = "EMITTER" + settings.emit_from = "FACE" + settings.physics_type = "NEWTON" + settings.distribution = "JIT" + settings.count = 128 + settings.frame_start = 4.0 + settings.frame_end = 96.0 + settings.lifetime = 32.0 + settings.particle_size = 0.125 + settings.display_size = 0.25 + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00018.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00019.py b/tools/web/generated/M16-GAP-00019.py new file mode 100644 index 00000000..2a8f9422 --- /dev/null +++ b/tools/web/generated/M16-GAP-00019.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapPointCloudSeed") + mesh.from_pydata([(-1.0, 0.0, 0.0), (0.0, 1.0, 0.5), (1.0, 0.0, 1.0), (0.0, -1.0, 1.5)], [], []) + obj = bpy.data.objects.new("WebGapPointCloudObject", mesh) + bpy.context.collection.objects.link(obj) + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.object.convert(target="POINTCLOUD") + data = obj.data + data.name = "WebGapPointCloud" + radius = data.attributes.new("radius", "FLOAT", "POINT") + radius.data.foreach_set("value", [0.25, 0.5, 0.75, 1.0]) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00019.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00020.py b/tools/web/generated/M16-GAP-00020.py new file mode 100644 index 00000000..8eb226ba --- /dev/null +++ b/tools/web/generated/M16-GAP-00020.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + scene = bpy.context.scene + scene.name = "WebGapScene" + scene.frame_start = 12 + scene.frame_end = 180 + scene.frame_set(48) + scene.render.fps = 30 + scene.render.fps_base = 1.0 + scene.unit_settings.system = "METRIC" + scene.unit_settings.scale_length = 0.25 + scene.render.engine = "BLENDER_EEVEE" + scene.view_settings.look = "AgX - Medium High Contrast" + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00020.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00021.py b/tools/web/generated/M16-GAP-00021.py new file mode 100644 index 00000000..1d5a84c2 --- /dev/null +++ b/tools/web/generated/M16-GAP-00021.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + screen = bpy.context.screen + if screen is None: + raise RuntimeError("factory startup did not create a screen") + screen.name = "WebGapScreen" + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00021.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00022.py b/tools/web/generated/M16-GAP-00022.py new file mode 100644 index 00000000..dc1a88f6 --- /dev/null +++ b/tools/web/generated/M16-GAP-00022.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/media/sequencer-silence.wav" + sound = bpy.data.sounds.load(str(source), check_existing=False) + sound.name = "WebGapSound" + sound.filepath = "//WebGapSound.wav" + sound.use_fake_user = True + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00022.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00023.py b/tools/web/generated/M16-GAP-00023.py new file mode 100644 index 00000000..dc3c7f93 --- /dev/null +++ b/tools/web/generated/M16-GAP-00023.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/media/sequencer-silence.wav" + sound = bpy.data.sounds.load(str(source), check_existing=False) + sound.name = "WebGapSpeakerSound" + sound.use_fake_user = True + speaker = bpy.data.speakers.new("WebGapSpeaker") + speaker.sound = sound + speaker.volume_max = 0.85 + speaker.volume_min = 0.15 + speaker.distance_max = 12.5 + speaker.distance_reference = 2.25 + speaker.attenuation = 0.75 + speaker.cone_angle_outer = 270.0 + speaker.cone_angle_inner = 120.0 + speaker.cone_volume_outer = 0.35 + speaker.volume = 0.65 + speaker.pitch = 1.1 + speaker.use_fake_user = True + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00023.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00024.py b/tools/web/generated/M16-GAP-00024.py new file mode 100644 index 00000000..bcc2782d --- /dev/null +++ b/tools/web/generated/M16-GAP-00024.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + text = bpy.data.texts.new("WebGapText") + text.write("Web Blender text datablock\nSecond line\n") + text.filepath = "//WebGapText.txt" + text.use_fake_user = True + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00024.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00025.py b/tools/web/generated/M16-GAP-00025.py new file mode 100644 index 00000000..dfbddb76 --- /dev/null +++ b/tools/web/generated/M16-GAP-00025.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + texture = bpy.data.textures.new("WebGapTexture", type="CLOUDS") + texture.noise_scale = 0.42 + texture.noise_depth = 4 + texture.intensity = 0.72 + texture.contrast = 1.25 + texture.saturation = 0.8 + texture.use_fake_user = True + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00025.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00026.py b/tools/web/generated/M16-GAP-00026.py new file mode 100644 index 00000000..49565e14 --- /dev/null +++ b/tools/web/generated/M16-GAP-00026.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + volume = bpy.data.volumes.new("WebGapVolume") + volume.filepath = "//WebGapVolume.vdb" + volume.display.density = 2.5 + volume.display.interpolation_method = "CLOSEST" + volume.render.step_size = 0.125 + volume.use_fake_user = True + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00026.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00027.py b/tools/web/generated/M16-GAP-00027.py new file mode 100644 index 00000000..e5fe1540 --- /dev/null +++ b/tools/web/generated/M16-GAP-00027.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + bpy.context.window_manager.preset_name = "WebGapWindowManager" + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00027.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00028.py b/tools/web/generated/M16-GAP-00028.py new file mode 100644 index 00000000..d09df157 --- /dev/null +++ b/tools/web/generated/M16-GAP-00028.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + workspace = bpy.data.workspaces.get("Layout") + if workspace is not None: + workspace.name = "WebGapWorkspace" + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --factory-startup --python M16-GAP-00028.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00029.py b/tools/web/generated/M16-GAP-00029.py new file mode 100644 index 00000000..1ec95b13 --- /dev/null +++ b/tools/web/generated/M16-GAP-00029.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + world = bpy.data.worlds.new("WebGapWorld") + world.color = (0.12, 0.2, 0.35) + world.use_fake_user = True + world.mist_settings.use_mist = True + world.mist_settings.start = 3.0 + world.mist_settings.depth = 18.0 + world.mist_settings.intensity = 0.4 + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: raise SystemExit("usage: blender -b --python M16-GAP-00029.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00030.py b/tools/web/generated/M16-GAP-00030.py new file mode 100644 index 00000000..2f77bffc --- /dev/null +++ b/tools/web/generated/M16-GAP-00030.py @@ -0,0 +1,52 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + + mesh = bpy.data.meshes.new("WebGapArmatureMesh") + mesh.from_pydata( + [(-1.0, -1.0, 0.0), (1.0, -1.0, 0.0), (1.0, 1.0, 0.0), (-1.0, 1.0, 0.0)], + [], + [(0, 1, 2), (0, 2, 3)], + ) + mesh.update() + mesh_object = bpy.data.objects.new("WebGapArmatureMeshObject", mesh) + bpy.context.collection.objects.link(mesh_object) + + armature = bpy.data.armatures.new("WebGapArmature") + armature_object = bpy.data.objects.new("WebGapArmatureObject", armature) + bpy.context.collection.objects.link(armature_object) + bpy.context.view_layer.objects.active = armature_object + armature_object.select_set(True) + bpy.ops.object.mode_set(mode="EDIT") + root = armature.edit_bones.new("Root") + root.head = (0.0, 0.0, 0.0) + root.tail = (0.0, 0.0, 1.0) + bpy.ops.object.mode_set(mode="OBJECT") + armature_object.select_set(False) + + vertex_group = mesh_object.vertex_groups.new(name="Root") + vertex_group.add([0, 1, 2, 3], 1.0, "REPLACE") + modifier = mesh_object.modifiers.new(name="WebGapArmature", type="ARMATURE") + modifier.object = armature_object + modifier.vertex_group = "Root" + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = True + modifier.show_on_cage = False + + bpy.context.view_layer.objects.active = mesh_object + mesh_object.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00030.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00031.py b/tools/web/generated/M16-GAP-00031.py new file mode 100644 index 00000000..c66c4388 --- /dev/null +++ b/tools/web/generated/M16-GAP-00031.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def mesh_object(name: str, vertices, faces): + mesh = bpy.data.meshes.new(name + "Mesh") + mesh.from_pydata(vertices, [], faces) + mesh.update() + obj = bpy.data.objects.new(name, mesh) + bpy.context.collection.objects.link(obj) + return obj + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + source = mesh_object( + "WebGapArrayObject", + [(-0.5, -0.5, 0.0), (0.5, -0.5, 0.0), (0.5, 0.5, 0.0), (-0.5, 0.5, 0.0)], + [(0, 1, 2, 3)], + ) + start_cap = mesh_object( + "WebGapArrayStartCap", + [(-0.4, -0.4, 0.0), (0.4, -0.4, 0.0), (0.0, 0.4, 0.0)], + [(0, 1, 2)], + ) + end_cap = mesh_object( + "WebGapArrayEndCap", + [(-0.4, -0.4, 0.0), (0.4, -0.4, 0.0), (0.0, 0.4, 0.0)], + [(0, 1, 2)], + ) + start_cap.location.x = -2.0 + end_cap.location.x = 5.0 + modifier = source.modifiers.new(name="WebGapArray", type="ARRAY") + modifier.count = 4 + modifier.relative_offset_displace = (1.25, 0.0, 0.0) + modifier.start_cap = start_cap + modifier.end_cap = end_cap + modifier.show_viewport = True + modifier.show_render = False + modifier.show_in_editmode = True + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = source + source.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00031.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00032.py b/tools/web/generated/M16-GAP-00032.py new file mode 100644 index 00000000..1f584bcc --- /dev/null +++ b/tools/web/generated/M16-GAP-00032.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapBevelMesh") + mesh.from_pydata( + [(-1.0, -1.0, -1.0), (1.0, -1.0, -1.0), (1.0, 1.0, -1.0), (-1.0, 1.0, -1.0), + (-1.0, -1.0, 1.0), (1.0, -1.0, 1.0), (1.0, 1.0, 1.0), (-1.0, 1.0, 1.0)], + [], + [(0, 1, 2, 3), (4, 7, 6, 5), (0, 4, 5, 1), (1, 5, 6, 2), (2, 6, 7, 3), (4, 0, 3, 7)], + ) + mesh.update() + obj = bpy.data.objects.new("WebGapBevelObject", mesh) + bpy.context.collection.objects.link(obj) + modifier = obj.modifiers.new(name="WebGapBevel", type="BEVEL") + modifier.width = 0.2 + modifier.segments = 3 + modifier.profile = 0.35 + modifier.limit_method = "ANGLE" + modifier.angle_limit = 0.5 + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00032.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00033.py b/tools/web/generated/M16-GAP-00033.py new file mode 100644 index 00000000..8e583ccf --- /dev/null +++ b/tools/web/generated/M16-GAP-00033.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def cube(name: str, location, scale=1.0): + mesh = bpy.data.meshes.new(name + "Mesh") + vertices = [(-1, -1, -1), (1, -1, -1), (1, 1, -1), (-1, 1, -1), (-1, -1, 1), (1, -1, 1), (1, 1, 1), (-1, 1, 1)] + faces = [(0, 1, 2, 3), (4, 7, 6, 5), (0, 4, 5, 1), (1, 5, 6, 2), (2, 6, 7, 3), (4, 0, 3, 7)] + mesh.from_pydata(vertices, [], faces) + mesh.update() + obj = bpy.data.objects.new(name, mesh) + bpy.context.collection.objects.link(obj) + obj.location = location + obj.scale = (scale, scale, scale) + return obj + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + source = cube("WebGapBooleanObject", (0.0, 0.0, 0.0), 1.0) + cutter = cube("WebGapBooleanCutter", (0.75, 0.0, 0.0), 0.65) + cutter.display_type = "WIRE" + modifier = source.modifiers.new(name="WebGapBoolean", type="BOOLEAN") + modifier.operation = "DIFFERENCE" + modifier.solver = "EXACT" + modifier.object = cutter + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = source + source.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00033.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00034.py b/tools/web/generated/M16-GAP-00034.py new file mode 100644 index 00000000..a7c50b78 --- /dev/null +++ b/tools/web/generated/M16-GAP-00034.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapBuildMesh") + mesh.from_pydata([(-1, -1, 0), (1, -1, 0), (1, 1, 0), (-1, 1, 0)], [], [(0, 1, 2, 3)]) + mesh.update() + obj = bpy.data.objects.new("WebGapBuildObject", mesh) + bpy.context.collection.objects.link(obj) + modifier = obj.modifiers.new(name="WebGapBuild", type="BUILD") + modifier.frame_start = 3 + modifier.frame_duration = 12 + modifier.use_reverse = True + modifier.use_random_order = True + modifier.seed = 17 + modifier.show_viewport = True + modifier.show_render = False + modifier.show_in_editmode = True + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00034.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00035.py b/tools/web/generated/M16-GAP-00035.py new file mode 100644 index 00000000..9643368d --- /dev/null +++ b/tools/web/generated/M16-GAP-00035.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapCastMesh") + mesh.from_pydata([(-1, -1, -1), (1, -1, -1), (1, 1, -1), (-1, 1, -1), (-1, -1, 1), (1, -1, 1), (1, 1, 1), (-1, 1, 1)], [], [(0, 1, 2, 3), (4, 7, 6, 5), (0, 4, 5, 1), (1, 5, 6, 2), (2, 6, 7, 3), (4, 0, 3, 7)]) + mesh.update() + obj = bpy.data.objects.new("WebGapCastObject", mesh) + bpy.context.collection.objects.link(obj) + modifier = obj.modifiers.new(name="WebGapCast", type="CAST") + modifier.cast_type = "CUBOID" + modifier.factor = 0.65 + modifier.radius = 2.5 + modifier.use_x = True + modifier.use_y = False + modifier.use_z = True + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: raise SystemExit("usage: blender -b --python M16-GAP-00035.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00036.py b/tools/web/generated/M16-GAP-00036.py new file mode 100644 index 00000000..e2b2578b --- /dev/null +++ b/tools/web/generated/M16-GAP-00036.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import pathlib, sys +import bpy + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapClothMesh") + mesh.from_pydata([(-1, -1, 0), (1, -1, 0), (1, 1, 0), (-1, 1, 0)], [], [(0, 1, 2, 3)]) + mesh.update() + obj = bpy.data.objects.new("WebGapClothObject", mesh) + bpy.context.collection.objects.link(obj) + modifier = obj.modifiers.new(name="WebGapCloth", type="CLOTH") + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: raise SystemExit("usage: blender -b --python M16-GAP-00036.py -- OUTPUT") + main(pathlib.Path(arguments[0])) diff --git a/tools/web/generated/M16-GAP-00037.py b/tools/web/generated/M16-GAP-00037.py new file mode 100644 index 00000000..0f01439d --- /dev/null +++ b/tools/web/generated/M16-GAP-00037.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 +import pathlib, sys +import bpy + +def main(output: pathlib.Path) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + mesh = bpy.data.meshes.new("WebGapCollisionMesh") + mesh.from_pydata([(-1,-1,0),(1,-1,0),(1,1,0),(-1,1,0)], [], [(0,1,2,3)]); mesh.update() + obj = bpy.data.objects.new("WebGapCollisionObject", mesh); bpy.context.collection.objects.link(obj) + m = obj.modifiers.new(name="WebGapCollision", type="COLLISION") + m.show_viewport = True; m.show_render = True; m.show_in_editmode = False; m.show_on_cage = False + bpy.context.view_layer.objects.active = obj; obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) + +if __name__ == "__main__": + args=sys.argv[sys.argv.index("--")+1:] + if len(args)!=1: raise SystemExit("usage: blender -b --python M16-GAP-00037.py -- OUTPUT") + main(pathlib.Path(args[0])) diff --git a/tools/web/generated/M16-GAP-00038.py b/tools/web/generated/M16-GAP-00038.py new file mode 100644 index 00000000..37bbaa42 --- /dev/null +++ b/tools/web/generated/M16-GAP-00038.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) + +from modifier_gap_fixture import generate + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1 :] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00038.py -- OUTPUT") + generate(pathlib.Path(arguments[0]), "CORRECTIVE_SMOOTH", "WebGapCorrectiveSmooth") diff --git a/tools/web/generated/M16-GAP-00039.py b/tools/web/generated/M16-GAP-00039.py new file mode 100644 index 00000000..0a019d79 --- /dev/null +++ b/tools/web/generated/M16-GAP-00039.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import generate + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: raise SystemExit("usage: blender -b --python M16-GAP-00039.py -- OUTPUT") + generate(pathlib.Path(arguments[0]), "CURVE", "WebGapCurveModifier") diff --git a/tools/web/generated/M16-GAP-00040.py b/tools/web/generated/M16-GAP-00040.py new file mode 100644 index 00000000..8855f70f --- /dev/null +++ b/tools/web/generated/M16-GAP-00040.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import generate + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00040.py -- OUTPUT") + generate(pathlib.Path(arguments[0]), "DATA_TRANSFER", "WebGapDataTransfer") diff --git a/tools/web/generated/M16-GAP-00041.py b/tools/web/generated/M16-GAP-00041.py new file mode 100644 index 00000000..08a7b57f --- /dev/null +++ b/tools/web/generated/M16-GAP-00041.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import create_mesh_object + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00041.py -- OUTPUT") + output = pathlib.Path(arguments[0]) + bpy.ops.wm.read_factory_settings(use_empty=True) + obj = create_mesh_object("WebGapDecimateObject") + modifier = obj.modifiers.new(name="WebGapDecimate", type="DECIMATE") + modifier.ratio = 0.65 + modifier.iterations = 2 + modifier.decimate_type = "COLLAPSE" + modifier.angle_limit = 0.4 + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00042.py b/tools/web/generated/M16-GAP-00042.py new file mode 100644 index 00000000..238d3f83 --- /dev/null +++ b/tools/web/generated/M16-GAP-00042.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import create_mesh_object + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00042.py -- OUTPUT") + output = pathlib.Path(arguments[0]) + bpy.ops.wm.read_factory_settings(use_empty=True) + obj = create_mesh_object("WebGapDisplaceObject") + modifier = obj.modifiers.new(name="WebGapDisplace", type="DISPLACE") + modifier.direction = "Z" + modifier.strength = 0.75 + modifier.mid_level = 0.25 + modifier.texture_coords = "GLOBAL" + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00043.py b/tools/web/generated/M16-GAP-00043.py new file mode 100644 index 00000000..e819da25 --- /dev/null +++ b/tools/web/generated/M16-GAP-00043.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import generate + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00043.py -- OUTPUT") + generate(pathlib.Path(arguments[0]), "DYNAMIC_PAINT", "WebGapDynamicPaint") diff --git a/tools/web/generated/M16-GAP-00044.py b/tools/web/generated/M16-GAP-00044.py new file mode 100644 index 00000000..83c867d4 --- /dev/null +++ b/tools/web/generated/M16-GAP-00044.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import create_mesh_object + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00044.py -- OUTPUT") + output = pathlib.Path(arguments[0]) + bpy.ops.wm.read_factory_settings(use_empty=True) + obj = create_mesh_object("WebGapEdgeSplitObject") + modifier = obj.modifiers.new(name="WebGapEdgeSplit", type="EDGE_SPLIT") + modifier.split_angle = 0.35 + modifier.use_edge_angle = True + modifier.use_edge_sharp = False + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00045.py b/tools/web/generated/M16-GAP-00045.py new file mode 100644 index 00000000..5a9ae8f3 --- /dev/null +++ b/tools/web/generated/M16-GAP-00045.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import generate + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00045.py -- OUTPUT") + generate(pathlib.Path(arguments[0]), "EXPLODE", "WebGapExplode") diff --git a/tools/web/generated/M16-GAP-00046.py b/tools/web/generated/M16-GAP-00046.py new file mode 100644 index 00000000..9f1dac58 --- /dev/null +++ b/tools/web/generated/M16-GAP-00046.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +sys.path.insert(0, str(pathlib.Path(__file__).resolve().parent)) +from modifier_gap_fixture import generate + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00046.py -- OUTPUT") + generate(pathlib.Path(arguments[0]), "FLUID", "WebGapFluid") diff --git a/tools/web/generated/M16-GAP-00047.py b/tools/web/generated/M16-GAP-00047.py new file mode 100644 index 00000000..28bce040 --- /dev/null +++ b/tools/web/generated/M16-GAP-00047.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 +import pathlib +import sys + +import bpy + + +if __name__ == "__main__": + arguments = sys.argv[sys.argv.index("--") + 1:] + if len(arguments) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00047.py -- OUTPUT") + output = pathlib.Path(arguments[0]) + bpy.ops.wm.open_mainfile(filepath=str(pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend"), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00048.py b/tools/web/generated/M16-GAP-00048.py new file mode 100644 index 00000000..5fe08762 --- /dev/null +++ b/tools/web/generated/M16-GAP-00048.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import bpy + + +if __name__ == "__main__": + arguments = bpy.app.driver_namespace.get("_unused") + args = __import__("sys").argv[__import__("sys").argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00048.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00049.py b/tools/web/generated/M16-GAP-00049.py new file mode 100644 index 00000000..e8482045 --- /dev/null +++ b/tools/web/generated/M16-GAP-00049.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00049.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00050.py b/tools/web/generated/M16-GAP-00050.py new file mode 100644 index 00000000..87e0cd5b --- /dev/null +++ b/tools/web/generated/M16-GAP-00050.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00050.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00051.py b/tools/web/generated/M16-GAP-00051.py new file mode 100644 index 00000000..9a6fc42a --- /dev/null +++ b/tools/web/generated/M16-GAP-00051.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00051.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00052.py b/tools/web/generated/M16-GAP-00052.py new file mode 100644 index 00000000..5019e87d --- /dev/null +++ b/tools/web/generated/M16-GAP-00052.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00052.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00053.py b/tools/web/generated/M16-GAP-00053.py new file mode 100644 index 00000000..d4a2a0c0 --- /dev/null +++ b/tools/web/generated/M16-GAP-00053.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00053.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00054.py b/tools/web/generated/M16-GAP-00054.py new file mode 100644 index 00000000..8115df93 --- /dev/null +++ b/tools/web/generated/M16-GAP-00054.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00054.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00055.py b/tools/web/generated/M16-GAP-00055.py new file mode 100644 index 00000000..1e8550ff --- /dev/null +++ b/tools/web/generated/M16-GAP-00055.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00055.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00056.py b/tools/web/generated/M16-GAP-00056.py new file mode 100644 index 00000000..a836e2ec --- /dev/null +++ b/tools/web/generated/M16-GAP-00056.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00056.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00057.py b/tools/web/generated/M16-GAP-00057.py new file mode 100644 index 00000000..c081778a --- /dev/null +++ b/tools/web/generated/M16-GAP-00057.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00057.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00058.py b/tools/web/generated/M16-GAP-00058.py new file mode 100644 index 00000000..b6f63ea0 --- /dev/null +++ b/tools/web/generated/M16-GAP-00058.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00058.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00059.py b/tools/web/generated/M16-GAP-00059.py new file mode 100644 index 00000000..cf72d410 --- /dev/null +++ b/tools/web/generated/M16-GAP-00059.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00059.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00060.py b/tools/web/generated/M16-GAP-00060.py new file mode 100644 index 00000000..1f201920 --- /dev/null +++ b/tools/web/generated/M16-GAP-00060.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00060.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00061.py b/tools/web/generated/M16-GAP-00061.py new file mode 100644 index 00000000..e43813c9 --- /dev/null +++ b/tools/web/generated/M16-GAP-00061.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00061.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00062.py b/tools/web/generated/M16-GAP-00062.py new file mode 100644 index 00000000..77a72fe9 --- /dev/null +++ b/tools/web/generated/M16-GAP-00062.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00062.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00063.py b/tools/web/generated/M16-GAP-00063.py new file mode 100644 index 00000000..3e9121a5 --- /dev/null +++ b/tools/web/generated/M16-GAP-00063.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00063.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00064.py b/tools/web/generated/M16-GAP-00064.py new file mode 100644 index 00000000..407cc320 --- /dev/null +++ b/tools/web/generated/M16-GAP-00064.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00064.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00065.py b/tools/web/generated/M16-GAP-00065.py new file mode 100644 index 00000000..6a9e0a87 --- /dev/null +++ b/tools/web/generated/M16-GAP-00065.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00065.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00066.py b/tools/web/generated/M16-GAP-00066.py new file mode 100644 index 00000000..00637d69 --- /dev/null +++ b/tools/web/generated/M16-GAP-00066.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00066.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00067.py b/tools/web/generated/M16-GAP-00067.py new file mode 100644 index 00000000..f192a651 --- /dev/null +++ b/tools/web/generated/M16-GAP-00067.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00067.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00068.py b/tools/web/generated/M16-GAP-00068.py new file mode 100644 index 00000000..bbdd7c6c --- /dev/null +++ b/tools/web/generated/M16-GAP-00068.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00068.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00069.py b/tools/web/generated/M16-GAP-00069.py new file mode 100644 index 00000000..50950392 --- /dev/null +++ b/tools/web/generated/M16-GAP-00069.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00069.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/M16-GAP-00070.py b/tools/web/generated/M16-GAP-00070.py new file mode 100644 index 00000000..67a6cb74 --- /dev/null +++ b/tools/web/generated/M16-GAP-00070.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +import pathlib +import sys +import bpy + + +if __name__ == "__main__": + args = sys.argv[sys.argv.index("--") + 1:] + if len(args) != 1: + raise SystemExit("usage: blender -b --python M16-GAP-00070.py -- OUTPUT") + source = pathlib.Path(__file__).resolve().parents[3] / "tests/files/web/modifier_grease_pencil_scene.blend" + bpy.ops.wm.open_mainfile(filepath=str(source), load_ui=False) + bpy.ops.wm.save_as_mainfile(filepath=str(pathlib.Path(args[0]).resolve()), check_existing=False, compress=True) diff --git a/tools/web/generated/modifier_gap_fixture.py b/tools/web/generated/modifier_gap_fixture.py new file mode 100644 index 00000000..9504c1d7 --- /dev/null +++ b/tools/web/generated/modifier_gap_fixture.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python3 +import pathlib + +import bpy + + +def create_mesh_object(name: str): + mesh = bpy.data.meshes.new(name + "Mesh") + mesh.from_pydata( + [(-1, -1, -1), (1, -1, -1), (1, 1, -1), (-1, 1, -1), + (-1, -1, 1), (1, -1, 1), (1, 1, 1), (-1, 1, 1)], + [], + [(0, 1, 2, 3), (4, 7, 6, 5), (0, 4, 5, 1), + (1, 5, 6, 2), (2, 6, 7, 3), (4, 0, 3, 7)], + ) + mesh.update() + obj = bpy.data.objects.new(name, mesh) + bpy.context.collection.objects.link(obj) + return obj + + +def generate(output: pathlib.Path, modifier_type: str, stem: str) -> None: + bpy.ops.wm.read_factory_settings(use_empty=True) + obj = create_mesh_object(stem + "Object") + modifier = obj.modifiers.new(name=stem, type=modifier_type) + modifier.show_viewport = True + modifier.show_render = True + modifier.show_in_editmode = False + modifier.show_on_cage = False + bpy.context.view_layer.objects.active = obj + obj.select_set(True) + bpy.ops.wm.save_as_mainfile(filepath=str(output.resolve()), check_existing=False, compress=True) diff --git a/tools/web/print-task-context.mjs b/tools/web/print-task-context.mjs new file mode 100644 index 00000000..3cb2beea --- /dev/null +++ b/tools/web/print-task-context.mjs @@ -0,0 +1,7 @@ +import { buildTaskContext, contextSizeReport } from "./task-context-lib.mjs"; + +const index = process.argv.indexOf("--task"); +const task = index >= 0 ? process.argv[index + 1] : undefined; +const bundle = buildTaskContext(task); +const report = contextSizeReport(bundle); +process.stdout.write(`${JSON.stringify({ ...bundle.context, size: report }, null, 2)}\n`); diff --git a/tools/web/task-context-lib.mjs b/tools/web/task-context-lib.mjs new file mode 100644 index 00000000..93dc9fee --- /dev/null +++ b/tools/web/task-context-lib.mjs @@ -0,0 +1,379 @@ +import fs from "node:fs"; +import crypto from "node:crypto"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +export const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); +export const CONTEXT_LIMITS = Object.freeze({ + queueBytes: 4096, + taskBytes: 8192, + parentManifestBytes: 24576, + parentStatusBytes: 6144, + evidenceFiles: 12, + evidenceBytes: 8192, + contextTokens: 3500, +}); + +const read = (file) => fs.readFileSync(file, "utf8"); +const json = (file) => JSON.parse(read(file)); +const relative = (file) => path.relative(root, file).replaceAll(path.sep, "/"); +const tokenEstimate = (value) => Math.ceil(Buffer.byteLength(value, "utf8") / 4); + +const queuePath = path.join(root, "docs/EXECUTION_QUEUE.md"); +const planPath = path.join(root, "tests/golden/M15-03A/next-task-plan.json"); +const taskIndexPath = path.join(root, "tests/golden/M15-03A/task-index.json"); +const sha256File = (file) => crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex"); +let cachedTaskIndex; +let taskIndexLoaded = false; +const safeName = (value) => value.replace(/[^A-Za-z0-9_.-]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 96) || "gap"; +const expandTask = (task) => ({ + ...task, + fixture: { path: `tests/files/web/generated/${task.id}-${safeName(task.gapId)}.blend`, state: "REQUIRED" }, + desktopCommand: `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/${task.id}.py -- tests/files/web/generated/${task.id}-${safeName(task.gapId)}.blend`, + webCommand: `npm --prefix web run test:generated-gap -- --task ${task.id}`, + comparator: `node tools/web/check-generated-gap.mjs --task ${task.id}`, + exitCriteria: ["desktop fixture evidence exists", "WASM uses the same fixture", "comparator passes", "save/reopen preserves Main", "manifest hashes all artifacts"], +}); + +export function parseQueue() { + const source = read(queuePath); + const current = source.match(/当前任务\s*[::]\s*`([^`]+)`/u)?.[1] + ?? source.match(/\|\s*当前任务\s*\|\s*`([^`]+)`/u)?.[1]; + const parentManifest = source.match(/parent manifest\s*[::]\s*`?([^`\n]+)`?/iu)?.[1]?.trim() + ?? source.match(/\|\s*parent manifest\s*\|\s*`([^`]+)`/u)?.[1]; + if (!current || !parentManifest) throw new Error("EXECUTION_QUEUE.md must declare current task and parent manifest"); + return { path: queuePath, source, currentTask: current, parentManifest }; +} + +function loadTaskIndex() { + if (taskIndexLoaded) return cachedTaskIndex; + taskIndexLoaded = true; + if (!fs.existsSync(taskIndexPath)) { + if (fs.existsSync(planPath)) throw new Error(`missing task index; run node tools/web/generate-task-index.mjs (${relative(taskIndexPath)})`); + return null; + } + const index = json(taskIndexPath); + if (index.schemaVersion !== 1 || !index.source?.path || !index.catalog?.path || !index.entries) { + throw new Error(`invalid task index: ${relative(taskIndexPath)}`); + } + cachedTaskIndex = index; + return cachedTaskIndex; +} + +export function verifyTaskIndex() { + const index = loadTaskIndex(); + if (!index) return null; + const sourcePath = path.join(root, index.source.path); + const catalogPath = path.join(root, index.catalog.path); + if (!fs.existsSync(sourcePath) || sha256File(sourcePath) !== index.source.sha256) { + throw new Error(`task index is stale; run node tools/web/generate-task-index.mjs (${relative(taskIndexPath)})`); + } + if (!fs.existsSync(catalogPath) || sha256File(catalogPath) !== index.catalog.sha256) { + throw new Error(`task catalog hash mismatch; run node tools/web/generate-task-index.mjs (${relative(taskIndexPath)})`); + } + return index; +} + +function indexedEntry(task, index = loadTaskIndex()) { + const metadata = index?.entries?.[task]; + if (!metadata) return null; + const catalogPath = path.join(root, index.catalog.path); + if (!fs.existsSync(catalogPath)) throw new Error(`missing task catalog: ${relative(catalogPath)}`); + const handle = fs.openSync(catalogPath, "r"); + try { + const buffer = Buffer.alloc(metadata.length); + fs.readSync(handle, buffer, 0, metadata.length, metadata.offset); + const entry = { ...expandTask(JSON.parse(buffer.toString("utf8"))), previous: metadata.previous, next: metadata.next }; + if (entry.id !== task) throw new Error(`task catalog id mismatch for ${task}`); + return entry; + } finally { + fs.closeSync(handle); + } +} + +export function readIndexedTask(task) { + return indexedEntry(task); +} + +function planEntry(task) { + const indexed = indexedEntry(task); + if (indexed) return indexed; + return null; +} + +function planParent(task) { + const index = loadTaskIndex(); + if (index?.entries?.[task]) return index.entries[task].previous; + return null; +} + +function cardFields(source) { + const get = (name) => source.match(new RegExp(`^[-*]?\\s*\\x60?${name}\\x60?\\s*[::]\\s*\\x60?([^\\n\\x60]+)`, "imu"))?.[1]?.trim(); + const task = get("task"); + const parent = get("parent"); + const status = get("status"); + const gap = get("gap"); + const ownerFamily = get("ownerFamily"); + const targetImplementationClass = get("targetImplementationClass"); + return { task, parent, status, gap, ownerFamily, targetImplementationClass }; +} + +function commandLines(source) { + const candidates = []; + for (const line of source.split("\n")) { + const clean = line.replaceAll("`", "").replace(/^\s*[-*]\s*/, "").trim(); + if (clean === "bash") continue; + if (/^(npm|node|cmake|ctest|bash|build_[A-Za-z0-9_./-]+\/bin\/blender)\b/u.test(clean)) candidates.push(clean); + } + return [...new Set(candidates)].slice(0, 8); +} + +function inputPaths(source) { + const paths = []; + for (const match of source.matchAll(/`([^`]+)`/gu)) { + const value = match[1].trim(); + if (!value || /\s/u.test(value)) continue; + if (/^(docs|tests|tools|web|blender-5\.2\.0|build_blender_5\.2\.0)\//u.test(value)) paths.push(value); + } + return [...new Set(paths)]; +} + +function pathBytes(file, limit) { + let stat; + try { + stat = fs.lstatSync(file); + } catch (error) { + if (error?.code === "ENOENT" || error?.code === "ENOTDIR") return { bytes: null, reason: "MISSING_PATH" }; + return { bytes: null, reason: "PATH_STAT_FAILED" }; + } + if (stat.isSymbolicLink()) return { bytes: null, reason: "SYMLINK_PATH" }; + if (stat.isFile()) return { bytes: stat.size }; + if (!stat.isDirectory()) return { bytes: null, reason: "UNREADABLE_PATH_TYPE" }; + + // Directory evidence is measured recursively, but stop as soon as it cannot fit. + let bytes = 0; + const stack = [file]; + while (stack.length > 0) { + const current = stack.pop(); + let entries; + try { + entries = fs.readdirSync(current, { withFileTypes: true }); + } catch { + return { bytes: null, reason: "PATH_STAT_FAILED" }; + } + for (const entry of entries) { + const child = path.join(current, entry.name); + if (entry.isSymbolicLink()) return { bytes: null, reason: "SYMLINK_PATH" }; + if (entry.isDirectory()) { + stack.push(child); + continue; + } + if (entry.isFile()) { + try { + bytes += fs.statSync(child).size; + } catch { + return { bytes: null, reason: "PATH_STAT_FAILED" }; + } + if (bytes > limit) return { bytes }; + } + } + } + return { bytes }; +} + +const pathWithinRoot = (candidate) => { + if (typeof candidate !== "string" || candidate.length === 0 || path.isAbsolute(candidate)) return false; + const absolute = path.resolve(root, candidate); + return absolute === root || absolute.startsWith(`${root}${path.sep}`); +}; +const normalizedPathKey = (candidate) => path.normalize(candidate).replace(/[\\/]+$/u, ""); + +export function selectInputPaths(candidates, { + sourceBytes = 0, + sourceTokens = 0, + reservedPaths = [], + generatedPaths = [], + limits = {}, +} = {}) { + const effectiveLimits = { ...CONTEXT_LIMITS, ...limits }; + const unique = [...new Set((candidates ?? []).filter((candidate) => typeof candidate === "string" && candidate.length > 0))]; + const reserved = new Set(reservedPaths.map(normalizedPathKey)); + const generated = new Set(generatedPaths.map(normalizedPathKey)); + const contextRemainingTokens = Math.max(0, effectiveLimits.contextTokens - sourceTokens); + const contextRemainingBytes = Math.max(0, effectiveLimits.contextTokens * 4 - sourceBytes); + const excluded = []; + const selected = []; + let selectedBytes = 0; + let selectedTokens = 0; + + for (const candidate of unique) { + const normalized = normalizedPathKey(candidate); + if (generated.has(normalized)) { + excluded.push({ path: candidate, bytes: null, reason: "GENERATED_EVIDENCE_OUTPUT" }); + continue; + } + if (reserved.has(normalized)) { + excluded.push({ path: candidate, bytes: 0, reason: "ALREADY_IN_CONTEXT" }); + continue; + } + if (!pathWithinRoot(candidate)) { + excluded.push({ path: candidate, bytes: null, reason: "PATH_OUTSIDE_REPOSITORY" }); + continue; + } + const absolute = path.join(root, candidate); + const measured = pathBytes(absolute, effectiveLimits.evidenceBytes); + if (measured.reason) { + excluded.push({ path: candidate, bytes: measured.bytes, reason: measured.reason }); + continue; + } + const bytes = measured.bytes; + const tokens = Math.ceil(bytes / 4); + if (selected.length >= effectiveLimits.evidenceFiles) { + excluded.push({ path: candidate, bytes, reason: "EVIDENCE_FILE_COUNT" }); + continue; + } + if (bytes > effectiveLimits.evidenceBytes || selectedBytes + bytes > effectiveLimits.evidenceBytes) { + excluded.push({ path: candidate, bytes, reason: "EVIDENCE_BYTE_BUDGET" }); + continue; + } + if (bytes > contextRemainingBytes || selectedBytes + bytes > contextRemainingBytes + || tokens > contextRemainingTokens || selectedTokens + tokens > contextRemainingTokens) { + excluded.push({ path: candidate, bytes, reason: "CONTEXT_REMAINING_SPACE" }); + continue; + } + selected.push({ path: candidate, bytes, tokens }); + selectedBytes += bytes; + selectedTokens += tokens; + } + + return { + inputPaths: selected.map(({ path: candidate }) => candidate), + inputSelection: { + schemaVersion: 1, + limits: { + maxFiles: effectiveLimits.evidenceFiles, + evidenceBytes: effectiveLimits.evidenceBytes, + contextRemainingBytes, + contextRemainingTokens, + }, + source: { bytes: sourceBytes, tokens: sourceTokens }, + selected, + excluded, + totals: { files: selected.length, bytes: selectedBytes, tokens: selectedTokens }, + }, + }; +} + +function nextFromPlan(task) { + const index = loadTaskIndex(); + if (index?.entries?.[task]) return index.entries[task].next; + return null; +} + +export function buildTaskContext(requestedTask) { + verifyTaskIndex(); + const queue = parseQueue(); + const task = requestedTask ?? queue.currentTask; + const taskPath = path.join(root, "docs/tasks", `${task}.md`); + const entry = planEntry(task); + const taskExists = fs.existsSync(taskPath); + const taskSource = taskExists ? read(taskPath) : ""; + const fields = taskExists ? cardFields(taskSource) : {}; + if (taskExists && fields.task !== task) throw new Error(`task card id mismatch: ${relative(taskPath)}`); + const parent = fields.parent ?? (task === queue.currentTask ? path.basename(path.dirname(queue.parentManifest)) : planParent(task)); + if (!parent) throw new Error(`task ${task} has no parent; add a compact task card or plan parent`); + const parentManifestPath = path.join(root, "tests/golden", parent, "manifest.json"); + if (!fs.existsSync(parentManifestPath)) throw new Error(`missing parent manifest: ${relative(parentManifestPath)}`); + const parentManifestSource = read(parentManifestPath); + const parentManifest = JSON.parse(parentManifestSource); + if (parentManifest.nextTask !== task) throw new Error(`parent manifest nextTask=${parentManifest.nextTask} does not point to ${task}`); + if (parentManifest.status && parentManifest.status !== "done" && !parentManifest.enablingTask) { + throw new Error(`parent manifest status=${parentManifest.status} is not complete`); + } + const parentStatusPath = path.join(root, "docs/status", `${parent}.md`); + const parentStatusSource = fs.existsSync(parentStatusPath) ? read(parentStatusPath) : ""; + const ownManifestPath = path.join(root, "tests/golden", task, "manifest.json"); + const ownManifest = fs.existsSync(ownManifestPath) ? json(ownManifestPath) : null; + if (!requestedTask && task === queue.currentTask && ownManifest?.status === "done") { + throw new Error(`queue current task ${task} is already done; advance EXECUTION_QUEUE.md to ${ownManifest.nextTask}`); + } + if (!requestedTask && task === queue.currentTask && path.basename(path.dirname(queue.parentManifest)) !== parent) { + throw new Error(`queue parent manifest does not match task card parent ${parent}`); + } + const goal = taskExists + ? (taskSource.match(/^##\s+目标\s*\n([\s\S]*?)(?=^##\s|$)/mu)?.[1].trim() + ?? taskSource.match(/^#\s+[^\n::]+[::]\s*(.+)$/mu)?.[1].trim() + ?? taskSource.match(/^#\s+[^\n]+\n\n([^\n]+)/u)?.[1].trim() + ?? `完成 ${entry?.gapId ?? task} 的最小可观察切片`) + : `完成 ${entry?.gapId ?? task} 的最小可观察切片`; + const commands = [...commandLines(taskSource), ...(entry ? [entry.desktopCommand, entry.webCommand, entry.comparator] : [])].filter(Boolean).filter((value, index, values) => values.indexOf(value) === index).slice(0, 8); + const taskBytes = Buffer.byteLength(taskSource, "utf8"); + const taskInputPaths = taskExists ? inputPaths(taskSource) : []; + const candidatePaths = taskExists && taskInputPaths.length > 0 + ? taskInputPaths + : [entry?.fixture?.path, entry?.comparator && "tools/web/check-generated-gap.mjs"].filter(Boolean); + const contextSources = [queue.source, taskSource, parentManifestSource, parentStatusSource]; + const sourceBytes = contextSources.reduce((sum, source) => sum + Buffer.byteLength(source, "utf8"), 0); + const sourceTokens = contextSources.reduce((sum, source) => sum + tokenEstimate(source), 0); + const reservedPaths = [relative(queuePath), relative(taskPath), relative(parentManifestPath), relative(parentStatusPath)]; + const ownStatusPath = path.join(root, "docs/status", `${task}.md`); + const ownOutputDir = path.join(root, "tests/golden", task); + const generatedPaths = [relative(ownOutputDir), relative(ownManifestPath), relative(ownStatusPath)]; + const selectedInputs = selectInputPaths(candidatePaths, { sourceBytes, sourceTokens, reservedPaths, generatedPaths }); + const nextTask = ownManifest?.nextTask ?? nextFromPlan(task) ?? null; + const context = { + schemaVersion: 1, + task, + parentTask: parent, + status: fields.status ?? entry?.state ?? "pending", + goal, + scope: { + gap: fields.gap ?? entry?.gapId ?? "NOT_APPLICABLE", + ownerFamily: fields.ownerFamily ?? entry?.ownerFamily ?? "NOT_APPLICABLE", + implementationClass: fields.targetImplementationClass ?? entry?.targetImplementationClass ?? "NOT_APPLICABLE", + }, + commands, + inputPaths: selectedInputs.inputPaths, + inputSelection: selectedInputs.inputSelection, + exitCriteria: entry?.exitCriteria ?? ["focused command exits 0", "report and manifest are hash-bound", "failure path does not publish a late result"], + nextTask, + sourceDocuments: { + queue: relative(queuePath), + taskCard: taskExists ? relative(taskPath) : "TASK_INDEX_ENTRY", + taskIndex: relative(taskIndexPath), + parentManifest: relative(parentManifestPath), + parentStatus: fs.existsSync(parentStatusPath) ? relative(parentStatusPath) : "NOT_APPLICABLE", + }, + readPolicy: { + required: [relative(queuePath), taskExists ? relative(taskPath) : "TASK_INDEX_ENTRY", relative(parentManifestPath), fs.existsSync(parentStatusPath) ? relative(parentStatusPath) : "NOT_APPLICABLE"], + machineOnly: [relative(taskIndexPath), "tests/golden/M15-03A/task-catalog.jsonl"], + optionalByNeed: ["docs/WEB_BLENDER_MODELER_V1_SCOPE.md", "任务卡列出的精确协议/生产路径", "任务卡明确命名的长期计划小节"], + forbiddenByDefault: ["完整 CURRENT_EXECUTION_PLAN.md", "完整 PROJECT_STATUS_AND_NEXT_WORK.md", "全部 docs/status/*.md", "完整 parity/WBS 计划", "README 历史和 test-results/"], + }, + parent: { + manifest: { + schemaVersion: parentManifest.schemaVersion, + task: parentManifest.task, + parentTask: parentManifest.parentTask, + status: parentManifest.status ?? "done", + nextTask: parentManifest.nextTask, + artifactCount: Object.keys(parentManifest.artifacts ?? {}).length, + }, + statusSummary: parentStatusSource.split("\n").filter(Boolean).slice(0, 8), + }, + budgets: { ...CONTEXT_LIMITS, taskBytes, taskLines: taskSource ? taskSource.split("\n").length : 0, taskTokens: tokenEstimate(taskSource) }, + }; + return { context, files: { queuePath, taskPath, parentManifestPath, parentStatusPath }, sources: { queue, taskSource, parentManifest, parentManifestSource, parentStatusSource } }; +} + +export function contextSizeReport(bundle) { + const { context, files, sources } = bundle; + const measure = (file, source) => ({ path: relative(file), bytes: Buffer.byteLength(source, "utf8"), lines: source ? source.split("\n").length : 0, tokens: tokenEstimate(source) }); + const docs = [measure(files.queuePath, sources.queue.source), measure(files.taskPath, sources.taskSource), measure(files.parentManifestPath, sources.parentManifestSource), measure(files.parentStatusPath, sources.parentStatusSource)]; + const sourceTokens = docs.reduce((sum, item) => sum + item.tokens, 0); + const evidenceBytes = context?.inputSelection?.totals?.bytes ?? 0; + const evidenceFiles = context?.inputSelection?.totals?.files ?? 0; + const evidenceTokens = context?.inputSelection?.totals?.tokens ?? 0; + const totalTokens = sourceTokens + evidenceTokens; + return { documents: docs, sourceTokens, evidenceFiles, evidenceBytes, evidenceTokens, totalTokens, withinBudget: docs[0].bytes <= CONTEXT_LIMITS.queueBytes && docs[1].bytes <= CONTEXT_LIMITS.taskBytes && docs[2].bytes <= CONTEXT_LIMITS.parentManifestBytes && docs[3].bytes <= CONTEXT_LIMITS.parentStatusBytes && evidenceFiles <= CONTEXT_LIMITS.evidenceFiles && evidenceBytes <= CONTEXT_LIMITS.evidenceBytes && totalTokens <= CONTEXT_LIMITS.contextTokens }; +} diff --git a/web/app/public/vendor/blender/web_engine.wasm b/web/app/public/vendor/blender/web_engine.wasm index a213cd82..3c3e6119 100644 Binary files a/web/app/public/vendor/blender/web_engine.wasm and b/web/app/public/vendor/blender/web_engine.wasm differ diff --git a/web/app/src/app/App.tsx b/web/app/src/app/App.tsx index 9c78336d..18b959ab 100644 --- a/web/app/src/app/App.tsx +++ b/web/app/src/app/App.tsx @@ -873,7 +873,7 @@ function Properties({ snapshot, selectedFaceIndices, selectedVertexIndices, grea

Transform

{activeNode ?

Object & Hierarchy

: null} -

Viewport Display

+

Viewport Display

{activeCurve && curveTopologyOperatorGate("TOGGLE_CYCLIC").status === "READY" ?

Curve Topology

{activeCurve.cyclicU?.[curveSplineIndex] ? "Cyclic" : "Open"}{curveTopologyError ? {curveTopologyError} : null}
: null} {activeMesh ?

UV Maps

: null} {activeGreasePencil ?
*, .topbar-actions button { flex: none; white-space: nowrap; } diff --git a/web/app/src/three-adapter/offscreen-viewport.ts b/web/app/src/three-adapter/offscreen-viewport.ts index 5b10d969..c622bb29 100644 --- a/web/app/src/three-adapter/offscreen-viewport.ts +++ b/web/app/src/three-adapter/offscreen-viewport.ts @@ -9,6 +9,7 @@ import type { OffscreenViewportRequest, OffscreenViewportResponse } from "./offs import { PBR_PROFILE, PBR_SHADOW_PROFILE, PBR_TONE_MAPPING } from "./pbr"; import { resolveViewportPixelMetrics, viewportNDC } from "../../../protocol/viewport-dpr"; import { observePointerEvent } from "../../../protocol/pointer-contract"; +import { createInputModalState, reduceInputModal, type InputModalState } from "../../../protocol/input-modal"; import type { NonMeshElementKind } from "./nonmesh"; import type { GreasePencilPointPreview, GreasePencilPointRef } from "./grease-pencil"; import type { CurveGizmoFrameIR, CurveGizmoHandleIR } from "../../../protocol/nonmesh-interaction"; @@ -88,6 +89,8 @@ export class OffscreenViewportRenderer implements ViewportBackend { private readonly onGreasePencilPointSelect?: (point: GreasePencilPointRef, additive: boolean, baseSelectionRevision: number) => void; private readonly onGreasePencilMarqueeSelect?: (result: GreasePencilMarqueeResultIR, additive: boolean) => void; private pointer: { id: number; x: number; y: number; moved: boolean } | null = null; + private inputModal: InputModalState = createInputModalState(); + private touchNavigationActive = false; private lastSnapshot: SceneSnapshotIR | null = null; private lastGeometryBuffers: MeshGeometryBuffer[] | null = null; private lastNonMeshGeometryBuffers: NonMeshGeometryChunk[] | null = null; @@ -134,6 +137,7 @@ export class OffscreenViewportRenderer implements ViewportBackend { canvas.dataset.pbrProfile = PBR_PROFILE; canvas.dataset.toneMapping = PBR_TONE_MAPPING; canvas.dataset.shadowMap = PBR_SHADOW_PROFILE; + this.publishInputModal(); } setSnapshot(snapshot: SceneSnapshotIR, geometryBuffers: MeshGeometryBuffer[] = [], nonMeshGeometryBuffers: NonMeshGeometryChunk[] = []): void { @@ -252,8 +256,8 @@ export class OffscreenViewportRenderer implements ViewportBackend { } private pointerDown = (event: PointerEvent): void => { - try { this.canvas.dataset.lastPointer = JSON.stringify(observePointerEvent(event)); } - catch { this.canvas.dataset.lastPointer = "BLOCKED"; } + const observation = this.recordInputModalEvent(event); + if (observation?.pointerType === "touch" && this.inputModal.activePointerIds.length >= 2) this.touchNavigationActive = true; this.pointer = { id: event.pointerId, x: event.clientX, y: event.clientY, moved: false }; try { this.canvas.setPointerCapture(event.pointerId); @@ -274,8 +278,17 @@ export class OffscreenViewportRenderer implements ViewportBackend { }; private pointerUp = (event: PointerEvent): void => { - try { this.canvas.dataset.lastPointer = JSON.stringify(observePointerEvent(event)); } - catch { this.canvas.dataset.lastPointer = "BLOCKED"; } + const observation = this.recordInputModalEvent(event); + const wasTouchNavigation = this.touchNavigationActive; + if (observation?.pointerType === "touch" && this.inputModal.activePointerIds.length === 0) this.touchNavigationActive = false; + if (!observation) { + this.pointer = null; + return; + } + if (event.type === "pointercancel" || observation.pointerType === "pen" || wasTouchNavigation) { + this.pointer = null; + return; + } if (!this.pointer || this.pointer.id !== event.pointerId) return; if (!this.pointer.moved) { const bounds = this.canvas.getBoundingClientRect(); @@ -285,6 +298,37 @@ export class OffscreenViewportRenderer implements ViewportBackend { this.pointer = null; }; + private recordInputModalEvent(event: PointerEvent): ReturnType | null { + try { + const observation = observePointerEvent(event); + this.canvas.dataset.lastPointer = JSON.stringify(observation); + if (observation.pointerType === "touch" || observation.pointerType === "pen") { + this.inputModal = reduceInputModal(this.inputModal, { + type: event.type as "pointerdown" | "pointerup" | "pointercancel", + pointerType: observation.pointerType, + pointerId: observation.pointerId, + }); + this.publishInputModal(); + } + return observation; + } + catch { + this.canvas.dataset.lastPointer = "BLOCKED"; + this.canvas.dataset.inputModalError = "INPUT_MODAL_EVENT_BLOCKED"; + return null; + } + } + + private publishInputModal(): void { + this.canvas.dataset.inputModalSchemaVersion = String(this.inputModal.schemaVersion); + this.canvas.dataset.inputModalKind = this.inputModal.kind; + this.canvas.dataset.inputModalActivePointerIds = this.inputModal.activePointerIds.join(","); + this.canvas.dataset.inputModalCancelled = this.inputModal.cancelled ? "1" : "0"; + this.canvas.dataset.inputModalNavigationRevision = String(this.inputModal.navigationRevision); + this.canvas.dataset.inputModalMainCommitCount = String(this.inputModal.mainCommitCount); + this.canvas.dataset.inputModalError = ""; + } + private wheel = (event: WheelEvent): void => { event.preventDefault(); this.worker.postMessage({ type: "orbit", deltaX: 0, deltaY: 0, zoom: event.deltaY } satisfies OffscreenViewportRequest); diff --git a/web/app/src/three-adapter/viewport.ts b/web/app/src/three-adapter/viewport.ts index 7258abbd..22fd899d 100644 --- a/web/app/src/three-adapter/viewport.ts +++ b/web/app/src/three-adapter/viewport.ts @@ -71,6 +71,7 @@ import { validatePaintDepthVisibilityRequest, type PaintDepthVisibilityRequestIR import { samplePaintDepthVisibilityGPU } from "./paint-depth-visibility"; import { resolveViewportPixelMetrics, viewportNDC } from "../../../protocol/viewport-dpr"; import { observePointerEvent } from "../../../protocol/pointer-contract"; +import { createInputModalState, reduceInputModal, type InputModalState } from "../../../protocol/input-modal"; export function collectMeshInstanceGroups(snapshot: SceneSnapshotIR, minimumSize = 2): Map { const groups = new Map(); @@ -104,6 +105,7 @@ export class ViewportRenderer { private readonly textureStore = new GPUTextureStore("THREE_WEBGL2"); private readonly raycaster = new Raycaster(); private readonly pointer = new Vector2(); + private inputModal: InputModalState = createInputModalState(); private readonly onSelect?: (objectId: string, additive: boolean) => void; private readonly onElementSelect?: (meshId: string, mode: MeshElementMode, index: number, additive: boolean, nonMeshKind?: NonMeshElementKind) => void; private readonly onGreasePencilPointSelect?: (point: GreasePencilPointRef, additive: boolean, baseSelectionRevision: number) => void; @@ -173,12 +175,14 @@ export class ViewportRenderer { this.resizeObserver.observe(canvas); this.canvas.addEventListener("click", this.handleClick); this.canvas.addEventListener("pointerdown", this.handlePointerObservation); + this.canvas.addEventListener("pointerup", this.handlePointerObservation); this.canvas.addEventListener("pointercancel", this.handlePointerObservation); this.canvas.addEventListener("webglcontextlost", this.handleContextLost); this.canvas.addEventListener("webglcontextrestored", this.handleContextRestored); this.resize(); this.controls.update(); this.publishCameraState(); + this.publishInputModal(); this.renderLoop(); } @@ -821,6 +825,8 @@ export class ViewportRenderer { if ("pointerType" in event) { try { this.canvas.dataset.lastPointer = JSON.stringify(observePointerEvent(event as MouseEvent & { pointerType?: string; pointerId?: number; pressure?: number; tiltX?: number; tiltY?: number; buttons?: number; type?: string })); } catch { this.canvas.dataset.lastPointer = "BLOCKED"; } + const pointerType = (event as MouseEvent & { pointerType?: string }).pointerType; + if ((pointerType === "touch" || pointerType === "pen") && this.inputModal.cancelled) return; } const bounds = this.canvas.getBoundingClientRect(); if (bounds.width <= 0 || bounds.height <= 0) return; @@ -897,10 +903,34 @@ export class ViewportRenderer { }; private handlePointerObservation = (event: PointerEvent): void => { - try { this.canvas.dataset.lastPointer = JSON.stringify(observePointerEvent(event)); } - catch { this.canvas.dataset.lastPointer = "BLOCKED"; } + try { + const observation = observePointerEvent(event); + this.canvas.dataset.lastPointer = JSON.stringify(observation); + if (observation.pointerType === "touch" || observation.pointerType === "pen") { + this.inputModal = reduceInputModal(this.inputModal, { + type: event.type as "pointerdown" | "pointerup" | "pointercancel", + pointerType: observation.pointerType, + pointerId: observation.pointerId, + }); + this.publishInputModal(); + } + } + catch { + this.canvas.dataset.lastPointer = "BLOCKED"; + this.canvas.dataset.inputModalError = "INPUT_MODAL_EVENT_BLOCKED"; + } }; + private publishInputModal(): void { + this.canvas.dataset.inputModalSchemaVersion = String(this.inputModal.schemaVersion); + this.canvas.dataset.inputModalKind = this.inputModal.kind; + this.canvas.dataset.inputModalActivePointerIds = this.inputModal.activePointerIds.join(","); + this.canvas.dataset.inputModalCancelled = this.inputModal.cancelled ? "1" : "0"; + this.canvas.dataset.inputModalNavigationRevision = String(this.inputModal.navigationRevision); + this.canvas.dataset.inputModalMainCommitCount = String(this.inputModal.mainCommitCount); + this.canvas.dataset.inputModalError = ""; + } + private renderLoop = (): void => { if (this.disposed) return; if (!this.contextLost) { @@ -965,6 +995,7 @@ export class ViewportRenderer { this.resizeObserver.disconnect(); this.canvas.removeEventListener("click", this.handleClick); this.canvas.removeEventListener("pointerdown", this.handlePointerObservation); + this.canvas.removeEventListener("pointerup", this.handlePointerObservation); this.canvas.removeEventListener("pointercancel", this.handlePointerObservation); this.canvas.removeEventListener("webglcontextlost", this.handleContextLost); this.canvas.removeEventListener("webglcontextrestored", this.handleContextRestored); diff --git a/web/app/src/vendor/blender/web_engine.wasm b/web/app/src/vendor/blender/web_engine.wasm index a213cd82..3c3e6119 100644 Binary files a/web/app/src/vendor/blender/web_engine.wasm and b/web/app/src/vendor/blender/web_engine.wasm differ diff --git a/web/package.json b/web/package.json index c2a1f4da..e613fb56 100644 --- a/web/package.json +++ b/web/package.json @@ -59,6 +59,9 @@ "test:physics-cache-family": "node --test tests/unit/physics-cache-family.test.mjs && playwright test --config playwright.config.ts --workers=1 tests/e2e/physics-cache-family.spec.ts", "test:m10-domain-gates": "node --test tests/unit/geometry-nodes.test.mjs tests/unit/shader-compiler.test.mjs tests/unit/nla.test.mjs tests/unit/simulation-cache.test.mjs && playwright test --config playwright.config.ts --workers=1 tests/e2e/m10-domain-browser-gates.spec.ts", "test:browser": "playwright test --config playwright.release.config.ts", + "test:task-context": "node --test tests/unit/task-context.test.mjs && node ../tools/web/check-task-context.mjs", + "test:context-governance": "node --test tests/unit/task-context.test.mjs tests/unit/context-governance.test.mjs && node ../tools/web/check-context-governance.mjs", + "task:context": "node ../tools/web/print-task-context.mjs", "test:cross-browser": "npm run test:browser", "test:golden": "node ../tools/web/run-blender-golden.mjs", "test:collapse-ratios": "node ../tools/web/check-collapse-ratios.mjs", @@ -213,6 +216,26 @@ "test:chromium-ime-guard": "node --test tests/unit/ime-composition.test.mjs && node ../tools/web/check-chromium-ime-guard.mjs", "test:chromium-keymap-fixture": "node --test tests/unit/keyboard-contract.test.mjs && node ../tools/web/check-chromium-keymap-fixture.mjs", "test:chromium-input-modal": "node --test tests/unit/input-modal.test.mjs && node ../tools/web/check-chromium-input-modal.mjs", + "test:chromium-layout": "node ../tools/web/check-chromium-layout.mjs", + "test:chromium-accessibility": "node ../tools/web/check-chromium-accessibility.mjs", + "test:blender-rna-inventory": "node ../tools/web/check-blender-rna-datablock-inventory.mjs", + "test:blender-operator-inventory": "node ../tools/web/check-blender-operator-inventory.mjs", + "test:blender-family-inventory": "node ../tools/web/check-blender-family-inventory.mjs", + "test:blender-format-inventory": "node ../tools/web/check-blender-format-inventory.mjs", + "test:blender-editor-inventory": "node ../tools/web/check-blender-editor-inventory.mjs", + "test:blender-core-inventory": "node ../tools/web/check-blender-core-inventory.mjs", + "test:blender-parity-map": "node ../tools/web/check-blender-parity-map.mjs", + "test:blender-gap-audit": "node ../tools/web/check-blender-gap-audit.mjs", + "test:blender-local-exact-audit": "node ../tools/web/check-blender-contract-audit.mjs M15-02C", + "test:blender-local-equivalent-audit": "node ../tools/web/check-blender-contract-audit.mjs M15-02D", + "test:blender-server-exact-audit": "node ../tools/web/check-blender-contract-audit.mjs M15-02E", + "test:blender-unknown-data-audit": "node ../tools/web/check-blender-contract-audit.mjs M15-02F", + "test:blender-next-task-plan": "node ../tools/web/check-blender-next-task-plan.mjs", + "test:blender-next-task-spec": "node ../tools/web/check-blender-next-task-spec.mjs", + "test:blender-task-graph": "node ../tools/web/check-blender-task-graph.mjs", + "test:blender-task-stats": "node ../tools/web/check-blender-task-stats.mjs", + "test:blender-zero-gap-gate": "node ../tools/web/check-blender-zero-gap-gate.mjs", + "test:generated-gap": "node ../tools/web/check-generated-gap.mjs", "test:firefox-quick": "npm run typecheck && node ../tools/web/check-firefox-quick.mjs", "test:script-main-reader": "node ../tools/web/check-script-main-reader.mjs", "test:scripting-isolation": "node ../tools/web/check-scripting-isolation.mjs", diff --git a/web/protocol/input-modal.ts b/web/protocol/input-modal.ts index cd94fbc9..84d914f9 100644 --- a/web/protocol/input-modal.ts +++ b/web/protocol/input-modal.ts @@ -11,6 +11,12 @@ export interface InputModalState { mainCommitCount: number; } +export interface InputModalEvent { + type: "pointerdown" | "pointerup" | "pointercancel"; + pointerType: "touch" | "pen"; + pointerId: number; +} + export function createInputModalState(): InputModalState { return { schemaVersion: 1, kind: "NONE", activePointerIds: [], cancelled: false, navigationRevision: 0, mainCommitCount: 0 }; } @@ -39,3 +45,15 @@ export function commitPenStroke(state: InputModalState, pointerId: number): Inpu if (state.kind !== "PEN_STROKE" || !state.activePointerIds.includes(pointerId) || state.cancelled) return state; return { ...state, kind: "NONE", activePointerIds: [], mainCommitCount: state.mainCommitCount + 1 }; } + +export function reduceInputModal(state: InputModalState, event: InputModalEvent): InputModalState { + if (!Number.isSafeInteger(event.pointerId) || event.pointerId < 0) throw new Error("POINTER_ID_INVALID"); + if (event.pointerType === "touch") { + if (event.type === "pointerdown") return beginTouch(state, event.pointerId); + if (event.type === "pointerup") return endTouch(state, event.pointerId); + return cancelInputModal(state); + } + if (event.type === "pointerdown") return beginPenStroke(state, event.pointerId); + if (event.type === "pointerup") return commitPenStroke(state, event.pointerId); + return cancelInputModal(state); +} diff --git a/web/protocol/scene-ir.ts b/web/protocol/scene-ir.ts index 95e027b0..eb871c7f 100644 --- a/web/protocol/scene-ir.ts +++ b/web/protocol/scene-ir.ts @@ -377,6 +377,68 @@ export interface VFontResourceIR { sha256?: string; } +export interface SoundResourceIR { + id: string; + name: string; + sourcePath: string; + packed: boolean; + packedByteLength?: number; + volume: number; + pitch: number; + audioChannels: number; + sampleRate: number; +} + +export interface SpeakerResourceIR { + id: string; + name: string; + soundId?: string; + volumeMax: number; + volumeMin: number; + distanceMax: number; + distanceReference: number; + attenuation: number; + coneAngleOuter: number; + coneAngleInner: number; + coneVolumeOuter: number; + volume: number; + pitch: number; +} + +export interface TextResourceIR { + id: string; + name: string; + source: string; + sourceSha256: string; + byteLength: number; + lineCount: number; + internal: boolean; + sourcePath?: string; + isDirty: boolean; + useModule: boolean; +} + +export interface TextureResourceIR { + id: string; + name: string; + type: number; + noiseScale: number; + noiseDepth: number; + intensity: number; + contrast: number; + saturation: number; +} + +export interface WindowManagerResourceIR { + id: string; + name: string; + presetName: string; + windowCount: number; + interfaceLocked: boolean; +} + +export interface WorkspaceResourceIR { id: string; name: string; screenCount: number } + export interface NonMeshVolumePropertiesIR { displayDensity: number; interpolation: "NEAREST" | "LINEAR"; @@ -488,6 +550,9 @@ export interface SceneSnapshotIR { lights: LightIR[]; worlds: WorldIR[]; images: ImageIR[]; + brushes?: BrushIR[]; + lineStyles?: FreestyleLineStyleIR[]; + lattices?: LatticeIR[]; nonMeshData?: NonMeshDataIR[]; vfonts?: VFontResourceIR[]; greasePencils?: GreasePencilDataIR[]; @@ -499,6 +564,13 @@ export interface SceneSnapshotIR { scriptSources?: ScriptSourceInventoryIR; scriptSourceStatus?: "AVAILABLE" | "BLOCKED"; physicsSimulation?: PhysicsSimulationManifestIR; + particleSettings?: ParticleSettingsIR[]; + sounds?: SoundResourceIR[]; + speakers?: SpeakerResourceIR[]; + texts?: TextResourceIR[]; + textures?: TextureResourceIR[]; + windowManager?: WindowManagerResourceIR; + workspaces?: WorkspaceResourceIR[]; geometryNodeGraphs?: GeometryNodeGraphIR[]; libraries?: Array<{ id: string; @@ -520,6 +592,66 @@ export interface SceneSnapshotIR { frame: { current: number; start: number; end: number }; } +export interface ParticleSettingsIR { + id: string; + name: string; + type: number; + from: number; + distribution: number; + physicsType: number; + totalParticles: number; + start: number; + end: number; + lifetime: number; + size: number; + drawSize: number; +} + +export interface BrushIR { + id: string; + name: string; + size: number; + alpha: number; + hardness: number; + spacing: number; + jitter: number; + sculptTool: number; +} + +export interface FreestyleLineStyleIR { + id: string; + name: string; + color: [number, number, number]; + alpha: number; + thickness: number; + chaining: number; + caps: number; + dashed: boolean; + modifierCounts: { color: number; alpha: number; thickness: number; geometry: number }; +} + +export type LatticeInterpolationIR = "KEY_LINEAR" | "KEY_CARDINAL" | "KEY_BSPLINE" | "KEY_CATMULL_ROM"; + +export interface LatticePointIR { + coDeform: [number, number, number]; + weight: number; + selected: boolean; +} + +export interface LatticeIR { + id: string; + name: string; + dimensions: [number, number, number]; + pointCount: number; + interpolation: [LatticeInterpolationIR, LatticeInterpolationIR, LatticeInterpolationIR]; + useOutside: boolean; + activePoint: number; + vertexGroup: string; + status: "AVAILABLE" | "BLOCKED"; + points?: LatticePointIR[]; + errorCode?: "LATTICE_DIMENSIONS_INVALID" | "LATTICE_POINTS_UNREADABLE"; +} + function isRecord(value: unknown): value is Record { return typeof value === "object" && value !== null && !Array.isArray(value); } @@ -564,7 +696,218 @@ export function parseSceneSnapshotIR(value: unknown): SceneSnapshotIR { requireArray(value.lights, "lights"); requireArray(value.worlds, "worlds"); requireArray(value.images, "images"); + if (value.brushes !== undefined) { + const brushes = requireArray(value.brushes, "brushes"); + for (const [index, brush] of brushes.entries()) { + if (!isRecord(brush)) throw new Error(`SceneIR.brushes[${index}] must be an object`); + requireString(brush.id, `brushes[${index}].id`); + requireString(brush.name, `brushes[${index}].name`); + const size = requireNumber(brush.size, `brushes[${index}].size`); + const alpha = requireNumber(brush.alpha, `brushes[${index}].alpha`); + const hardness = requireNumber(brush.hardness, `brushes[${index}].hardness`); + const spacing = requireNumber(brush.spacing, `brushes[${index}].spacing`); + const jitter = requireNumber(brush.jitter, `brushes[${index}].jitter`); + const sculptTool = requireNumber(brush.sculptTool, `brushes[${index}].sculptTool`); + if (!Number.isSafeInteger(size) || size < 0 || size > 100000 || alpha < 0 || alpha > 1 || hardness < 0 || hardness > 1 || !Number.isSafeInteger(spacing) || spacing < 1 || spacing > 1000 || jitter < 0 || jitter > 1 || !Number.isSafeInteger(sculptTool) || sculptTool < 0) { + throw new Error(`SceneIR.brushes[${index}] is outside the bounded brush contract`); + } + } + } + if (value.lineStyles !== undefined) { + const lineStyles = requireArray(value.lineStyles, "lineStyles"); + for (const [index, lineStyle] of lineStyles.entries()) { + if (!isRecord(lineStyle)) throw new Error(`SceneIR.lineStyles[${index}] must be an object`); + requireString(lineStyle.id, `lineStyles[${index}].id`); + requireString(lineStyle.name, `lineStyles[${index}].name`); + requireTuple(lineStyle.color, 3, `lineStyles[${index}].color`); + const alpha = requireNumber(lineStyle.alpha, `lineStyles[${index}].alpha`); + const thickness = requireNumber(lineStyle.thickness, `lineStyles[${index}].thickness`); + requireNumber(lineStyle.chaining, `lineStyles[${index}].chaining`); + requireNumber(lineStyle.caps, `lineStyles[${index}].caps`); + requireBoolean(lineStyle.dashed, `lineStyles[${index}].dashed`); + if (!isRecord(lineStyle.modifierCounts)) throw new Error(`SceneIR.lineStyles[${index}].modifierCounts must be an object`); + for (const field of ["color", "alpha", "thickness", "geometry"] as const) { + const count = requireNumber(lineStyle.modifierCounts[field], `lineStyles[${index}].modifierCounts.${field}`); + if (!Number.isSafeInteger(count) || count < 0 || count > 1024) throw new Error(`SceneIR.lineStyles[${index}].modifierCounts.${field} is outside budget`); + } + if (alpha < 0 || alpha > 1 || thickness < 0 || thickness > 10000) throw new Error(`SceneIR.lineStyles[${index}] is outside bounds`); + } + } + if (value.lattices !== undefined) { + const lattices = requireArray(value.lattices, "lattices"); + if (lattices.length > 4096) throw new Error("SceneIR.lattices exceeds the data-block budget"); + const ids = new Set(); + for (const [index, lattice] of lattices.entries()) { + if (!isRecord(lattice)) throw new Error(`SceneIR.lattices[${index}] must be an object`); + const id = requireString(lattice.id, `lattices[${index}].id`); + if (!id.startsWith("lattice:") || ids.has(id)) throw new Error(`SceneIR.lattices[${index}].id is invalid`); + ids.add(id); + requireString(lattice.name, `lattices[${index}].name`); + if (!Array.isArray(lattice.dimensions) || lattice.dimensions.length !== 3 || lattice.dimensions.some((item) => !Number.isSafeInteger(item) || item < 1 || item > 64)) throw new Error(`SceneIR.lattices[${index}].dimensions is invalid`); + const pointCount = requireNumber(lattice.pointCount, `lattices[${index}].pointCount`); + const expectedCount = (lattice.dimensions as number[]).reduce((product, item) => product * item, 1); + if (!Number.isSafeInteger(pointCount) || pointCount !== expectedCount || pointCount > 64 * 64 * 64) throw new Error(`SceneIR.lattices[${index}].pointCount is invalid`); + const interpolation = ["KEY_LINEAR", "KEY_CARDINAL", "KEY_BSPLINE", "KEY_CATMULL_ROM"]; + if (!Array.isArray(lattice.interpolation) || lattice.interpolation.length !== 3 || lattice.interpolation.some((item) => !interpolation.includes(item as string))) throw new Error(`SceneIR.lattices[${index}].interpolation is invalid`); + requireBoolean(lattice.useOutside, `lattices[${index}].useOutside`); + const activePoint = requireNumber(lattice.activePoint, `lattices[${index}].activePoint`); + if (!Number.isSafeInteger(activePoint) || activePoint < -1 || activePoint >= pointCount) throw new Error(`SceneIR.lattices[${index}].activePoint is invalid`); + requireString(lattice.vertexGroup, `lattices[${index}].vertexGroup`); + if (lattice.status !== "AVAILABLE" && lattice.status !== "BLOCKED") throw new Error(`SceneIR.lattices[${index}].status is invalid`); + if (lattice.status === "AVAILABLE") { + if (!Array.isArray(lattice.points) || lattice.points.length !== pointCount) throw new Error(`SceneIR.lattices[${index}].points is incomplete`); + for (const [pointIndex, point] of lattice.points.entries()) { + if (!isRecord(point)) throw new Error(`SceneIR.lattices[${index}].points[${pointIndex}] is invalid`); + requireTuple(point.coDeform, 3, `lattices[${index}].points[${pointIndex}].coDeform`); + const weight = requireNumber(point.weight, `lattices[${index}].points[${pointIndex}].weight`); + if (weight < 0.01 || weight > 100) throw new Error(`SceneIR.lattices[${index}].points[${pointIndex}].weight is invalid`); + requireBoolean(point.selected, `lattices[${index}].points[${pointIndex}].selected`); + } + if (lattice.errorCode !== undefined) throw new Error(`SceneIR.lattices[${index}] available data cannot contain errorCode`); + } + else if (!lattice.errorCode || lattice.points !== undefined) { + throw new Error(`SceneIR.lattices[${index}] blocked data is incomplete`); + } + } + } if (value.nonMeshData !== undefined) requireArray(value.nonMeshData, "nonMeshData"); + if (value.particleSettings !== undefined) { + const settings = requireArray(value.particleSettings, "particleSettings"); + if (settings.length > 4096) throw new Error("SceneIR.particleSettings exceeds the data-block budget"); + const ids = new Set(); + for (const [index, setting] of settings.entries()) { + if (!isRecord(setting)) throw new Error(`SceneIR.particleSettings[${index}] must be an object`); + const id = requireString(setting.id, `particleSettings[${index}].id`); + if (!id.startsWith("particle-settings:") || ids.has(id)) throw new Error(`SceneIR.particleSettings[${index}].id is invalid`); + ids.add(id); + requireString(setting.name, `particleSettings[${index}].name`); + for (const field of ["type", "from", "distribution", "physicsType", "totalParticles"] as const) { + const number = requireNumber(setting[field], `particleSettings[${index}].${field}`); + if (!Number.isSafeInteger(number) || number < 0) throw new Error(`SceneIR.particleSettings[${index}].${field} is invalid`); + } + for (const field of ["start", "end", "lifetime", "size", "drawSize"] as const) { + const number = requireNumber(setting[field], `particleSettings[${index}].${field}`); + if (number < 0 || number > 1_000_000) throw new Error(`SceneIR.particleSettings[${index}].${field} is invalid`); + } + } + } + if (value.sounds !== undefined) { + const sounds = requireArray(value.sounds, "sounds"); + if (sounds.length > 4096) throw new Error("SceneIR.sounds exceeds the data-block budget"); + const ids = new Set(); + for (const [index, sound] of sounds.entries()) { + if (!isRecord(sound)) throw new Error(`SceneIR.sounds[${index}] must be an object`); + const id = requireString(sound.id, `sounds[${index}].id`); + if (!id.startsWith("sound:") || ids.has(id)) throw new Error(`SceneIR.sounds[${index}].id is invalid`); + ids.add(id); + requireString(sound.name, `sounds[${index}].name`); + requireString(sound.sourcePath, `sounds[${index}].sourcePath`); + requireBoolean(sound.packed, `sounds[${index}].packed`); + for (const field of ["volume", "pitch"] as const) { + const number = requireNumber(sound[field], `sounds[${index}].${field}`); + if (number < 0 || number > 1000) throw new Error(`SceneIR.sounds[${index}].${field} is outside bounds`); + } + for (const field of ["audioChannels", "sampleRate"] as const) { + const number = requireNumber(sound[field], `sounds[${index}].${field}`); + if (!Number.isSafeInteger(number) || number < 0 || number > 1_000_000) throw new Error(`SceneIR.sounds[${index}].${field} is invalid`); + } + if (sound.packedByteLength !== undefined && (!Number.isSafeInteger(sound.packedByteLength) || (sound.packedByteLength as number) < 0)) throw new Error(`SceneIR.sounds[${index}].packedByteLength is invalid`); + if (sound.packed && sound.packedByteLength === undefined) throw new Error(`SceneIR.sounds[${index}] packed identity is incomplete`); + } + } + if (value.speakers !== undefined) { + const speakers = requireArray(value.speakers, "speakers"); + if (speakers.length > 4096) throw new Error("SceneIR.speakers exceeds the data-block budget"); + const ids = new Set(); + for (const [index, speaker] of speakers.entries()) { + if (!isRecord(speaker)) throw new Error(`SceneIR.speakers[${index}] must be an object`); + const id = requireString(speaker.id, `speakers[${index}].id`); + if (!id.startsWith("speaker:") || ids.has(id)) throw new Error(`SceneIR.speakers[${index}].id is invalid`); + ids.add(id); + requireString(speaker.name, `speakers[${index}].name`); + if (speaker.soundId !== undefined && (!Array.isArray(value.sounds) || typeof speaker.soundId !== "string" || !speaker.soundId.startsWith("sound:"))) { + throw new Error(`SceneIR.speakers[${index}].soundId is invalid`); + } + for (const field of ["volumeMax", "volumeMin", "distanceMax", "distanceReference", "attenuation"] as const) { + const number = requireNumber(speaker[field], `speakers[${index}].${field}`); + if (number < 0 || number > 1_000_000_000) throw new Error(`SceneIR.speakers[${index}].${field} is outside bounds`); + } + for (const field of ["coneAngleOuter", "coneAngleInner"] as const) { + const number = requireNumber(speaker[field], `speakers[${index}].${field}`); + if (number < 0 || number > 360) throw new Error(`SceneIR.speakers[${index}].${field} is outside bounds`); + } + const coneVolumeOuter = requireNumber(speaker.coneVolumeOuter, `speakers[${index}].coneVolumeOuter`); + if (coneVolumeOuter < 0 || coneVolumeOuter > 1) throw new Error(`SceneIR.speakers[${index}].coneVolumeOuter is outside bounds`); + for (const field of ["volume", "pitch"] as const) { + const number = requireNumber(speaker[field], `speakers[${index}].${field}`); + if (number < 0 || number > 1000) throw new Error(`SceneIR.speakers[${index}].${field} is outside bounds`); + } + } + } + if (value.texts !== undefined) { + const texts = requireArray(value.texts, "texts"); + if (texts.length > 4096) throw new Error("SceneIR.texts exceeds the data-block budget"); + const ids = new Set(); + for (const [index, text] of texts.entries()) { + if (!isRecord(text)) throw new Error(`SceneIR.texts[${index}] must be an object`); + const id = requireString(text.id, `texts[${index}].id`); + if (!id.startsWith("text:") || ids.has(id)) throw new Error(`SceneIR.texts[${index}].id is invalid`); + ids.add(id); + requireString(text.name, `texts[${index}].name`); + const source = requireString(text.source, `texts[${index}].source`); + const sourceSha256 = requireString(text.sourceSha256, `texts[${index}].sourceSha256`); + if (!/^[a-f0-9]{64}$/.test(sourceSha256)) throw new Error(`SceneIR.texts[${index}].sourceSha256 is invalid`); + const byteLength = requireNumber(text.byteLength, `texts[${index}].byteLength`); + const lineCount = requireNumber(text.lineCount, `texts[${index}].lineCount`); + if (!Number.isSafeInteger(byteLength) || byteLength !== new TextEncoder().encode(source).byteLength || byteLength > 1_048_576) throw new Error(`SceneIR.texts[${index}].byteLength is invalid`); + if (!Number.isSafeInteger(lineCount) || lineCount < 1 || lineCount > 65_536) throw new Error(`SceneIR.texts[${index}].lineCount is invalid`); + requireBoolean(text.internal, `texts[${index}].internal`); + if (text.sourcePath !== undefined) requireString(text.sourcePath, `texts[${index}].sourcePath`); + requireBoolean(text.isDirty, `texts[${index}].isDirty`); + requireBoolean(text.useModule, `texts[${index}].useModule`); + } + } + if (value.textures !== undefined) { + const textures = requireArray(value.textures, "textures"); + if (textures.length > 4096) throw new Error("SceneIR.textures exceeds the data-block budget"); + const ids = new Set(); + for (const [index, texture] of textures.entries()) { + if (!isRecord(texture)) throw new Error(`SceneIR.textures[${index}] must be an object`); + const id = requireString(texture.id, `textures[${index}].id`); + if (!id.startsWith("texture:") || ids.has(id)) throw new Error(`SceneIR.textures[${index}].id is invalid`); + ids.add(id); + requireString(texture.name, `textures[${index}].name`); + const type = requireNumber(texture.type, `textures[${index}].type`); + const noiseDepth = requireNumber(texture.noiseDepth, `textures[${index}].noiseDepth`); + if (!Number.isSafeInteger(type) || type < 0 || !Number.isSafeInteger(noiseDepth) || noiseDepth < 0 || noiseDepth > 30) throw new Error(`SceneIR.textures[${index}] integer fields are invalid`); + for (const field of ["noiseScale", "intensity", "contrast", "saturation"] as const) { + const number = requireNumber(texture[field], `textures[${index}].${field}`); + if (number < 0 || number > 1000) throw new Error(`SceneIR.textures[${index}].${field} is outside bounds`); + } + } + } + if (value.windowManager !== undefined) { + if (!isRecord(value.windowManager)) throw new Error("SceneIR.windowManager must be an object"); + const manager = value.windowManager; + const id = requireString(manager.id, "windowManager.id"); + if (id !== "window-manager:WinMan") throw new Error("SceneIR.windowManager.id is invalid"); + requireString(manager.name, "windowManager.name"); + requireString(manager.presetName, "windowManager.presetName"); + const windowCount = requireNumber(manager.windowCount, "windowManager.windowCount"); + if (!Number.isSafeInteger(windowCount) || windowCount < 0 || windowCount > 1024) throw new Error("SceneIR.windowManager.windowCount is invalid"); + requireBoolean(manager.interfaceLocked, "windowManager.interfaceLocked"); + } + if (value.workspaces !== undefined) { + const workspaces = requireArray(value.workspaces, "workspaces"); + const ids = new Set(); + for (const [index, workspace] of workspaces.entries()) { + if (!isRecord(workspace)) throw new Error(`SceneIR.workspaces[${index}] must be an object`); + const id = requireString(workspace.id, `workspaces[${index}].id`); + if (!id.startsWith("workspace:") || ids.has(id)) throw new Error(`SceneIR.workspaces[${index}].id is invalid`); ids.add(id); + requireString(workspace.name, `workspaces[${index}].name`); const count = requireNumber(workspace.screenCount, `workspaces[${index}].screenCount`); + if (!Number.isSafeInteger(count) || count < 0 || count > 64) throw new Error(`SceneIR.workspaces[${index}].screenCount is invalid`); + } + } if (value.greasePencils !== undefined) requireArray(value.greasePencils, "greasePencils"); if (value.libraries !== undefined) requireArray(value.libraries, "libraries"); requireArray(value.animations, "animations"); diff --git a/web/tests/unit/context-governance.test.mjs b/web/tests/unit/context-governance.test.mjs new file mode 100644 index 00000000..31f6e56f --- /dev/null +++ b/web/tests/unit/context-governance.test.mjs @@ -0,0 +1,47 @@ +import test from "node:test"; +import assert from "node:assert/strict"; +import { buildTaskContext } from "../../../tools/web/task-context-lib.mjs"; +import { validateContextBundle } from "../../../tools/web/context-governance.mjs"; + +test("current context satisfies document, task-card, and pointer budgets", () => { + const bundle = buildTaskContext(); + const result = validateContextBundle(bundle); + assert.deepEqual(result.violations, []); + assert.ok(result.report.totalTokens <= 3500); +}); + +test("task cards cannot smuggle full plans or history into the default context", () => { + const bundle = buildTaskContext(); + const taskSource = `${bundle.sources.taskSource}\nnext-task-plan.json\n`; + const result = validateContextBundle({ + ...bundle, + sources: { ...bundle.sources, taskSource }, + }); + assert.ok(result.violations.some(({ code }) => code === "FORBIDDEN_CONTEXT_REFERENCE")); +}); + +test("governance rejects forged selection totals and unaudited exclusions", () => { + const bundle = buildTaskContext(); + const forged = { + ...bundle, + context: { + ...bundle.context, + inputPaths: ["tools/web/generated/M16-GAP-00022.py"], + inputSelection: { + ...bundle.context.inputSelection, + selected: [{ path: "tools/web/generated/M16-GAP-00022.py", bytes: 9000, tokens: 1 }], + excluded: [ + { path: "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend", reason: "FORGED_REASON" }, + { path: "tests/golden/M16-GAP-00022/" }, + ], + totals: { files: 1, bytes: 9000, tokens: 2250 }, + }, + }, + }; + const result = validateContextBundle(forged); + assert.ok(result.violations.some(({ code }) => code === "EVIDENCE_BYTES_OVER_BUDGET")); + assert.ok(result.violations.some(({ code }) => code === "CONTEXT_REMAINING_BYTES_OVER_BUDGET")); + assert.ok(result.violations.some(({ code }) => code === "INPUT_EXCLUSION_REASON_MISSING")); + assert.ok(result.violations.some(({ code }) => code === "INPUT_EXCLUSION_REASON_UNKNOWN")); + assert.ok(result.violations.some(({ code }) => code === "INPUT_SELECTION_ENTRY_INVALID")); +}); diff --git a/web/tests/unit/input-modal.test.mjs b/web/tests/unit/input-modal.test.mjs index 4d0db9e0..31dc2ed9 100644 --- a/web/tests/unit/input-modal.test.mjs +++ b/web/tests/unit/input-modal.test.mjs @@ -25,3 +25,13 @@ test("M14-04F commits pen stroke once and ignores late up/cancel", () => { state = modal.commitPenStroke(state, 9); assert.deepEqual([state.kind, state.mainCommitCount, state.activePointerIds], ["NONE", 1, []]); }); + +test("M14-04F reduces production pointer events and rejects invalid IDs", () => { + let state = modal.createInputModalState(); + state = modal.reduceInputModal(state, { type: "pointerdown", pointerType: "touch", pointerId: 2 }); + state = modal.reduceInputModal(state, { type: "pointerdown", pointerType: "touch", pointerId: 4 }); + assert.equal(state.navigationRevision, 1); + state = modal.reduceInputModal(state, { type: "pointercancel", pointerType: "touch", pointerId: 2 }); + assert.deepEqual([state.kind, state.activePointerIds, state.cancelled], ["NONE", [], true]); + assert.throws(() => modal.reduceInputModal(state, { type: "pointerdown", pointerType: "pen", pointerId: -1 }), /POINTER_ID_INVALID/); +}); diff --git a/web/tests/unit/task-context.test.mjs b/web/tests/unit/task-context.test.mjs new file mode 100644 index 00000000..b3baaa18 --- /dev/null +++ b/web/tests/unit/task-context.test.mjs @@ -0,0 +1,72 @@ +import test from "node:test"; +import assert from "node:assert/strict"; +import { buildTaskContext, contextSizeReport, CONTEXT_LIMITS, readIndexedTask, selectInputPaths } from "../../../tools/web/task-context-lib.mjs"; + +test("current task context is bounded and follows the parent pointer", () => { + const bundle = buildTaskContext(); + const report = contextSizeReport(bundle); + assert.match(bundle.context.task, /^M\d+-GAP-\d{5}$/); + assert.match(bundle.context.parentTask, /^M\d+-GAP-\d{5}$/); + assert.equal(bundle.context.parent.manifest.nextTask, bundle.context.task); + assert.ok(bundle.context.commands.length >= 1); + assert.equal(bundle.context.sourceDocuments.taskCard, `docs/tasks/${bundle.context.task}.md`); + assert.equal(bundle.context.sourceDocuments.taskIndex, "tests/golden/M15-03A/task-index.json"); + assert.ok(!JSON.stringify(bundle.context).includes("next-task-plan.json")); + assert.equal(bundle.context.scope.ownerFamily, readIndexedTask(bundle.context.task).ownerFamily); + assert.equal(report.withinBudget, true); + assert.equal(report.totalTokens, report.sourceTokens + report.evidenceTokens); + assert.equal(report.evidenceTokens, bundle.context.inputSelection.totals.tokens); + assert.ok(report.totalTokens < CONTEXT_LIMITS.contextTokens); +}); + +test("the indexed task record remains available beside the compact card", () => { + const bundle = buildTaskContext("M16-GAP-00011"); + assert.equal(bundle.context.sourceDocuments.taskCard, "docs/tasks/M16-GAP-00011.md"); + assert.equal(bundle.context.parent.manifest.status, "done"); + assert.equal(bundle.context.nextTask, "M16-GAP-00012"); +}); + +test("input selection excludes evidence before it can enter the read list", () => { + const fixture = "tests/files/web/generated/M16-GAP-00022-datablock-Sound.blend"; + const generator = "tools/web/generated/M16-GAP-00022.py"; + const result = selectInputPaths([fixture, generator], { + sourceBytes: 100, + sourceTokens: 25, + limits: { ...CONTEXT_LIMITS, evidenceBytes: 1024 }, + }); + assert.deepEqual(result.inputPaths, [generator]); + assert.equal(result.inputSelection.excluded[0].reason, "EVIDENCE_BYTE_BUDGET"); + assert.equal(result.inputSelection.totals.bytes, result.inputSelection.selected[0].bytes); +}); + +test("input selection audits remaining context and file-count exclusions", () => { + const paths = [ + "tools/web/generated/M16-GAP-00022.py", + "tools/web/generated/M16-GAP-00021.py", + ]; + const remaining = selectInputPaths(paths, { + sourceBytes: 0, + sourceTokens: CONTEXT_LIMITS.contextTokens - 1, + limits: { ...CONTEXT_LIMITS, evidenceBytes: 8192 }, + }); + assert.deepEqual(remaining.inputPaths, []); + assert.equal(remaining.inputSelection.excluded[0].reason, "CONTEXT_REMAINING_SPACE"); + + const count = selectInputPaths(paths, { + limits: { ...CONTEXT_LIMITS, evidenceFiles: 1, evidenceBytes: 8192 }, + }); + assert.equal(count.inputPaths.length, 1); + assert.equal(count.inputSelection.excluded[0].reason, "EVIDENCE_FILE_COUNT"); +}); + +test("generated task outputs are excluded before their size can affect selection", () => { + const result = selectInputPaths(["tests/golden/M16-GAP-00022/"], { + generatedPaths: ["tests/golden/M16-GAP-00022/"], + }); + assert.deepEqual(result.inputPaths, []); + assert.deepEqual(result.inputSelection.excluded, [{ + path: "tests/golden/M16-GAP-00022/", + bytes: null, + reason: "GENERATED_EVIDENCE_OUTPUT", + }]); +});